diff options
-rw-r--r-- | src/gui/widgets/qdatetimeedit.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/gui/widgets/qdatetimeedit.cpp b/src/gui/widgets/qdatetimeedit.cpp index e74a47c..00ac880 100644 --- a/src/gui/widgets/qdatetimeedit.cpp +++ b/src/gui/widgets/qdatetimeedit.cpp @@ -1126,23 +1126,25 @@ void QDateTimeEdit::keyPressEvent(QKeyEvent *event) case Qt::Key_Left: case Qt::Key_Right: if (event->key() == Qt::Key_Left || event->key() == Qt::Key_Right) { + if ( #ifdef QT_KEYPAD_NAVIGATION - if (!QApplication::keypadNavigationEnabled() || !hasEditFocus()) { - select = false; - break; - } -#else - if (!(event->modifiers() & Qt::ControlModifier)) { + QApplication::keypadNavigationEnabled() && !hasEditFocus() + || !QApplication::keypadNavigationEnabled() && +#endif + !(event->modifiers() & Qt::ControlModifier)) { select = false; break; } #ifdef Q_WS_MAC - else { + else +#ifdef QT_KEYPAD_NAVIGATION + if (!QApplication::keypadNavigationEnabled()) +#endif + { select = (event->modifiers() & Qt::ShiftModifier); break; } #endif -#endif // QT_KEYPAD_NAVIGATION } // else fall through case Qt::Key_Backtab: |