| 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 "base/memory/scoped_ptr.h" | 5 #include "base/memory/scoped_ptr.h" |
| 6 #include "testing/gtest/include/gtest/gtest.h" | 6 #include "testing/gtest/include/gtest/gtest.h" |
| 7 #include "ui/events/event.h" | 7 #include "ui/events/event.h" |
| 8 #include "ui/events/event_utils.h" | 8 #include "ui/events/event_utils.h" |
| 9 #include "ui/events/keycodes/dom/dom_code.h" | 9 #include "ui/events/keycodes/dom/dom_code.h" |
| 10 #include "ui/events/keycodes/dom/keycode_converter.h" | 10 #include "ui/events/keycodes/dom/keycode_converter.h" |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 52 EXPECT_EQ(10, keyev3.GetCharacter()); | 52 EXPECT_EQ(10, keyev3.GetCharacter()); |
| 53 | 53 |
| 54 event.InitKeyEvent(ET_KEY_PRESSED, VKEY_RETURN, EF_NONE); | 54 event.InitKeyEvent(ET_KEY_PRESSED, VKEY_RETURN, EF_NONE); |
| 55 KeyEvent keyev4(event); | 55 KeyEvent keyev4(event); |
| 56 EXPECT_EQ(13, keyev4.GetCharacter()); | 56 EXPECT_EQ(13, keyev4.GetCharacter()); |
| 57 #endif | 57 #endif |
| 58 } | 58 } |
| 59 | 59 |
| 60 TEST(EventTest, ClickCount) { | 60 TEST(EventTest, ClickCount) { |
| 61 const gfx::Point origin(0, 0); | 61 const gfx::Point origin(0, 0); |
| 62 MouseEvent mouseev(ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), 0, 0); | 62 MouseEvent mouseev( |
| 63 ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), 0, 0, |
| 64 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE)); |
| 63 for (int i = 1; i <=3 ; ++i) { | 65 for (int i = 1; i <=3 ; ++i) { |
| 64 mouseev.SetClickCount(i); | 66 mouseev.SetClickCount(i); |
| 65 EXPECT_EQ(i, mouseev.GetClickCount()); | 67 EXPECT_EQ(i, mouseev.GetClickCount()); |
| 66 } | 68 } |
| 67 } | 69 } |
| 68 | 70 |
| 69 TEST(EventTest, RepeatedClick) { | 71 TEST(EventTest, RepeatedClick) { |
| 70 const gfx::Point origin(0, 0); | 72 const gfx::Point origin(0, 0); |
| 71 MouseEvent mouse_ev1(ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), 0, | 73 MouseEvent mouse_ev1( |
| 72 0); | 74 ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), 0, 0, |
| 73 MouseEvent mouse_ev2(ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), 0, | 75 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE)); |
| 74 0); | 76 MouseEvent mouse_ev2( |
| 77 ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), 0, 0, |
| 78 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE)); |
| 75 LocatedEventTestApi test_ev1(&mouse_ev1); | 79 LocatedEventTestApi test_ev1(&mouse_ev1); |
| 76 LocatedEventTestApi test_ev2(&mouse_ev2); | 80 LocatedEventTestApi test_ev2(&mouse_ev2); |
| 77 | 81 |
| 78 base::TimeDelta start = base::TimeDelta::FromMilliseconds(0); | 82 base::TimeDelta start = base::TimeDelta::FromMilliseconds(0); |
| 79 base::TimeDelta soon = start + base::TimeDelta::FromMilliseconds(1); | 83 base::TimeDelta soon = start + base::TimeDelta::FromMilliseconds(1); |
| 80 base::TimeDelta later = start + base::TimeDelta::FromMilliseconds(1000); | 84 base::TimeDelta later = start + base::TimeDelta::FromMilliseconds(1000); |
| 81 | 85 |
| 82 // Same event. | 86 // Same event. |
| 83 test_ev1.set_location(gfx::Point(0, 0)); | 87 test_ev1.set_location(gfx::Point(0, 0)); |
| 84 test_ev2.set_location(gfx::Point(1, 0)); | 88 test_ev2.set_location(gfx::Point(1, 0)); |
| (...skipping 29 matching lines...) Expand all Loading... |
| 114 // double click if a release event was seen for the previous click. This | 118 // double click if a release event was seen for the previous click. This |
| 115 // prevents the same PRESSED event from being processed twice: | 119 // prevents the same PRESSED event from being processed twice: |
| 116 // http://crbug.com/389162 | 120 // http://crbug.com/389162 |
| 117 TEST(EventTest, DoubleClickRequiresRelease) { | 121 TEST(EventTest, DoubleClickRequiresRelease) { |
| 118 const gfx::Point origin1(0, 0); | 122 const gfx::Point origin1(0, 0); |
| 119 const gfx::Point origin2(100, 0); | 123 const gfx::Point origin2(100, 0); |
| 120 scoped_ptr<MouseEvent> ev; | 124 scoped_ptr<MouseEvent> ev; |
| 121 base::TimeDelta start = base::TimeDelta::FromMilliseconds(0); | 125 base::TimeDelta start = base::TimeDelta::FromMilliseconds(0); |
| 122 base::TimeDelta soon = start + base::TimeDelta::FromMilliseconds(1); | 126 base::TimeDelta soon = start + base::TimeDelta::FromMilliseconds(1); |
| 123 | 127 |
| 124 ev.reset(new MouseEvent(ET_MOUSE_PRESSED, origin1, origin1, EventTimeForNow(), | 128 ev.reset(new MouseEvent( |
| 125 0, 0)); | 129 ET_MOUSE_PRESSED, origin1, origin1, EventTimeForNow(), 0, 0, |
| 130 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE))); |
| 126 ev->set_time_stamp(start); | 131 ev->set_time_stamp(start); |
| 127 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); | 132 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); |
| 128 ev.reset(new MouseEvent(ET_MOUSE_PRESSED, origin1, origin1, EventTimeForNow(), | 133 ev.reset(new MouseEvent( |
| 129 0, 0)); | 134 ET_MOUSE_PRESSED, origin1, origin1, EventTimeForNow(), 0, 0, |
| 135 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE))); |
| 130 ev->set_time_stamp(start); | 136 ev->set_time_stamp(start); |
| 131 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); | 137 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); |
| 132 | 138 |
| 133 ev.reset(new MouseEvent(ET_MOUSE_PRESSED, origin2, origin2, EventTimeForNow(), | 139 ev.reset(new MouseEvent( |
| 134 0, 0)); | 140 ET_MOUSE_PRESSED, origin2, origin2, EventTimeForNow(), 0, 0, |
| 141 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE))); |
| 135 ev->set_time_stamp(start); | 142 ev->set_time_stamp(start); |
| 136 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); | 143 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); |
| 137 ev.reset(new MouseEvent(ET_MOUSE_RELEASED, origin2, origin2, | 144 ev.reset(new MouseEvent( |
| 138 EventTimeForNow(), 0, 0)); | 145 ET_MOUSE_RELEASED, origin2, origin2, EventTimeForNow(), 0, 0, |
| 146 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE))); |
| 139 ev->set_time_stamp(start); | 147 ev->set_time_stamp(start); |
| 140 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); | 148 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); |
| 141 ev.reset(new MouseEvent(ET_MOUSE_PRESSED, origin2, origin2, EventTimeForNow(), | 149 ev.reset(new MouseEvent( |
| 142 0, 0)); | 150 ET_MOUSE_PRESSED, origin2, origin2, EventTimeForNow(), 0, 0, |
| 151 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE))); |
| 143 ev->set_time_stamp(soon); | 152 ev->set_time_stamp(soon); |
| 144 EXPECT_EQ(2, MouseEvent::GetRepeatCount(*ev)); | 153 EXPECT_EQ(2, MouseEvent::GetRepeatCount(*ev)); |
| 145 ev.reset(new MouseEvent(ET_MOUSE_RELEASED, origin2, origin2, | 154 ev.reset(new MouseEvent( |
| 146 EventTimeForNow(), 0, 0)); | 155 ET_MOUSE_RELEASED, origin2, origin2, EventTimeForNow(), 0, 0, |
| 156 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE))); |
| 147 ev->set_time_stamp(soon); | 157 ev->set_time_stamp(soon); |
| 148 EXPECT_EQ(2, MouseEvent::GetRepeatCount(*ev)); | 158 EXPECT_EQ(2, MouseEvent::GetRepeatCount(*ev)); |
| 149 MouseEvent::ResetLastClickForTest(); | 159 MouseEvent::ResetLastClickForTest(); |
| 150 } | 160 } |
| 151 | 161 |
| 152 // Tests that clicking right and then left clicking does not generate a double | 162 // Tests that clicking right and then left clicking does not generate a double |
| 153 // click. | 163 // click. |
| 154 TEST(EventTest, SingleClickRightLeft) { | 164 TEST(EventTest, SingleClickRightLeft) { |
| 155 const gfx::Point origin(0, 0); | 165 const gfx::Point origin(0, 0); |
| 156 scoped_ptr<MouseEvent> ev; | 166 scoped_ptr<MouseEvent> ev; |
| 157 base::TimeDelta start = base::TimeDelta::FromMilliseconds(0); | 167 base::TimeDelta start = base::TimeDelta::FromMilliseconds(0); |
| 158 base::TimeDelta soon = start + base::TimeDelta::FromMilliseconds(1); | 168 base::TimeDelta soon = start + base::TimeDelta::FromMilliseconds(1); |
| 159 | 169 |
| 160 ev.reset(new MouseEvent(ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), | 170 ev.reset(new MouseEvent( |
| 161 ui::EF_RIGHT_MOUSE_BUTTON, | 171 ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), |
| 162 ui::EF_RIGHT_MOUSE_BUTTON)); | 172 ui::EF_RIGHT_MOUSE_BUTTON, ui::EF_RIGHT_MOUSE_BUTTON, |
| 173 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE))); |
| 163 ev->set_time_stamp(start); | 174 ev->set_time_stamp(start); |
| 164 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); | 175 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); |
| 165 ev.reset(new MouseEvent(ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), | 176 ev.reset(new MouseEvent( |
| 166 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); | 177 ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), |
| 178 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON, |
| 179 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE))); |
| 167 ev->set_time_stamp(start); | 180 ev->set_time_stamp(start); |
| 168 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); | 181 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); |
| 169 ev.reset(new MouseEvent(ET_MOUSE_RELEASED, origin, origin, EventTimeForNow(), | 182 ev.reset(new MouseEvent( |
| 170 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); | 183 ET_MOUSE_RELEASED, origin, origin, EventTimeForNow(), |
| 184 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON, |
| 185 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE))); |
| 171 ev->set_time_stamp(start); | 186 ev->set_time_stamp(start); |
| 172 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); | 187 EXPECT_EQ(1, MouseEvent::GetRepeatCount(*ev)); |
| 173 ev.reset(new MouseEvent(ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), | 188 ev.reset(new MouseEvent( |
| 174 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)); | 189 ET_MOUSE_PRESSED, origin, origin, EventTimeForNow(), |
| 190 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON, |
| 191 ui::PointerEventDetails(ui::EventPointerType::POINTER_TYPE_MOUSE))); |
| 175 ev->set_time_stamp(soon); | 192 ev->set_time_stamp(soon); |
| 176 EXPECT_EQ(2, MouseEvent::GetRepeatCount(*ev)); | 193 EXPECT_EQ(2, MouseEvent::GetRepeatCount(*ev)); |
| 177 MouseEvent::ResetLastClickForTest(); | 194 MouseEvent::ResetLastClickForTest(); |
| 178 } | 195 } |
| 179 | 196 |
| 180 TEST(EventTest, KeyEvent) { | 197 TEST(EventTest, KeyEvent) { |
| 181 static const struct { | 198 static const struct { |
| 182 KeyboardCode key_code; | 199 KeyboardCode key_code; |
| 183 int flags; | 200 int flags; |
| 184 uint16 character; | 201 uint16 character; |
| (...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 540 } | 557 } |
| 541 #endif | 558 #endif |
| 542 } | 559 } |
| 543 #endif // USE_X11 || OS_WIN | 560 #endif // USE_X11 || OS_WIN |
| 544 | 561 |
| 545 TEST(EventTest, TouchEventRadiusDefaultsToOtherAxis) { | 562 TEST(EventTest, TouchEventRadiusDefaultsToOtherAxis) { |
| 546 const base::TimeDelta time = base::TimeDelta::FromMilliseconds(0); | 563 const base::TimeDelta time = base::TimeDelta::FromMilliseconds(0); |
| 547 const float non_zero_length1 = 30; | 564 const float non_zero_length1 = 30; |
| 548 const float non_zero_length2 = 46; | 565 const float non_zero_length2 = 46; |
| 549 | 566 |
| 550 TouchEvent event1(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, | 567 TouchEvent event1(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, 0, |
| 551 non_zero_length1, 0, 0, 0); | 568 PointerEventDetails(EventPointerType::POINTER_TYPE_TOUCH, |
| 569 non_zero_length1, 0, 0, 0, 0)); |
| 552 EXPECT_EQ(non_zero_length1, event1.radius_x()); | 570 EXPECT_EQ(non_zero_length1, event1.radius_x()); |
| 553 EXPECT_EQ(non_zero_length1, event1.radius_y()); | 571 EXPECT_EQ(non_zero_length1, event1.radius_y()); |
| 554 | 572 |
| 555 TouchEvent event2(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, | 573 TouchEvent event2(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, 0, |
| 556 0, non_zero_length2, 0, 0); | 574 PointerEventDetails(EventPointerType::POINTER_TYPE_TOUCH, 0, |
| 575 non_zero_length2, 0, 0, 0)); |
| 557 EXPECT_EQ(non_zero_length2, event2.radius_x()); | 576 EXPECT_EQ(non_zero_length2, event2.radius_x()); |
| 558 EXPECT_EQ(non_zero_length2, event2.radius_y()); | 577 EXPECT_EQ(non_zero_length2, event2.radius_y()); |
| 559 } | 578 } |
| 560 | 579 |
| 561 TEST(EventTest, TouchEventRotationAngleFixing) { | 580 TEST(EventTest, TouchEventRotationAngleFixing) { |
| 562 const base::TimeDelta time = base::TimeDelta::FromMilliseconds(0); | 581 const base::TimeDelta time = base::TimeDelta::FromMilliseconds(0); |
| 563 const float radius_x = 20; | 582 const float radius_x = 20; |
| 564 const float radius_y = 10; | 583 const float radius_y = 10; |
| 565 | 584 |
| 566 { | 585 { |
| 567 const float angle_in_range = 0; | 586 const float angle_in_range = 0; |
| 568 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, | 587 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, |
| 569 radius_x, radius_y, angle_in_range, 0); | 588 angle_in_range, |
| 589 PointerEventDetails(EventPointerType::POINTER_TYPE_TOUCH, |
| 590 radius_x, radius_y, 0, 0, 0)); |
| 570 EXPECT_FLOAT_EQ(angle_in_range, event.rotation_angle()); | 591 EXPECT_FLOAT_EQ(angle_in_range, event.rotation_angle()); |
| 571 } | 592 } |
| 572 | 593 |
| 573 { | 594 { |
| 574 const float angle_in_range = 179.9f; | 595 const float angle_in_range = 179.9f; |
| 575 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, | 596 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, |
| 576 radius_x, radius_y, angle_in_range, 0); | 597 angle_in_range, |
| 598 PointerEventDetails(EventPointerType::POINTER_TYPE_TOUCH, |
| 599 radius_x, radius_y, 0, 0, 0)); |
| 577 EXPECT_FLOAT_EQ(angle_in_range, event.rotation_angle()); | 600 EXPECT_FLOAT_EQ(angle_in_range, event.rotation_angle()); |
| 578 } | 601 } |
| 579 | 602 |
| 580 { | 603 { |
| 581 const float angle_negative = -0.1f; | 604 const float angle_negative = -0.1f; |
| 582 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, | 605 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, |
| 583 radius_x, radius_y, angle_negative, 0); | 606 angle_negative, |
| 607 PointerEventDetails(EventPointerType::POINTER_TYPE_TOUCH, |
| 608 radius_x, radius_y, 0, 0, 0)); |
| 584 EXPECT_FLOAT_EQ(180 - 0.1f, event.rotation_angle()); | 609 EXPECT_FLOAT_EQ(180 - 0.1f, event.rotation_angle()); |
| 585 } | 610 } |
| 586 | 611 |
| 587 { | 612 { |
| 588 const float angle_negative = -200; | 613 const float angle_negative = -200; |
| 589 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, | 614 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, |
| 590 radius_x, radius_y, angle_negative, 0); | 615 angle_negative, |
| 616 PointerEventDetails(EventPointerType::POINTER_TYPE_TOUCH, |
| 617 radius_x, radius_y, 0, 0, 0)); |
| 591 EXPECT_FLOAT_EQ(360 - 200, event.rotation_angle()); | 618 EXPECT_FLOAT_EQ(360 - 200, event.rotation_angle()); |
| 592 } | 619 } |
| 593 | 620 |
| 594 { | 621 { |
| 595 const float angle_too_big = 180; | 622 const float angle_too_big = 180; |
| 596 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, | 623 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, |
| 597 radius_x, radius_y, angle_too_big, 0); | 624 angle_too_big, |
| 625 PointerEventDetails(EventPointerType::POINTER_TYPE_TOUCH, |
| 626 radius_x, radius_y, 0, 0, 0)); |
| 598 EXPECT_FLOAT_EQ(0, event.rotation_angle()); | 627 EXPECT_FLOAT_EQ(0, event.rotation_angle()); |
| 599 } | 628 } |
| 600 | 629 |
| 601 { | 630 { |
| 602 const float angle_too_big = 400; | 631 const float angle_too_big = 400; |
| 603 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, | 632 TouchEvent event(ui::ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, time, |
| 604 radius_x, radius_y, angle_too_big, 0); | 633 angle_too_big, |
| 634 PointerEventDetails(EventPointerType::POINTER_TYPE_TOUCH, |
| 635 radius_x, radius_y, 0, 0, 0)); |
| 605 EXPECT_FLOAT_EQ(400 - 360, event.rotation_angle()); | 636 EXPECT_FLOAT_EQ(400 - 360, event.rotation_angle()); |
| 606 } | 637 } |
| 607 } | 638 } |
| 608 | 639 |
| 640 TEST(EventTest, PointerEventDetailsTouch) { |
| 641 ui::TouchEvent touch_event_plain( |
| 642 ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, ui::EventTimeForNow(), 0.0f, |
| 643 PointerEventDetails(EventPointerType::POINTER_TYPE_TOUCH)); |
| 644 |
| 645 EXPECT_EQ(EventPointerType::POINTER_TYPE_TOUCH, |
| 646 touch_event_plain.pointer_details().pointer_type()); |
| 647 EXPECT_EQ(0.0f, touch_event_plain.pointer_details().radius_x()); |
| 648 EXPECT_EQ(0.0f, touch_event_plain.pointer_details().radius_y()); |
| 649 EXPECT_EQ(0.0f, touch_event_plain.pointer_details().force()); |
| 650 EXPECT_EQ(0.0f, touch_event_plain.pointer_details().tilt_x()); |
| 651 EXPECT_EQ(0.0f, touch_event_plain.pointer_details().tilt_y()); |
| 652 |
| 653 EXPECT_EQ(0.0f, touch_event_plain.radius_x()); |
| 654 EXPECT_EQ(0.0f, touch_event_plain.radius_y()); |
| 655 EXPECT_EQ(0.0f, touch_event_plain.force()); |
| 656 |
| 657 ui::TouchEvent touch_event_with_details( |
| 658 ET_TOUCH_PRESSED, gfx::Point(0, 0), 0, 0, ui::EventTimeForNow(), 0.0f, |
| 659 PointerEventDetails(EventPointerType::POINTER_TYPE_TOUCH, 10.0f, 5.0f, |
| 660 15.0f, 90.0f, -90.0f)); |
| 661 |
| 662 EXPECT_EQ(EventPointerType::POINTER_TYPE_TOUCH, |
| 663 touch_event_with_details.pointer_details().pointer_type()); |
| 664 EXPECT_EQ(10.0f, touch_event_with_details.pointer_details().radius_x()); |
| 665 EXPECT_EQ(5.0f, touch_event_with_details.pointer_details().radius_y()); |
| 666 EXPECT_EQ(15.0f, touch_event_with_details.pointer_details().force()); |
| 667 EXPECT_EQ(90.0f, touch_event_with_details.pointer_details().tilt_x()); |
| 668 EXPECT_EQ(-90.0f, touch_event_with_details.pointer_details().tilt_y()); |
| 669 |
| 670 EXPECT_EQ(10.0f, touch_event_with_details.radius_x()); |
| 671 EXPECT_EQ(5.0f, touch_event_with_details.radius_y()); |
| 672 EXPECT_EQ(15.0f, touch_event_with_details.force()); |
| 673 |
| 674 ui::TouchEvent touch_event_copy(touch_event_with_details); |
| 675 EXPECT_EQ(EventPointerType::POINTER_TYPE_TOUCH, |
| 676 touch_event_copy.pointer_details().pointer_type()); |
| 677 EXPECT_EQ(10.0f, touch_event_copy.pointer_details().radius_x()); |
| 678 EXPECT_EQ(5.0f, touch_event_copy.pointer_details().radius_y()); |
| 679 EXPECT_EQ(15.0f, touch_event_copy.pointer_details().force()); |
| 680 EXPECT_EQ(90.0f, touch_event_copy.pointer_details().tilt_x()); |
| 681 EXPECT_EQ(-90.0f, touch_event_copy.pointer_details().tilt_y()); |
| 682 } |
| 683 |
| 684 TEST(EventTest, PointerEventDetailsMouse) { |
| 685 ui::MouseEvent mouse_event( |
| 686 ET_MOUSE_PRESSED, gfx::PointF(0, 0), gfx::PointF(0, 0), |
| 687 ui::EventTimeForNow(), 0, 0, |
| 688 PointerEventDetails(EventPointerType::POINTER_TYPE_MOUSE)); |
| 689 |
| 690 EXPECT_EQ(EventPointerType::POINTER_TYPE_MOUSE, |
| 691 mouse_event.pointer_details().pointer_type()); |
| 692 EXPECT_EQ(0.0f, mouse_event.pointer_details().radius_x()); |
| 693 EXPECT_EQ(0.0f, mouse_event.pointer_details().radius_y()); |
| 694 EXPECT_EQ(0.0f, mouse_event.pointer_details().force()); |
| 695 EXPECT_EQ(0.0f, mouse_event.pointer_details().tilt_x()); |
| 696 EXPECT_EQ(0.0f, mouse_event.pointer_details().tilt_y()); |
| 697 |
| 698 ui::MouseEvent mouse_event_copy(mouse_event); |
| 699 EXPECT_EQ(EventPointerType::POINTER_TYPE_MOUSE, |
| 700 mouse_event_copy.pointer_details().pointer_type()); |
| 701 EXPECT_EQ(0.0f, mouse_event_copy.pointer_details().radius_x()); |
| 702 EXPECT_EQ(0.0f, mouse_event_copy.pointer_details().radius_y()); |
| 703 EXPECT_EQ(0.0f, mouse_event_copy.pointer_details().force()); |
| 704 EXPECT_EQ(0.0f, mouse_event_copy.pointer_details().tilt_x()); |
| 705 EXPECT_EQ(0.0f, mouse_event_copy.pointer_details().tilt_y()); |
| 706 } |
| 707 |
| 708 TEST(EventTest, PointerEventDetailsStylus) { |
| 709 ui::MouseEvent stylus_event( |
| 710 ET_MOUSE_PRESSED, gfx::PointF(0, 0), gfx::PointF(0, 0), |
| 711 ui::EventTimeForNow(), 0, 0, |
| 712 PointerEventDetails(EventPointerType::POINTER_TYPE_PEN, 5.0f, 5.0f, 10.0f, |
| 713 -90.0f, 90.0f)); |
| 714 |
| 715 EXPECT_EQ(EventPointerType::POINTER_TYPE_PEN, |
| 716 stylus_event.pointer_details().pointer_type()); |
| 717 EXPECT_EQ(5.0f, stylus_event.pointer_details().radius_x()); |
| 718 EXPECT_EQ(5.0f, stylus_event.pointer_details().radius_y()); |
| 719 EXPECT_EQ(10.0f, stylus_event.pointer_details().force()); |
| 720 EXPECT_EQ(-90.0f, stylus_event.pointer_details().tilt_x()); |
| 721 EXPECT_EQ(90.0f, stylus_event.pointer_details().tilt_y()); |
| 722 |
| 723 ui::MouseEvent stylus_event_copy(stylus_event); |
| 724 EXPECT_EQ(EventPointerType::POINTER_TYPE_PEN, |
| 725 stylus_event_copy.pointer_details().pointer_type()); |
| 726 EXPECT_EQ(5.0f, stylus_event_copy.pointer_details().radius_x()); |
| 727 EXPECT_EQ(5.0f, stylus_event_copy.pointer_details().radius_y()); |
| 728 EXPECT_EQ(10.0f, stylus_event_copy.pointer_details().force()); |
| 729 EXPECT_EQ(-90.0f, stylus_event_copy.pointer_details().tilt_x()); |
| 730 EXPECT_EQ(90.0f, stylus_event_copy.pointer_details().tilt_y()); |
| 731 } |
| 732 |
| 609 } // namespace ui | 733 } // namespace ui |
| OLD | NEW |