From 7ade13540e6caa6449c02a8832e670a499e97189 Mon Sep 17 00:00:00 2001 From: Prasanth Ullattil Date: Thu, 23 Jul 2009 11:59:30 +0200 Subject: "Emacs" style keyboard shortcuts don't work on Carbon. Set the native key equivalent for menu items only for single key shortcuts. Qt's shortcut mechanism will take care of sending the multiple key shortcut events. Task-number: 258438 Reviewed-by: Norwegian Rock Cat --- src/gui/widgets/qmenu_mac.mm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gui/widgets/qmenu_mac.mm b/src/gui/widgets/qmenu_mac.mm index a562076..87f6f82 100644 --- a/src/gui/widgets/qmenu_mac.mm +++ b/src/gui/widgets/qmenu_mac.mm @@ -1460,7 +1460,7 @@ QMenuPrivate::QMacMenuPrivate::syncAction(QMacMenuAction *action) data.whichData |= kMenuItemDataCmdKey; data.whichData |= kMenuItemDataCmdKeyModifiers; data.whichData |= kMenuItemDataCmdKeyGlyph; - if (!accel.isEmpty()) { + if (accel.count() == 1) { qt_mac_get_accel(accel[0], (quint32*)&data.cmdKeyModifiers, (quint32*)&data.cmdKeyGlyph); if (data.cmdKeyGlyph == 0) data.cmdKey = (UniChar)accel[0]; @@ -1468,7 +1468,7 @@ QMenuPrivate::QMacMenuPrivate::syncAction(QMacMenuAction *action) #else [item setSubmenu:0]; // No key equivalent set for multiple key QKeySequence. - if (!accel.isEmpty() && accel.count() == 1) { + if (accel.count() == 1) { [item setKeyEquivalent:keySequenceToKeyEqivalent(accel)]; [item setKeyEquivalentModifierMask:keySequenceModifierMask(accel)]; } else { -- cgit v0.12