diff options
author | cduvall@chromium.org <cduvall@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-16 21:31:44 +0000 |
---|---|---|
committer | cduvall@chromium.org <cduvall@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-16 21:31:44 +0000 |
commit | bf25115a51df82c909a4d3499014697e7ab6d30f (patch) | |
tree | 002c4a19f4186e3406a09bc4fef9cc16fd7c84d5 /chrome/browser/ui/cocoa/extensions/browser_action_button.mm | |
parent | cf0de89088da61db5f7f3d182f69635ac7e8e1d3 (diff) | |
download | chromium_src-bf25115a51df82c909a4d3499014697e7ab6d30f.zip chromium_src-bf25115a51df82c909a4d3499014697e7ab6d30f.tar.gz chromium_src-bf25115a51df82c909a4d3499014697e7ab6d30f.tar.bz2 |
Default browser action icon to the puzzle piece.
If an extension has a browser action but does not specify an
icon, it is now set the puzzle piece icon.
*I do not have a Mac for testing, so the cocoa changes will need to be verified*
BUG=116626
TEST=BrowserActionApiTest.DynamicBrowserAction,
Make an extension with a browser action but no icon. The
icon should default to the puzzle piece.
Review URL: http://codereview.chromium.org/9665038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127245 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ui/cocoa/extensions/browser_action_button.mm')
-rw-r--r-- | chrome/browser/ui/cocoa/extensions/browser_action_button.mm | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/chrome/browser/ui/cocoa/extensions/browser_action_button.mm b/chrome/browser/ui/cocoa/extensions/browser_action_button.mm index f90ae1d..3c5617d 100644 --- a/chrome/browser/ui/cocoa/extensions/browser_action_button.mm +++ b/chrome/browser/ui/cocoa/extensions/browser_action_button.mm @@ -1,4 +1,4 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -19,8 +19,10 @@ #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" #include "content/public/browser/notification_source.h" +#include "grit/theme_resources.h" #include "skia/ext/skia_utils_mac.h" #import "third_party/GTM/AppKit/GTMNSAnimation+Duration.h" +#include "ui/base/resource/resource_bundle.h" #include "ui/gfx/canvas_skia_paint.h" #include "ui/gfx/image/image.h" #include "ui/gfx/rect.h" @@ -58,6 +60,12 @@ class ExtensionImageTrackerBridge : public content::NotificationObserver, gfx::Size(Extension::kBrowserActionIconMaxSize, Extension::kBrowserActionIconMaxSize), ImageLoadingTracker::DONT_CACHE); + } else { + // Set the icon to be the default extensions icon. + SkBitmap bm = *ResourceBundle::GetSharedInstance().GetBitmapNamed( + IDR_EXTENSIONS_FAVICON); + [owner_ setDefaultIcon:gfx::SkBitmapToNSImage(bm)]; + [owner_ updateState]; } registrar_.Add( this, chrome::NOTIFICATION_EXTENSION_BROWSER_ACTION_UPDATED, |