diff options
-rw-r--r-- | src/widgets/itemviews/qabstractitemview.cpp | 6 | ||||
-rw-r--r-- | src/widgets/itemviews/qtreeview.cpp | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/widgets/itemviews/qabstractitemview.cpp b/src/widgets/itemviews/qabstractitemview.cpp index 251b09ce7d..9dbe5c6c54 100644 --- a/src/widgets/itemviews/qabstractitemview.cpp +++ b/src/widgets/itemviews/qabstractitemview.cpp @@ -2932,7 +2932,11 @@ void QAbstractItemView::keyboardSearch(const QString &search) : d->model->index(0, 0, d->root); bool skipRow = false; bool keyboardTimeWasValid = d->keyboardInputTime.isValid(); - qint64 keyboardInputTimeElapsed = d->keyboardInputTime.restart(); + qint64 keyboardInputTimeElapsed; + if (keyboardTimeWasValid) + keyboardInputTimeElapsed = d->keyboardInputTime.restart(); + else + d->keyboardInputTime.start(); if (search.isEmpty() || !keyboardTimeWasValid || keyboardInputTimeElapsed > QApplication::keyboardInputInterval()) { d->keyboardInput = search; diff --git a/src/widgets/itemviews/qtreeview.cpp b/src/widgets/itemviews/qtreeview.cpp index 0ccb989198..e6a6b2a447 100644 --- a/src/widgets/itemviews/qtreeview.cpp +++ b/src/widgets/itemviews/qtreeview.cpp @@ -1017,7 +1017,11 @@ void QTreeView::keyboardSearch(const QString &search) bool skipRow = false; bool keyboardTimeWasValid = d->keyboardInputTime.isValid(); - qint64 keyboardInputTimeElapsed = d->keyboardInputTime.restart(); + qint64 keyboardInputTimeElapsed; + if (keyboardTimeWasValid) + keyboardInputTimeElapsed = d->keyboardInputTime.restart(); + else + d->keyboardInputTime.start(); if (search.isEmpty() || !keyboardTimeWasValid || keyboardInputTimeElapsed > QApplication::keyboardInputInterval()) { d->keyboardInput = search; |