diff options
author | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-30 23:38:44 +0000 |
---|---|---|
committer | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-30 23:38:44 +0000 |
commit | f3c8856e6b46eccb6141c6d79805639cab19528f (patch) | |
tree | 8c9d86e64c6962864e3e832155223b16a2e06cec | |
parent | 11fbcbd31ce7eab4c8782ad158211aae6b615158 (diff) | |
download | chromium_src-f3c8856e6b46eccb6141c6d79805639cab19528f.zip chromium_src-f3c8856e6b46eccb6141c6d79805639cab19528f.tar.gz chromium_src-f3c8856e6b46eccb6141c6d79805639cab19528f.tar.bz2 |
Set the initial enabledness state of any browser actions when
the window first comes up.
BUG=23380
TEST=Install an extension that has a browser action. Open a
new window. Browser action menu item should be disabled in
wrench menu.
Review URL: http://codereview.chromium.org/242083
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27686 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/browser.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/chrome/browser/browser.cc b/chrome/browser/browser.cc index 608783a..3df24ae 100644 --- a/chrome/browser/browser.cc +++ b/chrome/browser/browser.cc @@ -27,6 +27,7 @@ #include "chrome/browser/extensions/extension_browser_event_router.h" #include "chrome/browser/extensions/extension_disabled_infobar_delegate.h" #include "chrome/browser/extensions/extension_tabs_module.h" +#include "chrome/browser/extensions/extensions_service.h" #include "chrome/browser/find_bar.h" #include "chrome/browser/find_bar_controller.h" #include "chrome/browser/google_url_tracker.h" @@ -2327,6 +2328,17 @@ void Browser::InitCommandState() { command_updater_.UpdateCommandEnabled(IDC_CONTROL_PANEL, true); #endif + // Set up any browser action commands that are installed. + ExtensionsService* service = profile()->GetExtensionsService(); + if (service) { + std::vector<ExtensionAction*> browser_actions = + service->GetBrowserActions(); + for (size_t i = 0; i < browser_actions.size(); ++i) { + command_updater_.UpdateCommandEnabled(browser_actions[i]->command_id(), + true); + } + } + // Initialize other commands based on the window type. { bool normal_window = type() == TYPE_NORMAL; |