OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #import "chrome/browser/cocoa/extensions/browser_action_button.h" | 5 #import "chrome/browser/cocoa/extensions/browser_action_button.h" |
6 | 6 |
7 #include "app/gfx/canvas_paint.h" | 7 #include "app/gfx/canvas_paint.h" |
8 #include "base/gfx/rect.h" | 8 #include "base/gfx/rect.h" |
9 #include "base/gfx/size.h" | 9 #include "base/gfx/size.h" |
10 #include "base/sys_string_conversions.h" | 10 #include "base/sys_string_conversions.h" |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 DISALLOW_COPY_AND_ASSIGN(ExtensionImageTrackerBridge); | 85 DISALLOW_COPY_AND_ASSIGN(ExtensionImageTrackerBridge); |
86 }; | 86 }; |
87 | 87 |
88 @implementation BrowserActionButton | 88 @implementation BrowserActionButton |
89 | 89 |
90 + (Class)cellClass { | 90 + (Class)cellClass { |
91 return [BrowserActionCell class]; | 91 return [BrowserActionCell class]; |
92 } | 92 } |
93 | 93 |
94 - (id)initWithExtension:(Extension*)extension | 94 - (id)initWithExtension:(Extension*)extension |
95 tabId:(int)tabId | 95 profile:(Profile*)profile |
96 xOffset:(int)xOffset { | 96 tabId:(int)tabId { |
97 NSRect frame = NSMakeRect(xOffset, | 97 NSRect frame = NSMakeRect(0.0, |
98 kBrowserActionOriginYOffset, | 98 kBrowserActionOriginYOffset, |
99 kBrowserActionWidth, | 99 kBrowserActionWidth, |
100 kBrowserActionHeight); | 100 kBrowserActionHeight); |
101 if ((self = [super initWithFrame:frame])) { | 101 if ((self = [super initWithFrame:frame])) { |
102 BrowserActionCell* cell = [[[BrowserActionCell alloc] init] autorelease]; | 102 BrowserActionCell* cell = [[[BrowserActionCell alloc] init] autorelease]; |
103 // [NSButton setCell:] warns to NOT use setCell: other than in the | 103 // [NSButton setCell:] warns to NOT use setCell: other than in the |
104 // initializer of a control. However, we are using a basic | 104 // initializer of a control. However, we are using a basic |
105 // NSButton whose initializer does not take an NSCell as an | 105 // NSButton whose initializer does not take an NSCell as an |
106 // object. To honor the assumed semantics, we do nothing with | 106 // object. To honor the assumed semantics, we do nothing with |
107 // NSButton between alloc/init and setCell:. | 107 // NSButton between alloc/init and setCell:. |
108 [self setCell:cell]; | 108 [self setCell:cell]; |
109 [cell setTabId:tabId]; | 109 [cell setTabId:tabId]; |
110 [cell setExtensionAction:extension->browser_action()]; | 110 [cell setExtensionAction:extension->browser_action()]; |
111 | 111 |
112 [self setTitle:@""]; | 112 [self setTitle:@""]; |
113 [self setButtonType:NSMomentaryChangeButton]; | 113 [self setButtonType:NSMomentaryChangeButton]; |
114 [self setShowsBorderOnlyWhileMouseInside:YES]; | 114 [self setShowsBorderOnlyWhileMouseInside:YES]; |
115 | 115 |
116 [self setMenu:[[[ExtensionActionContextMenu alloc] | 116 [self setMenu:[[[ExtensionActionContextMenu alloc] |
117 initWithExtension:extension] autorelease]]; | 117 initWithExtension:extension profile:profile] autorelease]]; |
118 | 118 |
119 tabId_ = tabId; | 119 tabId_ = tabId; |
120 extension_ = extension; | 120 extension_ = extension; |
121 imageLoadingBridge_.reset(new ExtensionImageTrackerBridge(self, extension)); | 121 imageLoadingBridge_.reset(new ExtensionImageTrackerBridge(self, extension)); |
122 | 122 |
123 [self updateState]; | 123 [self updateState]; |
124 } | 124 } |
125 | 125 |
126 return self; | 126 return self; |
127 } | 127 } |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 extensionAction_->PaintBadge(&canvas, boundingRect, tabId_); | 187 extensionAction_->PaintBadge(&canvas, boundingRect, tabId_); |
188 } | 188 } |
189 | 189 |
190 [NSGraphicsContext restoreGraphicsState]; | 190 [NSGraphicsContext restoreGraphicsState]; |
191 } | 191 } |
192 | 192 |
193 @synthesize tabId = tabId_; | 193 @synthesize tabId = tabId_; |
194 @synthesize extensionAction = extensionAction_; | 194 @synthesize extensionAction = extensionAction_; |
195 | 195 |
196 @end | 196 @end |
OLD | NEW |