Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(30)

Side by Side Diff: chrome/browser/ui/cocoa/browser_window_controller.mm

Issue 8302021: Prevent extension and bookmark popups from interfering with close window/tab shortcuts. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Just check parent, no grandparents; restore NSValidatedUserInterfaceItem type Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/browser/app_controller_mac.mm ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #import "chrome/browser/ui/cocoa/browser_window_controller.h" 5 #import "chrome/browser/ui/cocoa/browser_window_controller.h"
6 6
7 #include <cmath> 7 #include <cmath>
8 #include <numeric> 8 #include <numeric>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 982 matching lines...) Expand 10 before | Expand all | Expand 10 after
993 SEL action = [item action]; 993 SEL action = [item action];
994 BOOL enable = NO; 994 BOOL enable = NO;
995 if (action == @selector(commandDispatch:) || 995 if (action == @selector(commandDispatch:) ||
996 action == @selector(commandDispatchUsingKeyModifiers:)) { 996 action == @selector(commandDispatchUsingKeyModifiers:)) {
997 NSInteger tag = [item tag]; 997 NSInteger tag = [item tag];
998 if (browser_->command_updater()->SupportsCommand(tag)) { 998 if (browser_->command_updater()->SupportsCommand(tag)) {
999 // Generate return value (enabled state) 999 // Generate return value (enabled state)
1000 enable = browser_->command_updater()->IsCommandEnabled(tag); 1000 enable = browser_->command_updater()->IsCommandEnabled(tag);
1001 switch (tag) { 1001 switch (tag) {
1002 case IDC_CLOSE_TAB: 1002 case IDC_CLOSE_TAB:
1003 // Disable "close tab" if we're not the key window or if there's only 1003 // Disable "close tab" if the receiving window is not tabbed.
1004 // one tab. 1004 // We simply check whether the item has a keyboard shortcut set here;
1005 enable &= [[self window] isKeyWindow]; 1005 // app_controller_mac.mm actually determines whether the item should
1006 // be enabled.
1007 if ([static_cast<NSObject*>(item) isKindOfClass:[NSMenuItem class]])
1008 enable &= !![[static_cast<NSMenuItem*>(item) keyEquivalent] length];
1006 break; 1009 break;
1007 case IDC_FULLSCREEN: { 1010 case IDC_FULLSCREEN: {
1008 enable &= [self supportsFullscreen]; 1011 enable &= [self supportsFullscreen];
1009 if ([static_cast<NSObject*>(item) isKindOfClass:[NSMenuItem class]]) { 1012 if ([static_cast<NSObject*>(item) isKindOfClass:[NSMenuItem class]]) {
1010 NSString* menuTitle = l10n_util::GetNSString( 1013 NSString* menuTitle = l10n_util::GetNSString(
1011 [self isFullscreen] ? IDS_EXIT_FULLSCREEN_MAC : 1014 [self isFullscreen] ? IDS_EXIT_FULLSCREEN_MAC :
1012 IDS_ENTER_FULLSCREEN_MAC); 1015 IDS_ENTER_FULLSCREEN_MAC);
1013 [static_cast<NSMenuItem*>(item) setTitle:menuTitle]; 1016 [static_cast<NSMenuItem*>(item) setTitle:menuTitle];
1014 1017
1015 if (base::mac::IsOSSnowLeopardOrEarlier()) 1018 if (base::mac::IsOSSnowLeopardOrEarlier())
(...skipping 1152 matching lines...) Expand 10 before | Expand all | Expand 10 after
2168 2171
2169 - (BOOL)supportsBookmarkBar { 2172 - (BOOL)supportsBookmarkBar {
2170 return [self supportsWindowFeature:Browser::FEATURE_BOOKMARKBAR]; 2173 return [self supportsWindowFeature:Browser::FEATURE_BOOKMARKBAR];
2171 } 2174 }
2172 2175
2173 - (BOOL)isTabbedWindow { 2176 - (BOOL)isTabbedWindow {
2174 return browser_->is_type_tabbed(); 2177 return browser_->is_type_tabbed();
2175 } 2178 }
2176 2179
2177 @end // @implementation BrowserWindowController(WindowType) 2180 @end // @implementation BrowserWindowController(WindowType)
OLDNEW
« no previous file with comments | « chrome/browser/app_controller_mac.mm ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698