diff options
Diffstat (limited to 'src/gui/itemviews/qabstractitemview.cpp')
-rw-r--r-- | src/gui/itemviews/qabstractitemview.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/gui/itemviews/qabstractitemview.cpp b/src/gui/itemviews/qabstractitemview.cpp index 303f45b..0fae959 100644 --- a/src/gui/itemviews/qabstractitemview.cpp +++ b/src/gui/itemviews/qabstractitemview.cpp @@ -3626,12 +3626,13 @@ QItemSelectionModel::SelectionFlags QAbstractItemViewPrivate::extendedSelectionC case Qt::Key_PageUp: case Qt::Key_PageDown: case Qt::Key_Tab: + if (modifiers & Qt::ControlModifier #ifdef QT_KEYPAD_NAVIGATION - return QItemSelectionModel::NoUpdate; -#else - if (modifiers & Qt::ControlModifier) - return QItemSelectionModel::NoUpdate; + // Preserve historical tab order navigation behavior + || QApplication::navigationMode() == Qt::NavigationModeKeypadTabOrder #endif + ) + return QItemSelectionModel::NoUpdate; break; case Qt::Key_Select: return QItemSelectionModel::Toggle|selectionBehaviorFlags(); |