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 |