diff options
author | jyasskin@chromium.org <jyasskin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-12 21:28:30 +0000 |
---|---|---|
committer | jyasskin@chromium.org <jyasskin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-12 21:28:30 +0000 |
commit | 5ed5ec52082aa3740a2a9657fc8e0b2bb765317a (patch) | |
tree | 15a21c11c00a6bf938a8d50e87d97bc65e4c1c8f /chrome/browser/automation | |
parent | 8381068a6afa9343adb0558ea2e395e465174285 (diff) | |
download | chromium_src-5ed5ec52082aa3740a2a9657fc8e0b2bb765317a.zip chromium_src-5ed5ec52082aa3740a2a9657fc8e0b2bb765317a.tar.gz chromium_src-5ed5ec52082aa3740a2a9657fc8e0b2bb765317a.tar.bz2 |
Remove Extension's accessors for ExtensionActions.
extension->browser_action() is replaced by ExtensionActionManager::Get(profile)->GetBrowserAction(*extension), and similar for page actions and script badges.
This is the second step of a four-part refactoring to simplify icon handling.
The subsequent parts are:
3) Move ExtensionAction from common/ to browser/
4) Make the icon-loading and -caching classes into ExtensionAction methods.
BUG=153463
Review URL: https://chromiumcodereview.appspot.com/11036025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161654 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/automation')
-rw-r--r-- | chrome/browser/automation/testing_automation_provider.cc | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/chrome/browser/automation/testing_automation_provider.cc b/chrome/browser/automation/testing_automation_provider.cc index ce185e9..b50803a 100644 --- a/chrome/browser/automation/testing_automation_provider.cc +++ b/chrome/browser/automation/testing_automation_provider.cc @@ -50,6 +50,7 @@ #include "chrome/browser/download/save_package_file_picker.h" #include "chrome/browser/extensions/browser_action_test_util.h" #include "chrome/browser/extensions/crx_installer.h" +#include "chrome/browser/extensions/extension_action_manager.h" #include "chrome/browser/extensions/extension_host.h" #include "chrome/browser/extensions/extension_process_manager.h" #include "chrome/browser/extensions/extension_service.h" @@ -191,6 +192,7 @@ using content::RenderViewHost; using content::SSLStatus; using content::WebContents; using extensions::Extension; +using extensions::ExtensionActionManager; using extensions::ExtensionList; namespace { @@ -3787,6 +3789,8 @@ void TestingAutomationProvider::GetExtensionsInfo(DictionaryValue* args, all.insert(all.end(), disabled_extensions->begin(), disabled_extensions->end()); + ExtensionActionManager* extension_action_manager = + ExtensionActionManager::Get(browser->profile()); for (ExtensionList::const_iterator it = all.begin(); it != all.end(); ++it) { const Extension* extension = *it; @@ -3817,8 +3821,9 @@ void TestingAutomationProvider::GetExtensionsInfo(DictionaryValue* args, extension_value->SetBoolean("is_enabled", service->IsExtensionEnabled(id)); extension_value->SetBoolean("allowed_in_incognito", service->IsIncognitoEnabled(id)); - extension_value->SetBoolean("has_page_action", - extension->page_action() != NULL); + extension_value->SetBoolean( + "has_page_action", + extension_action_manager->GetPageAction(*extension) != NULL); extensions_values->Append(extension_value); } return_value->Set("extensions", extensions_values); @@ -3942,7 +3947,9 @@ void TestingAutomationProvider::TriggerPageActionById( AutomationJSONReply(this, reply_message).SendError(error); return; } - ExtensionAction* page_action = extension->page_action(); + ExtensionAction* page_action = + ExtensionActionManager::Get(browser->profile())-> + GetPageAction(*extension); if (!page_action) { AutomationJSONReply(this, reply_message).SendError( "Extension doesn't have any page action."); @@ -3995,7 +4002,8 @@ void TestingAutomationProvider::TriggerBrowserActionById( AutomationJSONReply(this, reply_message).SendError(error); return; } - ExtensionAction* action = extension->browser_action(); + ExtensionAction* action = ExtensionActionManager::Get(browser->profile())-> + GetBrowserAction(*extension); if (!action) { AutomationJSONReply(this, reply_message).SendError( "Extension doesn't have any browser action."); @@ -6222,15 +6230,17 @@ void TestingAutomationProvider::IsPageActionVisible( reply.SendError(error); return; } - ExtensionAction* page_action = extension->page_action(); - if (!page_action) { - reply.SendError("Extension doesn't have any page action"); - return; - } if (!browser) { reply.SendError("Tab does not belong to an open browser"); return; } + ExtensionAction* page_action = + ExtensionActionManager::Get(browser->profile())-> + GetPageAction(*extension); + if (!page_action) { + reply.SendError("Extension doesn't have any page action"); + return; + } EnsureTabSelected(browser, tab); bool is_visible = false; |