From 38992fadef228e6c9a4fc7498656d7205f7724e6 Mon Sep 17 00:00:00 2001 From: Allan Odgaard Date: Thu, 14 Mar 2013 10:14:46 +0100 Subject: [PATCH] Simplify NSMenu subclass MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Now that the bundle menu doesn’t register any key equivalents, there is no need to manually go through all but the bundle menu to avoid having the system trigger bundle menu items. --- Applications/TextMate/src/OakMainMenu.mm | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/Applications/TextMate/src/OakMainMenu.mm b/Applications/TextMate/src/OakMainMenu.mm index 43bdcc2a..699ced81 100644 --- a/Applications/TextMate/src/OakMainMenu.mm +++ b/Applications/TextMate/src/OakMainMenu.mm @@ -98,29 +98,12 @@ static CGPoint MenuPosition () return YES; } - for(NSMenuItem* menuItem in [[self itemArray] reverseObjectEnumerator]) - { - if(menuItem == bundlesMenuItem) - { - NSArray* bundleMenuItems = [[bundlesMenuItem submenu] itemArray]; - for(NSUInteger i = 0; i < [bundleMenuItems count]; ++i) - { - NSMenuItem* subMenuItem = bundleMenuItems[i]; - if(keyString == ns::create_event_string(subMenuItem.keyEquivalent, subMenuItem.keyEquivalentModifierMask)) - return [[bundlesMenuItem submenu] performActionForItemAtIndex:i], YES; - } - } - else if([[menuItem submenu] performKeyEquivalent:anEvent]) - { - return YES; - } - } - - if(keyString == "~@\uF702") // ⌥⌘⇠ + if([super performKeyEquivalent:anEvent]) + return YES; + else if(keyString == "~@\uF702") // ⌥⌘⇠ return [self performWindowMenuAction:@selector(selectPreviousTab:)]; else if(keyString == "~@\uF703") // ⌥⌘⇢ return [self performWindowMenuAction:@selector(selectNextTab:)]; - return NO; } @end