| Index: chrome/browser/cocoa/extensions/browser_action_button.mm
|
| diff --git a/chrome/browser/cocoa/extensions/browser_action_button.mm b/chrome/browser/cocoa/extensions/browser_action_button.mm
|
| index 8f1150a8f1467d24281614cb66b71cb2dc4c25e8..946f87229b8b3ad4efe070ad2fd2da66029961d2 100644
|
| --- a/chrome/browser/cocoa/extensions/browser_action_button.mm
|
| +++ b/chrome/browser/cocoa/extensions/browser_action_button.mm
|
| @@ -10,6 +10,7 @@
|
| #include "base/logging.h"
|
| #include "base/sys_string_conversions.h"
|
| #include "chrome/browser/cocoa/extensions/extension_action_context_menu.h"
|
| +#import "chrome/browser/cocoa/image_utils.h"
|
| #include "chrome/browser/extensions/image_loading_tracker.h"
|
| #include "chrome/common/extensions/extension.h"
|
| #include "chrome/common/extensions/extension_action.h"
|
| @@ -303,16 +304,16 @@ class ExtensionImageTrackerBridge : public NotificationObserver,
|
| [[self cell] setIconShadow];
|
|
|
| NSImage* actionImage = [self image];
|
| - // Never draw within a flipped coordinate system.
|
| - // TODO(andybons): Figure out why |flipped| can be yes in certain cases.
|
| - // http://crbug.com/38943
|
| - [actionImage setFlipped:NO];
|
| - CGFloat xPos = std::floor((NSWidth(bounds) - [actionImage size].width) / 2);
|
| - CGFloat yPos = std::floor((NSHeight(bounds) - [actionImage size].height) / 2);
|
| - [actionImage drawAtPoint:NSMakePoint(xPos, yPos)
|
| - fromRect:NSZeroRect
|
| - operation:NSCompositeSourceOver
|
| - fraction:1.0];
|
| + const NSSize imageSize = [actionImage size];
|
| + const NSRect imageRect =
|
| + NSMakeRect(std::floor((NSWidth(bounds) - imageSize.width) / 2.0),
|
| + std::floor((NSHeight(bounds) - imageSize.height) / 2.0),
|
| + imageSize.width, imageSize.height);
|
| + [actionImage drawInRect:imageRect
|
| + fromRect:NSZeroRect
|
| + operation:NSCompositeSourceOver
|
| + fraction:1.0
|
| + neverFlipped:YES];
|
|
|
| bounds.origin.y += kShadowOffset - kBrowserActionBadgeOriginYOffset;
|
| bounds.origin.x -= kShadowOffset;
|
|
|