summaryrefslogtreecommitdiffstats
path: root/chrome/browser/ui/webui/extension_icon_source.cc
diff options
context:
space:
mode:
authoryoz@chromium.org <yoz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-09 18:16:45 +0000
committeryoz@chromium.org <yoz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-09 18:16:45 +0000
commit6fcc3e1b19cc0f643574b3c0bcd58f048c0de296 (patch)
treecc3d2adcafc9d1f4048b8c2396d4dbe3a5a41cc2 /chrome/browser/ui/webui/extension_icon_source.cc
parent68d73dddc3d54cb090d8491fa00bc2e75277fc2a (diff)
downloadchromium_src-6fcc3e1b19cc0f643574b3c0bcd58f048c0de296.zip
chromium_src-6fcc3e1b19cc0f643574b3c0bcd58f048c0de296.tar.gz
chromium_src-6fcc3e1b19cc0f643574b3c0bcd58f048c0de296.tar.bz2
Move Web Store icon special case, so that it can be subjected to grayscaling.
BUG=103271 TEST=Open NTP and disable network. Web Store icon should be desaturated and gray. Review URL: http://codereview.chromium.org/8479044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109269 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ui/webui/extension_icon_source.cc')
-rw-r--r--chrome/browser/ui/webui/extension_icon_source.cc14
1 files changed, 10 insertions, 4 deletions
diff --git a/chrome/browser/ui/webui/extension_icon_source.cc b/chrome/browser/ui/webui/extension_icon_source.cc
index 81b0c833..d40b799 100644
--- a/chrome/browser/ui/webui/extension_icon_source.cc
+++ b/chrome/browser/ui/webui/extension_icon_source.cc
@@ -80,9 +80,6 @@ GURL ExtensionIconSource::GetIconURL(const Extension* extension,
bool* exists) {
if (exists)
*exists = true;
- if (extension->id() == extension_misc::kWebStoreAppId)
- return GURL("chrome://theme/IDR_WEBSTORE_ICON");
-
if (exists && extension->GetIconURL(icon_size, match) == GURL())
*exists = false;
@@ -149,6 +146,13 @@ void ExtensionIconSource::LoadIconFailed(int request_id) {
LoadDefaultImage(request_id);
}
+const SkBitmap* ExtensionIconSource::GetWebStoreImage() {
+ if (!web_store_icon_data_.get())
+ web_store_icon_data_.reset(LoadImageByResourceId(IDR_WEBSTORE_ICON));
+
+ return web_store_icon_data_.get();
+}
+
const SkBitmap* ExtensionIconSource::GetDefaultAppImage() {
if (!default_app_data_.get())
default_app_data_.reset(LoadImageByResourceId(IDR_APP_DEFAULT_ICON));
@@ -178,7 +182,9 @@ void ExtensionIconSource::LoadDefaultImage(int request_id) {
ExtensionIconRequest* request = GetData(request_id);
const SkBitmap* default_image = NULL;
- if (request->extension->is_app())
+ if (request->extension->id() == extension_misc::kWebStoreAppId)
+ default_image = GetWebStoreImage();
+ else if (request->extension->is_app())
default_image = GetDefaultAppImage();
else
default_image = GetDefaultExtensionImage();