OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ui/views/controls/button/custom_button.h" | 5 #include "ui/views/controls/button/custom_button.h" |
6 | 6 |
7 #include "base/macros.h" | 7 #include "base/macros.h" |
8 #include "base/memory/ptr_util.h" | 8 #include "base/memory/ptr_util.h" |
9 #include "build/build_config.h" | 9 #include "build/build_config.h" |
10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
50 void ShowContextMenuForView(View* source, | 50 void ShowContextMenuForView(View* source, |
51 const gfx::Point& point, | 51 const gfx::Point& point, |
52 ui::MenuSourceType source_type) override {} | 52 ui::MenuSourceType source_type) override {} |
53 | 53 |
54 private: | 54 private: |
55 DISALLOW_COPY_AND_ASSIGN(TestContextMenuController); | 55 DISALLOW_COPY_AND_ASSIGN(TestContextMenuController); |
56 }; | 56 }; |
57 | 57 |
58 class TestCustomButton : public CustomButton, public ButtonListener { | 58 class TestCustomButton : public CustomButton, public ButtonListener { |
59 public: | 59 public: |
60 explicit TestCustomButton() | 60 explicit TestCustomButton(bool has_ink_drop_action_on_click) |
61 : CustomButton(this) { | 61 : CustomButton(this) { |
| 62 set_has_ink_drop_action_on_click(has_ink_drop_action_on_click); |
62 } | 63 } |
63 | 64 |
64 ~TestCustomButton() override {} | 65 ~TestCustomButton() override {} |
65 | 66 |
66 void ButtonPressed(Button* sender, const ui::Event& event) override { | 67 void ButtonPressed(Button* sender, const ui::Event& event) override { |
67 pressed_ = true; | 68 pressed_ = true; |
68 } | 69 } |
69 | 70 |
70 void OnClickCanceled(const ui::Event& event) override { | 71 void OnClickCanceled(const ui::Event& event) override { |
71 canceled_ = true; | 72 canceled_ = true; |
(...skipping 29 matching lines...) Expand all Loading... |
101 | 102 |
102 // Create a widget so that the CustomButton can query the hover state | 103 // Create a widget so that the CustomButton can query the hover state |
103 // correctly. | 104 // correctly. |
104 widget_.reset(new Widget); | 105 widget_.reset(new Widget); |
105 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_POPUP); | 106 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_POPUP); |
106 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; | 107 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
107 params.bounds = gfx::Rect(0, 0, 650, 650); | 108 params.bounds = gfx::Rect(0, 0, 650, 650); |
108 widget_->Init(params); | 109 widget_->Init(params); |
109 widget_->Show(); | 110 widget_->Show(); |
110 | 111 |
111 button_ = new TestCustomButton(); | 112 button_ = new TestCustomButton(false); |
112 widget_->SetContentsView(button_); | 113 widget_->SetContentsView(button_); |
113 } | 114 } |
114 | 115 |
115 void TearDown() override { | 116 void TearDown() override { |
116 widget_.reset(); | 117 widget_.reset(); |
117 ViewsTestBase::TearDown(); | 118 ViewsTestBase::TearDown(); |
118 } | 119 } |
119 | 120 |
120 void CreateButtonWithInkDrop(std::unique_ptr<InkDrop> ink_drop) { | 121 void CreateButtonWithInkDrop(std::unique_ptr<InkDrop> ink_drop, |
| 122 bool has_ink_drop_action_on_click) { |
121 delete button_; | 123 delete button_; |
122 button_ = new TestCustomButton(); | 124 button_ = new TestCustomButton(has_ink_drop_action_on_click); |
123 InkDropHostViewTestApi(button_).SetInkDrop(std::move(ink_drop)); | 125 InkDropHostViewTestApi(button_).SetInkDrop(std::move(ink_drop)); |
124 widget_->SetContentsView(button_); | 126 widget_->SetContentsView(button_); |
125 } | 127 } |
126 | 128 |
127 protected: | 129 protected: |
128 Widget* widget() { return widget_.get(); } | 130 Widget* widget() { return widget_.get(); } |
129 TestCustomButton* button() { return button_; } | 131 TestCustomButton* button() { return button_; } |
130 void SetDraggedView(View* dragged_view) { | 132 void SetDraggedView(View* dragged_view) { |
131 widget_->dragged_view_ = dragged_view; | 133 widget_->dragged_view_ = dragged_view; |
132 } | 134 } |
(...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
343 Textfield textfield; | 345 Textfield textfield; |
344 EXPECT_FALSE(CustomButton::AsCustomButton(&textfield)); | 346 EXPECT_FALSE(CustomButton::AsCustomButton(&textfield)); |
345 } | 347 } |
346 | 348 |
347 // Tests that pressing a button shows the ink drop and releasing the button | 349 // Tests that pressing a button shows the ink drop and releasing the button |
348 // does not hide the ink drop. | 350 // does not hide the ink drop. |
349 // Note: Ink drop is not hidden upon release because CustomButton descendants | 351 // Note: Ink drop is not hidden upon release because CustomButton descendants |
350 // may enter a different ink drop state. | 352 // may enter a different ink drop state. |
351 TEST_F(CustomButtonTest, ButtonClickTogglesInkDrop) { | 353 TEST_F(CustomButtonTest, ButtonClickTogglesInkDrop) { |
352 TestInkDrop* ink_drop = new TestInkDrop(); | 354 TestInkDrop* ink_drop = new TestInkDrop(); |
353 CreateButtonWithInkDrop(base::WrapUnique(ink_drop)); | 355 CreateButtonWithInkDrop(base::WrapUnique(ink_drop), false); |
354 | 356 |
355 ui::test::EventGenerator generator(widget()->GetNativeWindow()); | 357 ui::test::EventGenerator generator(widget()->GetNativeWindow()); |
356 generator.set_current_location(gfx::Point(50, 50)); | 358 generator.set_current_location(gfx::Point(50, 50)); |
357 generator.PressLeftButton(); | 359 generator.PressLeftButton(); |
358 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); | 360 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); |
359 | 361 |
360 generator.ReleaseLeftButton(); | 362 generator.ReleaseLeftButton(); |
361 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); | 363 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); |
362 } | 364 } |
363 | 365 |
364 // Tests that pressing a button shows and releasing capture hides ink drop. | 366 // Tests that pressing a button shows and releasing capture hides ink drop. |
365 // Releasing capture should also reset PRESSED button state to NORMAL. | 367 // Releasing capture should also reset PRESSED button state to NORMAL. |
366 TEST_F(CustomButtonTest, CaptureLossHidesInkDrop) { | 368 TEST_F(CustomButtonTest, CaptureLossHidesInkDrop) { |
367 TestInkDrop* ink_drop = new TestInkDrop(); | 369 TestInkDrop* ink_drop = new TestInkDrop(); |
368 CreateButtonWithInkDrop(base::WrapUnique(ink_drop)); | 370 CreateButtonWithInkDrop(base::WrapUnique(ink_drop), false); |
369 | 371 |
370 ui::test::EventGenerator generator(widget()->GetNativeWindow()); | 372 ui::test::EventGenerator generator(widget()->GetNativeWindow()); |
371 generator.set_current_location(gfx::Point(50, 50)); | 373 generator.set_current_location(gfx::Point(50, 50)); |
372 generator.PressLeftButton(); | 374 generator.PressLeftButton(); |
373 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); | 375 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); |
374 | 376 |
375 EXPECT_EQ(Button::ButtonState::STATE_PRESSED, button()->state()); | 377 EXPECT_EQ(Button::ButtonState::STATE_PRESSED, button()->state()); |
376 SetDraggedView(button()); | 378 SetDraggedView(button()); |
377 widget()->SetCapture(button()); | 379 widget()->SetCapture(button()); |
378 widget()->ReleaseCapture(); | 380 widget()->ReleaseCapture(); |
379 SetDraggedView(nullptr); | 381 SetDraggedView(nullptr); |
380 EXPECT_EQ(InkDropState::HIDDEN, ink_drop->GetTargetInkDropState()); | 382 EXPECT_EQ(InkDropState::HIDDEN, ink_drop->GetTargetInkDropState()); |
381 EXPECT_EQ(ui::MaterialDesignController::IsModeMaterial() | 383 EXPECT_EQ(ui::MaterialDesignController::IsModeMaterial() |
382 ? Button::ButtonState::STATE_NORMAL | 384 ? Button::ButtonState::STATE_NORMAL |
383 : Button::ButtonState::STATE_PRESSED, | 385 : Button::ButtonState::STATE_PRESSED, |
384 button()->state()); | 386 button()->state()); |
385 } | 387 } |
386 | 388 |
387 TEST_F(CustomButtonTest, HideInkDropWhenShowingContextMenu) { | 389 TEST_F(CustomButtonTest, HideInkDropWhenShowingContextMenu) { |
388 TestInkDrop* ink_drop = new TestInkDrop(); | 390 TestInkDrop* ink_drop = new TestInkDrop(); |
389 CreateButtonWithInkDrop(base::WrapUnique(ink_drop)); | 391 CreateButtonWithInkDrop(base::WrapUnique(ink_drop), false); |
390 TestContextMenuController context_menu_controller; | 392 TestContextMenuController context_menu_controller; |
391 button()->set_context_menu_controller(&context_menu_controller); | 393 button()->set_context_menu_controller(&context_menu_controller); |
392 button()->set_hide_ink_drop_when_showing_context_menu(true); | 394 button()->set_hide_ink_drop_when_showing_context_menu(true); |
393 | 395 |
394 ink_drop->SetHovered(true); | 396 ink_drop->SetHovered(true); |
395 ink_drop->AnimateToState(InkDropState::ACTION_PENDING); | 397 ink_drop->AnimateToState(InkDropState::ACTION_PENDING); |
396 | 398 |
397 button()->ShowContextMenu(gfx::Point(), ui::MENU_SOURCE_MOUSE); | 399 button()->ShowContextMenu(gfx::Point(), ui::MENU_SOURCE_MOUSE); |
398 | 400 |
399 EXPECT_FALSE(ink_drop->is_hovered()); | 401 EXPECT_FALSE(ink_drop->is_hovered()); |
400 EXPECT_EQ(InkDropState::HIDDEN, ink_drop->GetTargetInkDropState()); | 402 EXPECT_EQ(InkDropState::HIDDEN, ink_drop->GetTargetInkDropState()); |
401 } | 403 } |
402 | 404 |
403 TEST_F(CustomButtonTest, DontHideInkDropWhenShowingContextMenu) { | 405 TEST_F(CustomButtonTest, DontHideInkDropWhenShowingContextMenu) { |
404 TestInkDrop* ink_drop = new TestInkDrop(); | 406 TestInkDrop* ink_drop = new TestInkDrop(); |
405 CreateButtonWithInkDrop(base::WrapUnique(ink_drop)); | 407 CreateButtonWithInkDrop(base::WrapUnique(ink_drop), false); |
406 TestContextMenuController context_menu_controller; | 408 TestContextMenuController context_menu_controller; |
407 button()->set_context_menu_controller(&context_menu_controller); | 409 button()->set_context_menu_controller(&context_menu_controller); |
408 button()->set_hide_ink_drop_when_showing_context_menu(false); | 410 button()->set_hide_ink_drop_when_showing_context_menu(false); |
409 | 411 |
410 ink_drop->SetHovered(true); | 412 ink_drop->SetHovered(true); |
411 ink_drop->AnimateToState(InkDropState::ACTION_PENDING); | 413 ink_drop->AnimateToState(InkDropState::ACTION_PENDING); |
412 | 414 |
413 button()->ShowContextMenu(gfx::Point(), ui::MENU_SOURCE_MOUSE); | 415 button()->ShowContextMenu(gfx::Point(), ui::MENU_SOURCE_MOUSE); |
414 | 416 |
415 EXPECT_TRUE(ink_drop->is_hovered()); | 417 EXPECT_TRUE(ink_drop->is_hovered()); |
416 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); | 418 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); |
417 } | 419 } |
418 | 420 |
419 TEST_F(CustomButtonTest, HideInkDropOnBlur) { | 421 TEST_F(CustomButtonTest, HideInkDropOnBlur) { |
420 gfx::Point center(10, 10); | 422 gfx::Point center(10, 10); |
421 | 423 |
422 TestInkDrop* ink_drop = new TestInkDrop(); | 424 TestInkDrop* ink_drop = new TestInkDrop(); |
423 CreateButtonWithInkDrop(base::WrapUnique(ink_drop)); | 425 CreateButtonWithInkDrop(base::WrapUnique(ink_drop), false); |
424 | 426 |
425 button()->OnFocus(); | 427 button()->OnFocus(); |
426 | 428 |
427 button()->OnMousePressed(ui::MouseEvent( | 429 button()->OnMousePressed(ui::MouseEvent( |
428 ui::ET_MOUSE_PRESSED, center, center, ui::EventTimeForNow(), | 430 ui::ET_MOUSE_PRESSED, center, center, ui::EventTimeForNow(), |
429 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); | 431 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
430 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); | 432 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); |
431 | 433 |
432 button()->OnBlur(); | 434 button()->OnBlur(); |
433 EXPECT_EQ(InkDropState::HIDDEN, ink_drop->GetTargetInkDropState()); | 435 EXPECT_EQ(InkDropState::HIDDEN, ink_drop->GetTargetInkDropState()); |
434 | 436 |
435 button()->OnMouseReleased(ui::MouseEvent( | 437 button()->OnMouseReleased(ui::MouseEvent( |
436 ui::ET_MOUSE_PRESSED, center, center, ui::EventTimeForNow(), | 438 ui::ET_MOUSE_PRESSED, center, center, ui::EventTimeForNow(), |
437 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); | 439 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
438 EXPECT_TRUE(button()->pressed()); | 440 EXPECT_TRUE(button()->pressed()); |
439 } | 441 } |
440 | 442 |
441 TEST_F(CustomButtonTest, InkDropAfterTryingToShowContextMenu) { | 443 TEST_F(CustomButtonTest, InkDropAfterTryingToShowContextMenu) { |
442 TestInkDrop* ink_drop = new TestInkDrop(); | 444 TestInkDrop* ink_drop = new TestInkDrop(); |
443 CreateButtonWithInkDrop(base::WrapUnique(ink_drop)); | 445 CreateButtonWithInkDrop(base::WrapUnique(ink_drop), false); |
444 button()->set_context_menu_controller(nullptr); | 446 button()->set_context_menu_controller(nullptr); |
445 | 447 |
446 ink_drop->SetHovered(true); | 448 ink_drop->SetHovered(true); |
447 ink_drop->AnimateToState(InkDropState::ACTION_PENDING); | 449 ink_drop->AnimateToState(InkDropState::ACTION_PENDING); |
448 | 450 |
449 button()->ShowContextMenu(gfx::Point(), ui::MENU_SOURCE_MOUSE); | 451 button()->ShowContextMenu(gfx::Point(), ui::MENU_SOURCE_MOUSE); |
450 | 452 |
451 EXPECT_TRUE(ink_drop->is_hovered()); | 453 EXPECT_TRUE(ink_drop->is_hovered()); |
452 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); | 454 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); |
453 } | 455 } |
454 | 456 |
455 TEST_F(CustomButtonTest, InkDropShowHideOnMouseDragged) { | 457 // Tests that when button is set to notify on release, dragging mouse out and |
| 458 // back transitions ink drop states correctly. |
| 459 TEST_F(CustomButtonTest, InkDropShowHideOnMouseDraggedNotifyOnRelease) { |
456 gfx::Point center(10, 10); | 460 gfx::Point center(10, 10); |
457 gfx::Point oob(-1, -1); | 461 gfx::Point oob(-1, -1); |
458 | 462 |
459 TestInkDrop* ink_drop = new TestInkDrop(); | 463 TestInkDrop* ink_drop = new TestInkDrop(); |
460 CreateButtonWithInkDrop(base::WrapUnique(ink_drop)); | 464 CreateButtonWithInkDrop(base::WrapUnique(ink_drop), false); |
| 465 button()->set_notify_action(CustomButton::NOTIFY_ON_RELEASE); |
461 | 466 |
462 button()->OnMousePressed(ui::MouseEvent( | 467 button()->OnMousePressed(ui::MouseEvent( |
463 ui::ET_MOUSE_PRESSED, center, center, ui::EventTimeForNow(), | 468 ui::ET_MOUSE_PRESSED, center, center, ui::EventTimeForNow(), |
464 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); | 469 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
465 | 470 |
466 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); | 471 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); |
467 | 472 |
468 button()->OnMouseDragged( | 473 button()->OnMouseDragged( |
469 ui::MouseEvent(ui::ET_MOUSE_PRESSED, oob, oob, ui::EventTimeForNow(), | 474 ui::MouseEvent(ui::ET_MOUSE_PRESSED, oob, oob, ui::EventTimeForNow(), |
470 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); | 475 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
(...skipping 12 matching lines...) Expand all Loading... |
483 | 488 |
484 EXPECT_EQ(InkDropState::HIDDEN, ink_drop->GetTargetInkDropState()); | 489 EXPECT_EQ(InkDropState::HIDDEN, ink_drop->GetTargetInkDropState()); |
485 | 490 |
486 button()->OnMouseReleased( | 491 button()->OnMouseReleased( |
487 ui::MouseEvent(ui::ET_MOUSE_PRESSED, oob, oob, ui::EventTimeForNow(), | 492 ui::MouseEvent(ui::ET_MOUSE_PRESSED, oob, oob, ui::EventTimeForNow(), |
488 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); | 493 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
489 | 494 |
490 EXPECT_FALSE(button()->pressed()); | 495 EXPECT_FALSE(button()->pressed()); |
491 } | 496 } |
492 | 497 |
| 498 // Tests that when button is set to notify on press, dragging mouse out and back |
| 499 // does not change the ink drop state. |
| 500 TEST_F(CustomButtonTest, InkDropShowHideOnMouseDraggedNotifyOnPress) { |
| 501 gfx::Point center(10, 10); |
| 502 gfx::Point oob(-1, -1); |
| 503 |
| 504 TestInkDrop* ink_drop = new TestInkDrop(); |
| 505 CreateButtonWithInkDrop(base::WrapUnique(ink_drop), true); |
| 506 button()->set_notify_action(CustomButton::NOTIFY_ON_PRESS); |
| 507 |
| 508 button()->OnMousePressed(ui::MouseEvent( |
| 509 ui::ET_MOUSE_PRESSED, center, center, ui::EventTimeForNow(), |
| 510 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
| 511 |
| 512 EXPECT_EQ(InkDropState::ACTION_TRIGGERED, ink_drop->GetTargetInkDropState()); |
| 513 EXPECT_TRUE(button()->pressed()); |
| 514 |
| 515 button()->OnMouseDragged( |
| 516 ui::MouseEvent(ui::ET_MOUSE_PRESSED, oob, oob, ui::EventTimeForNow(), |
| 517 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
| 518 |
| 519 EXPECT_EQ(InkDropState::ACTION_TRIGGERED, ink_drop->GetTargetInkDropState()); |
| 520 |
| 521 button()->OnMouseDragged(ui::MouseEvent( |
| 522 ui::ET_MOUSE_PRESSED, center, center, ui::EventTimeForNow(), |
| 523 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
| 524 |
| 525 EXPECT_EQ(InkDropState::ACTION_TRIGGERED, ink_drop->GetTargetInkDropState()); |
| 526 |
| 527 button()->OnMouseDragged( |
| 528 ui::MouseEvent(ui::ET_MOUSE_PRESSED, oob, oob, ui::EventTimeForNow(), |
| 529 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
| 530 |
| 531 EXPECT_EQ(InkDropState::ACTION_TRIGGERED, ink_drop->GetTargetInkDropState()); |
| 532 |
| 533 button()->OnMouseReleased( |
| 534 ui::MouseEvent(ui::ET_MOUSE_PRESSED, oob, oob, ui::EventTimeForNow(), |
| 535 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
| 536 |
| 537 EXPECT_EQ(InkDropState::ACTION_TRIGGERED, ink_drop->GetTargetInkDropState()); |
| 538 } |
| 539 |
493 TEST_F(CustomButtonTest, InkDropStaysHiddenWhileDragging) { | 540 TEST_F(CustomButtonTest, InkDropStaysHiddenWhileDragging) { |
494 gfx::Point center(10, 10); | 541 gfx::Point center(10, 10); |
495 gfx::Point oob(-1, -1); | 542 gfx::Point oob(-1, -1); |
496 | 543 |
497 TestInkDrop* ink_drop = new TestInkDrop(); | 544 TestInkDrop* ink_drop = new TestInkDrop(); |
498 CreateButtonWithInkDrop(base::WrapUnique(ink_drop)); | 545 CreateButtonWithInkDrop(base::WrapUnique(ink_drop), false); |
499 | 546 |
500 button()->OnMousePressed(ui::MouseEvent( | 547 button()->OnMousePressed(ui::MouseEvent( |
501 ui::ET_MOUSE_PRESSED, center, center, ui::EventTimeForNow(), | 548 ui::ET_MOUSE_PRESSED, center, center, ui::EventTimeForNow(), |
502 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); | 549 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); |
503 | 550 |
504 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); | 551 EXPECT_EQ(InkDropState::ACTION_PENDING, ink_drop->GetTargetInkDropState()); |
505 | 552 |
506 SetDraggedView(button()); | 553 SetDraggedView(button()); |
507 widget()->SetCapture(button()); | 554 widget()->SetCapture(button()); |
508 widget()->ReleaseCapture(); | 555 widget()->ReleaseCapture(); |
(...skipping 29 matching lines...) Expand all Loading... |
538 EXPECT_EQ(CustomButton::STATE_PRESSED, button()->state()); | 585 EXPECT_EQ(CustomButton::STATE_PRESSED, button()->state()); |
539 EXPECT_FALSE(button()->pressed()); | 586 EXPECT_FALSE(button()->pressed()); |
540 | 587 |
541 ui::KeyEvent space_release(ui::ET_KEY_RELEASED, ui::VKEY_SPACE, ui::EF_NONE); | 588 ui::KeyEvent space_release(ui::ET_KEY_RELEASED, ui::VKEY_SPACE, ui::EF_NONE); |
542 SimulateKeyEvent(&space_release); | 589 SimulateKeyEvent(&space_release); |
543 EXPECT_EQ(CustomButton::STATE_NORMAL, button()->state()); | 590 EXPECT_EQ(CustomButton::STATE_NORMAL, button()->state()); |
544 EXPECT_TRUE(button()->pressed()); | 591 EXPECT_TRUE(button()->pressed()); |
545 } | 592 } |
546 | 593 |
547 } // namespace views | 594 } // namespace views |
OLD | NEW |