diff options
author | Prasanth Ullattil <prasanth.ullattil@nokia.com> | 2009-07-22 14:53:49 (GMT) |
---|---|---|
committer | Prasanth Ullattil <prasanth.ullattil@nokia.com> | 2009-07-23 08:40:24 (GMT) |
commit | 9377881d6d6f5c07aa134c8f1708d0afd0d06e86 (patch) | |
tree | 0f3f6b4d0b0b678eee141193716a65cb8f882590 /src/gui/widgets | |
parent | 350f857f116a734ea25f91887999eeb17e064350 (diff) | |
download | Qt-9377881d6d6f5c07aa134c8f1708d0afd0d06e86.zip Qt-9377881d6d6f5c07aa134c8f1708d0afd0d06e86.tar.gz Qt-9377881d6d6f5c07aa134c8f1708d0afd0d06e86.tar.bz2 |
"Emacs" style keyboard shortcuts don't work on Cocoa.
Mac supports only single key shortcuts as key equivalent for menu items.
So if a multiple key QKeySequence is set, use Qt's shortcut mechanism
instead of the native menu shortcut mechanism.
Task-number: 258438
Reviewed-by: Norwegian Rock Cat
Diffstat (limited to 'src/gui/widgets')
-rw-r--r-- | src/gui/widgets/qmenu_mac.mm | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gui/widgets/qmenu_mac.mm b/src/gui/widgets/qmenu_mac.mm index 77e98c4..a562076 100644 --- a/src/gui/widgets/qmenu_mac.mm +++ b/src/gui/widgets/qmenu_mac.mm @@ -1376,8 +1376,9 @@ QMenuPrivate::QMacMenuPrivate::syncAction(QMacMenuAction *action) accel = qt_mac_menu_merge_accel(action); } } + // Show multiple key sequences as part of the menu text. if (accel.count() > 1) - text += QLatin1String(" (****)"); //just to denote a multi stroke shortcut + text += QLatin1String(" (") + accel.toString(QKeySequence::NativeText) + QLatin1String(")"); QString finalString = qt_mac_removeMnemonics(text); @@ -1466,7 +1467,8 @@ QMenuPrivate::QMacMenuPrivate::syncAction(QMacMenuAction *action) } #else [item setSubmenu:0]; - if (!accel.isEmpty()) { + // No key equivalent set for multiple key QKeySequence. + if (!accel.isEmpty() && accel.count() == 1) { [item setKeyEquivalent:keySequenceToKeyEqivalent(accel)]; [item setKeyEquivalentModifierMask:keySequenceModifierMask(accel)]; } else { |