| Index: chrome/browser/ui/views/toolbar/toolbar_button.cc
|
| diff --git a/chrome/browser/ui/views/toolbar/toolbar_button.cc b/chrome/browser/ui/views/toolbar/toolbar_button.cc
|
| index 33cfcd013c9dc9d0e64e3a372ebb59925614c3ab..95d9ebf0eed0cea2196e100265920aad144e2551 100644
|
| --- a/chrome/browser/ui/views/toolbar/toolbar_button.cc
|
| +++ b/chrome/browser/ui/views/toolbar/toolbar_button.cc
|
| @@ -34,7 +34,7 @@ ToolbarButton::ToolbarButton(views::ButtonListener* listener,
|
| y_position_on_lbuttondown_(0),
|
| ink_drop_animation_controller_(
|
| views::InkDropAnimationControllerFactory::
|
| - CreateInkDropAnimationController(this)),
|
| + CreateInkDropAnimationController(this, this)),
|
| show_menu_factory_(this) {
|
| set_context_menu_controller(this);
|
|
|
| @@ -151,12 +151,18 @@ void ToolbarButton::OnMouseReleased(const ui::MouseEvent& event) {
|
| void ToolbarButton::OnMouseCaptureLost() {
|
| }
|
|
|
| +void ToolbarButton::OnMouseEntered(const ui::MouseEvent& event) {
|
| + UpdateInkDropHoverState();
|
| +}
|
| +
|
| void ToolbarButton::OnMouseExited(const ui::MouseEvent& event) {
|
| // Starting a drag results in a MouseExited, we need to ignore it.
|
| // A right click release triggers an exit event. We want to
|
| // remain in a PUSHED state until the drop down menu closes.
|
| if (state_ != STATE_DISABLED && !InDrag() && state_ != STATE_PRESSED)
|
| SetState(STATE_NORMAL);
|
| +
|
| + UpdateInkDropHoverState();
|
| }
|
|
|
| void ToolbarButton::OnGestureEvent(ui::GestureEvent* event) {
|
| @@ -214,6 +220,10 @@ ToolbarButton::CreateDefaultBorder() const {
|
| return border.Pass();
|
| }
|
|
|
| +void ToolbarButton::OnEnabledChanged() {
|
| + UpdateInkDropHoverState();
|
| +}
|
| +
|
| void ToolbarButton::ShowContextMenuForView(View* source,
|
| const gfx::Point& point,
|
| ui::MenuSourceType source_type) {
|
| @@ -346,6 +356,10 @@ gfx::Point ToolbarButton::CalculateInkDropCenter() const {
|
| return GetLocalBounds().CenterPoint();
|
| }
|
|
|
| +void ToolbarButton::UpdateInkDropHoverState() {
|
| + ink_drop_animation_controller_->SetHovered(ShouldShowInkDropHover());
|
| +}
|
| +
|
| const char* ToolbarButton::GetClassName() const {
|
| return "ToolbarButton";
|
| }
|
|
|