| Index: chrome/browser/ui/cocoa/image_button_cell.mm
|
| diff --git a/chrome/browser/ui/cocoa/image_button_cell.mm b/chrome/browser/ui/cocoa/image_button_cell.mm
|
| index fe6dcb9f6504a0c61637f461ecffefc33ac21212..bb81227123cacb13f1fc97b15415dde73a82832f 100644
|
| --- a/chrome/browser/ui/cocoa/image_button_cell.mm
|
| +++ b/chrome/browser/ui/cocoa/image_button_cell.mm
|
| @@ -138,10 +138,25 @@ const CGFloat kImageNoFocusAlpha = 0.65;
|
| - (void)setIsMouseInside:(BOOL)isMouseInside {
|
| if (isMouseInside_ != isMouseInside) {
|
| isMouseInside_ = isMouseInside;
|
| - [[self controlView] setNeedsDisplay:YES];
|
| + NSView<ImageButton>* control =
|
| + static_cast<NSView<ImageButton>*>([self controlView]);
|
| + if ([control respondsToSelector:@selector(mouseInsideStateDidChange:)]) {
|
| + [control mouseInsideStateDidChange:isMouseInside];
|
| + }
|
| + [control setNeedsDisplay:YES];
|
| }
|
| }
|
|
|
| +- (void)setShowsBorderOnlyWhileMouseInside:(BOOL)show {
|
| + VLOG_IF(1, !show) << "setShowsBorderOnlyWhileMouseInside:NO ignored";
|
| +}
|
| +
|
| +- (BOOL)showsBorderOnlyWhileMouseInside {
|
| + // Always returns YES so that buttons always get mouse tracking even when
|
| + // disabled. The reload button (and possibly others) depend on this.
|
| + return YES;
|
| +}
|
| +
|
| - (void)mouseEntered:(NSEvent*)theEvent {
|
| [self setIsMouseInside:YES];
|
| }
|
|
|