Commit f2f9889e authored by xrenishere@gmail.com's avatar xrenishere@gmail.com

Fix BrowserActionButton's hover state in ToolbarController.

The cell was changed from GradientButtonCell to ImageButtonCell. GradientButtonCell 
has setMouseInside:animate:, but for ImageButtonCell this method is called setIsMouseInside:

BUG=373662

R=thakis@chromium.org

Review URL: https://codereview.chromium.org/299633002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@273183 0039d316-1c4b-4281-b951-d872f2087c98
parent 81989a84
......@@ -384,6 +384,7 @@ Vivek Galatage <vivek.vg@samsung.com>
Will Hirsch <chromium@willhirsch.co.uk>
Xinchao He <hexinchao@gmail.com>
Xu Samuel <samuel.xu@intel.com>
Xuefei Ren <xrenishere@gmail.com>
Yael Aharon <yael.aharon@intel.com>
Yair Yogev <progame@chromium.org>
Yang Gu <yang.gu@intel.com>
......
......@@ -361,7 +361,7 @@ class NotificationBridge
}
- (void)mouseExited:(NSEvent*)theEvent {
[[hoveredButton_ cell] setMouseInside:NO animate:YES];
[[hoveredButton_ cell] setIsMouseInside:NO];
[hoveredButton_ release];
hoveredButton_ = nil;
}
......@@ -374,7 +374,7 @@ class NotificationBridge
// button cell that cares. GradientButtonCell derived cells care.
if (([targetView isKindOfClass:[NSButton class]]) &&
([[targetView cell]
respondsToSelector:@selector(setMouseInside:animate:)]))
respondsToSelector:@selector(setIsMouseInside:)]))
return targetView;
return nil;
}
......@@ -382,8 +382,8 @@ class NotificationBridge
- (void)mouseMoved:(NSEvent*)theEvent {
NSButton* targetView = [self hoverButtonForEvent:theEvent];
if (hoveredButton_ != targetView) {
[[hoveredButton_ cell] setMouseInside:NO animate:YES];
[[targetView cell] setMouseInside:YES animate:YES];
[[hoveredButton_ cell] setIsMouseInside:NO];
[[targetView cell] setIsMouseInside:YES];
[hoveredButton_ release];
hoveredButton_ = [targetView retain];
}
......
......@@ -12,7 +12,7 @@
#include "chrome/browser/ui/browser_command_controller.h"
#include "chrome/browser/ui/browser_commands.h"
#include "chrome/browser/ui/cocoa/cocoa_profile_test.h"
#import "chrome/browser/ui/cocoa/gradient_button_cell.h"
#import "chrome/browser/ui/cocoa/image_button_cell.h"
#import "chrome/browser/ui/cocoa/toolbar/toolbar_controller.h"
#import "chrome/browser/ui/cocoa/view_resizer_pong.h"
#include "chrome/common/pref_names.h"
......@@ -247,8 +247,8 @@ TEST_F(ToolbarControllerTest, HoverButtonForEvent) {
EXPECT_FALSE([bar_ hoverButtonForEvent:event]);
// Now!
base::scoped_nsobject<GradientButtonCell> cell(
[[GradientButtonCell alloc] init]);
base::scoped_nsobject<ImageButtonCell> cell(
[[ImageButtonCell alloc] init]);
[button setCell:cell.get()];
EXPECT_TRUE([bar_ hoverButtonForEvent:nil]);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment