diff options
| -rw-r--r-- | src/kitemviews/kitemlistcontroller.cpp | 7 | ||||
| -rw-r--r-- | src/kitemviews/private/kitemlistkeyboardsearchmanager.cpp | 6 | ||||
| -rw-r--r-- | src/kitemviews/private/kitemlistkeyboardsearchmanager.h | 2 |
3 files changed, 13 insertions, 2 deletions
diff --git a/src/kitemviews/kitemlistcontroller.cpp b/src/kitemviews/kitemlistcontroller.cpp index 011a3b57d..1f93a6357 100644 --- a/src/kitemviews/kitemlistcontroller.cpp +++ b/src/kitemviews/kitemlistcontroller.cpp @@ -374,6 +374,13 @@ bool KItemListController::keyPressEvent(QKeyEvent* event) break; } + case Qt::Key_Escape: + if (m_selectionBehavior != SingleSelection) { + m_selectionManager->clearSelection(); + } + m_keyboardManager->cancelSearch(); + break; + default: m_keyboardManager->addKeys(event->text()); return false; diff --git a/src/kitemviews/private/kitemlistkeyboardsearchmanager.cpp b/src/kitemviews/private/kitemlistkeyboardsearchmanager.cpp index cfd19f58a..41ca34be4 100644 --- a/src/kitemviews/private/kitemlistkeyboardsearchmanager.cpp +++ b/src/kitemviews/private/kitemlistkeyboardsearchmanager.cpp @@ -25,8 +25,6 @@ #include <QApplication> #include <QElapsedTimer> -#include <KDebug> - KItemListKeyboardSearchManager::KItemListKeyboardSearchManager(QObject* parent) : QObject(parent), m_timeout(1000) @@ -76,3 +74,7 @@ qint64 KItemListKeyboardSearchManager::timeout() const return m_timeout; } +void KItemListKeyboardSearchManager::cancelSearch() +{ + m_searchedString.clear(); +} diff --git a/src/kitemviews/private/kitemlistkeyboardsearchmanager.h b/src/kitemviews/private/kitemlistkeyboardsearchmanager.h index d6a6686db..3f13ff445 100644 --- a/src/kitemviews/private/kitemlistkeyboardsearchmanager.h +++ b/src/kitemviews/private/kitemlistkeyboardsearchmanager.h @@ -58,6 +58,8 @@ public: void setTimeout(qint64 milliseconds); qint64 timeout() const; + void cancelSearch(); + signals: /** * Is emitted if the current item should be changed corresponding |
