Chromium Code Reviews| Index: ui/views/controls/button/menu_button_unittest.cc |
| diff --git a/ui/views/controls/button/menu_button_unittest.cc b/ui/views/controls/button/menu_button_unittest.cc |
| index adb1a6d3d5fcf475fde5ee011bbbfcceba0b72c6..3e4ff0c5a572ed9a4e63226e7b8fc6a5d44f2610 100644 |
| --- a/ui/views/controls/button/menu_button_unittest.cc |
| +++ b/ui/views/controls/button/menu_button_unittest.cc |
| @@ -340,6 +340,39 @@ TEST_F(MenuButtonTest, ActivateDropDownOnMouseClick) { |
| EXPECT_EQ(Button::STATE_HOVERED, menu_button_listener.last_source_state()); |
| } |
| +// Tests that the ink drop center point is set from the mouse click point. |
| +TEST_F(MenuButtonTest, InkDropCenterSetFromClick) { |
| + TestMenuButtonListener menu_button_listener; |
| + CreateMenuButtonWithMenuButtonListener(&menu_button_listener); |
| + |
| + auto click_point = gfx::Point(6, 8); |
|
sky
2017/04/24 15:07:13
IMO auto here is overkill:
gfx::Point click_point
emx
2017/04/24 16:32:07
Oh, yes, of course. :)
|
| + generator()->MoveMouseTo(click_point); |
| + generator()->ClickLeftButton(); |
| + |
| + EXPECT_EQ(button(), menu_button_listener.last_source()); |
| + EXPECT_EQ( |
| + click_point, |
| + InkDropHostViewTestApi(button()).GetInkDropCenterBasedOnLastEvent()); |
| +} |
| + |
| +// Tests that the ink drop center point is set from the PressedLock constructor. |
| +TEST_F(MenuButtonTest, InkDropCenterSetFromClickWithPressedLock) { |
| + TestMenuButtonListener menu_button_listener; |
| + CreateMenuButtonWithMenuButtonListener(&menu_button_listener); |
| + |
| + auto click_point = gfx::Point(11, 7); |
| + auto click_event = |
| + ui::MouseEvent(ui::EventType::ET_MOUSE_PRESSED, click_point, click_point, |
| + base::TimeTicks(), 0, 0); |
| + std::unique_ptr<MenuButton::PressedLock> pressed_lock( |
|
sky
2017/04/24 15:07:13
There is no need for the unique_ptr here. Declared
emx
2017/04/24 16:32:07
Done.
|
| + new MenuButton::PressedLock(button(), false, &click_event)); |
| + |
| + EXPECT_EQ(Button::STATE_PRESSED, button()->state()); |
| + EXPECT_EQ( |
| + click_point, |
| + InkDropHostViewTestApi(button()).GetInkDropCenterBasedOnLastEvent()); |
| +} |
| + |
| // Test that the MenuButton stays pressed while there are any PressedLocks. |
| TEST_F(MenuButtonTest, ButtonStateForMenuButtonsWithPressedLocks) { |
| // Similarly for aura-mus-client the location of the cursor is not updated by |