| Index: chrome/browser/extensions/extension_action.cc
|
| diff --git a/chrome/browser/extensions/extension_action.cc b/chrome/browser/extensions/extension_action.cc
|
| index af9e8685934c872f5e0e5b4aa3cdab328156bc93..c6033e53f8fb2f48bf8ddb7643f433af4945d6ed 100644
|
| --- a/chrome/browser/extensions/extension_action.cc
|
| +++ b/chrome/browser/extensions/extension_action.cc
|
| @@ -256,15 +256,20 @@ gfx::Image ExtensionAction::GetDefaultIconImage() const {
|
| if (default_icon_image_)
|
| return default_icon_image_->image();
|
|
|
| - // If the extension action redesign is enabled, we use a special placeholder
|
| - // icon (with the first letter of the extension name) rather than the default
|
| - // (puzzle piece).
|
| - if (extensions::FeatureSwitch::extension_action_redesign()->IsEnabled()) {
|
| - return extensions::ExtensionIconPlaceholder::CreateImage(
|
| - extension_misc::EXTENSION_ICON_ACTION, extension_name_);
|
| + if (placeholder_icon_image_.IsEmpty()) {
|
| + // If the extension action redesign is enabled, we use a special placeholder
|
| + // icon (with the first letter of the extension name) rather than the
|
| + // default (puzzle piece).
|
| + if (extensions::FeatureSwitch::extension_action_redesign()->IsEnabled()) {
|
| + placeholder_icon_image_ =
|
| + extensions::ExtensionIconPlaceholder::CreateImage(
|
| + extension_misc::EXTENSION_ICON_ACTION, extension_name_);
|
| + } else {
|
| + placeholder_icon_image_ = GetDefaultIcon();
|
| + }
|
| }
|
|
|
| - return GetDefaultIcon();
|
| + return placeholder_icon_image_;
|
| }
|
|
|
| bool ExtensionAction::HasPopupUrl(int tab_id) const {
|
|
|