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

Unified Diff: chrome/browser/extensions/extension_tab_helper.cc

Issue 10332235: Make the page action space show extensions with active content scripts or (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: oops iterator Created 8 years, 7 months 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_tab_helper.cc
diff --git a/chrome/browser/extensions/extension_tab_helper.cc b/chrome/browser/extensions/extension_tab_helper.cc
index 627417dec964ab8679098ce437a45cda88db1793..8f1a55411a24e3205ae10ab5a08e2c2db975b7b9 100644
--- a/chrome/browser/extensions/extension_tab_helper.cc
+++ b/chrome/browser/extensions/extension_tab_helper.cc
@@ -6,6 +6,7 @@
#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/page_action_controller.h"
+#include "chrome/browser/extensions/script_badge_controller.h"
#include "chrome/browser/extensions/script_executor_impl.h"
#include "chrome/browser/extensions/webstore_inline_installer.h"
#include "chrome/browser/profiles/profile.h"
@@ -19,6 +20,7 @@
#include "chrome/common/extensions/extension_icon_set.h"
#include "chrome/common/extensions/extension_messages.h"
#include "chrome/common/extensions/extension_resource.h"
+#include "chrome/common/extensions/extension_switch_utils.h"
#include "content/public/browser/invalidate_type.h"
#include "content/public/browser/navigation_details.h"
#include "content/public/browser/notification_service.h"
@@ -29,6 +31,7 @@
#include "ui/gfx/image/image.h"
using content::WebContents;
+using extensions::ScriptBadgeController;
using extensions::ScriptExecutorImpl;
using extensions::PageActionController;
@@ -45,8 +48,12 @@ ExtensionTabHelper::ExtensionTabHelper(TabContentsWrapper* wrapper)
ALLOW_THIS_IN_INITIALIZER_LIST(
extension_function_dispatcher_(wrapper->profile(), this)),
wrapper_(wrapper) {
- script_executor_.reset(new ScriptExecutorImpl(wrapper->web_contents()));
- action_box_controller_.reset(new PageActionController(wrapper, this));
+ if (extensions::switch_utils::IsActionBoxEnabled()) {
+ script_badge_controller_.reset(new ScriptBadgeController(wrapper));
+ } else {
+ script_executor_.reset(new ScriptExecutorImpl(wrapper->web_contents()));
+ action_box_controller_.reset(new PageActionController(wrapper, this));
+ }
}
ExtensionTabHelper::~ExtensionTabHelper() {
@@ -111,6 +118,18 @@ SkBitmap* ExtensionTabHelper::GetExtensionAppIcon() {
return &extension_app_icon_;
}
+extensions::ScriptExecutor* ExtensionTabHelper::script_executor() {
+ if (script_badge_controller_.get())
+ return script_badge_controller_.get();
+ return script_executor_.get();
+}
+
+extensions::ActionBoxController* ExtensionTabHelper::action_box_controller() {
+ if (script_badge_controller_.get())
+ return script_badge_controller_.get();
+ return action_box_controller_.get();
+}
+
void ExtensionTabHelper::DidNavigateMainFrame(
const content::LoadCommittedDetails& details,
const content::FrameNavigateParams& params) {
« no previous file with comments | « chrome/browser/extensions/extension_tab_helper.h ('k') | chrome/browser/extensions/page_action_controller.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698