Index: chrome/browser/ui/views/toolbar/browser_action_view.cc |
diff --git a/chrome/browser/ui/views/toolbar/browser_action_view.cc b/chrome/browser/ui/views/toolbar/browser_action_view.cc |
index f64f0e8538ead65992ec204b685975cea9f19e5a..f5a63e969f575f9101301218e034bdd30c3b7038 100644 |
--- a/chrome/browser/ui/views/toolbar/browser_action_view.cc |
+++ b/chrome/browser/ui/views/toolbar/browser_action_view.cc |
@@ -7,9 +7,11 @@ |
#include "base/strings/utf_string_conversions.h" |
#include "chrome/browser/chrome_notification_types.h" |
#include "chrome/browser/extensions/api/commands/command_service.h" |
+#include "chrome/browser/extensions/dev_mode_bubble_controller_delegate.h" |
#include "chrome/browser/extensions/extension_action.h" |
#include "chrome/browser/extensions/extension_action_manager.h" |
#include "chrome/browser/extensions/extension_context_menu_model.h" |
+#include "chrome/browser/extensions/extension_service.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/themes/theme_service.h" |
#include "chrome/browser/themes/theme_service_factory.h" |
@@ -238,7 +240,16 @@ void BrowserActionButton::UpdateState() { |
ThemeService* theme = |
ThemeServiceFactory::GetForProfile(browser_->profile()); |
- gfx::ImageSkia bg = *theme->GetImageSkiaNamed(IDR_BROWSER_ACTION); |
+ int background_id = IDR_BROWSER_ACTION; |
+ extensions::DevModeBubbleControllerDelegate* delegate = |
+ extensions::DevModeBubbleControllerDelegate::Get( |
+ browser_->profile()); |
+ // We only want to call out dev mode extensions while the bubble is up. |
+ if (delegate->ShowingBubble() && |
+ delegate->IsDevModeExtension(extension_)) |
+ background_id = IDR_BROWSER_ACTION_HIGHLIGHT; |
+ |
+ gfx::ImageSkia bg = *theme->GetImageSkiaNamed(background_id); |
SetIcon(gfx::ImageSkiaOperations::CreateSuperimposedImage(bg, icon)); |
gfx::ImageSkia bg_h = *theme->GetImageSkiaNamed(IDR_BROWSER_ACTION_H); |