summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/nsmenu.m21
1 files changed, 15 insertions, 6 deletions
diff --git a/src/nsmenu.m b/src/nsmenu.m
index 20b4e58b479..604adcf40b5 100644
--- a/src/nsmenu.m
+++ b/src/nsmenu.m
@@ -643,14 +643,23 @@ x_activate_menubar (struct frame *f)
keyEq = [self parseKeyEquiv: wv->key];
#ifdef NS_IMPL_COCOA
- /* macOS just ignores modifier strings longer than one character */
+ /* macOS mangles modifier strings longer than one character. */
if (keyEquivModMask == 0)
- title = [title stringByAppendingFormat: @" (%@)", keyEq];
+ {
+ title = [title stringByAppendingFormat: @" (%@)", keyEq];
+ item = [self addItemWithTitle: (NSString *)title
+ action: @selector (menuDown:)
+ keyEquivalent: @""];
+ }
+ else
+ {
+#endif
+ item = [self addItemWithTitle: (NSString *)title
+ action: @selector (menuDown:)
+ keyEquivalent: keyEq];
+#ifdef NS_IMPL_COCOA
+ }
#endif
-
- item = [self addItemWithTitle: (NSString *)title
- action: @selector (menuDown:)
- keyEquivalent: keyEq];
[item setKeyEquivalentModifierMask: keyEquivModMask];
[item setEnabled: wv->enabled];