summaryrefslogtreecommitdiffstats
path: root/chrome/browser/cocoa
diff options
context:
space:
mode:
authorrsesek@chromium.org <rsesek@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-04 20:08:21 +0000
committerrsesek@chromium.org <rsesek@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-04 20:08:21 +0000
commitf6c15fa3bd2b5da2fd4ddbe4e88837710f5b9ac4 (patch)
tree42db33a8565d4bb5bb0f54a1945e6fa53ed24807 /chrome/browser/cocoa
parent1ebc714fc73d1e9123662a08535e1bec7e3804dd (diff)
downloadchromium_src-f6c15fa3bd2b5da2fd4ddbe4e88837710f5b9ac4.zip
chromium_src-f6c15fa3bd2b5da2fd4ddbe4e88837710f5b9ac4.tar.gz
chromium_src-f6c15fa3bd2b5da2fd4ddbe4e88837710f5b9ac4.tar.bz2
[Mac] Disable menu certain menu items when a modal dialog or sheet is present.
BUG=28755,41818 TEST=Chromium-->Clear Browsing Data. Cannot open NTP. Cannot open bookmark manager. Cannot open history. Review URL: http://codereview.chromium.org/2605006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48964 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/cocoa')
-rw-r--r--chrome/browser/cocoa/bookmark_menu_cocoa_controller.mm9
-rw-r--r--chrome/browser/cocoa/history_menu_cocoa_controller.mm10
2 files changed, 16 insertions, 3 deletions
diff --git a/chrome/browser/cocoa/bookmark_menu_cocoa_controller.mm b/chrome/browser/cocoa/bookmark_menu_cocoa_controller.mm
index dc5b6e2..ff5306d 100644
--- a/chrome/browser/cocoa/bookmark_menu_cocoa_controller.mm
+++ b/chrome/browser/cocoa/bookmark_menu_cocoa_controller.mm
@@ -2,13 +2,15 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#import "chrome/browser/cocoa/bookmark_menu_cocoa_controller.h"
+
#include "app/text_elider.h"
#include "base/sys_string_conversions.h"
#include "chrome/app/chrome_dll_resource.h" // IDC_BOOKMARK_MENU
+#import "chrome/browser/app_controller_mac.h"
#include "chrome/browser/bookmarks/bookmark_model.h"
#include "chrome/browser/browser.h"
#import "chrome/browser/cocoa/bookmark_menu_bridge.h"
-#import "chrome/browser/cocoa/bookmark_menu_cocoa_controller.h"
#include "chrome/browser/cocoa/event_utils.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/tab_contents/tab_contents.h"
@@ -54,6 +56,11 @@ const NSUInteger kMaximumMenuPixelsWide = 300;
return [[[NSApp mainMenu] itemWithTag:IDC_BOOKMARK_MENU] submenu];
}
+- (BOOL)validateMenuItem:(NSMenuItem*)menuItem {
+ AppController* controller = [NSApp delegate];
+ return [controller keyWindowIsNotModal];
+}
+
// NSMenu delegate method: called just before menu is displayed.
- (void)menuNeedsUpdate:(NSMenu*)menu {
bridge_->UpdateMenu(menu);
diff --git a/chrome/browser/cocoa/history_menu_cocoa_controller.mm b/chrome/browser/cocoa/history_menu_cocoa_controller.mm
index 8e3f672..1b6241e 100644
--- a/chrome/browser/cocoa/history_menu_cocoa_controller.mm
+++ b/chrome/browser/cocoa/history_menu_cocoa_controller.mm
@@ -2,11 +2,12 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#import "chrome/browser/cocoa/history_menu_cocoa_controller.h"
+
#include "base/scoped_vector.h"
#include "chrome/app/chrome_dll_resource.h" // IDC_HISTORY_MENU
+#import "chrome/browser/app_controller_mac.h"
#include "chrome/browser/browser.h"
-#import "chrome/browser/cocoa/history_menu_cocoa_controller.h"
-#include "chrome/browser/browser_list.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/cocoa/event_utils.h"
#include "chrome/browser/history/history.h"
@@ -25,6 +26,11 @@
return self;
}
+- (BOOL)validateMenuItem:(NSMenuItem*)menuItem {
+ AppController* controller = [NSApp delegate];
+ return [controller keyWindowIsNotModal];
+}
+
// Open the URL of the given history item in the current tab.
- (void)openURLForItem:(const HistoryMenuBridge::HistoryItem*)node {
Browser* browser = Browser::GetOrCreateTabbedBrowser(bridge_->profile());