| Index: ui/views/controls/button/menu_button.cc
|
| diff --git a/ui/views/controls/button/menu_button.cc b/ui/views/controls/button/menu_button.cc
|
| index 599e06a72ff06d91f657d5747a94636da70c4c87..3e5039ec522f35a115e535c7fe6b9d646b832d4b 100644
|
| --- a/ui/views/controls/button/menu_button.cc
|
| +++ b/ui/views/controls/button/menu_button.cc
|
| @@ -48,7 +48,13 @@ const int MenuButton::kMenuMarkerPaddingRight = -1;
|
|
|
| MenuButton::PressedLock::PressedLock(MenuButton* menu_button)
|
| : menu_button_(menu_button->weak_factory_.GetWeakPtr()) {
|
| - menu_button_->IncrementPressedLocked();
|
| + menu_button_->IncrementPressedLocked(true);
|
| +}
|
| +
|
| +MenuButton::PressedLock::PressedLock(MenuButton* menu_button,
|
| + bool first_menu_show)
|
| + : menu_button_(menu_button->weak_factory_.GetWeakPtr()) {
|
| + menu_button_->IncrementPressedLocked(first_menu_show);
|
| }
|
|
|
| MenuButton::PressedLock::~PressedLock() {
|
| @@ -368,13 +374,17 @@ void MenuButton::NotifyClick(const ui::Event& event) {
|
| Activate(&event);
|
| }
|
|
|
| -void MenuButton::IncrementPressedLocked() {
|
| +void MenuButton::IncrementPressedLocked(bool animate_ink_drop) {
|
| ++pressed_lock_count_;
|
| if (increment_pressed_lock_called_)
|
| *increment_pressed_lock_called_ = true;
|
| should_disable_after_press_ = state() == STATE_DISABLED;
|
| - if (state() != STATE_PRESSED && ink_drop_delegate())
|
| - ink_drop_delegate()->OnAction(InkDropState::ACTIVATED);
|
| + if (state() != STATE_PRESSED && ink_drop_delegate()) {
|
| + if (animate_ink_drop)
|
| + ink_drop_delegate()->OnAction(InkDropState::ACTIVATED);
|
| + else
|
| + ink_drop_delegate()->SnapToActivated();
|
| + }
|
| SetState(STATE_PRESSED);
|
| }
|
|
|
|
|