OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 // Needed on Windows to get |M_PI| from <cmath>. | 5 // Needed on Windows to get |M_PI| from <cmath>. |
6 #ifdef _WIN32 | 6 #ifdef _WIN32 |
7 #define _USE_MATH_DEFINES | 7 #define _USE_MATH_DEFINES |
8 #endif | 8 #endif |
9 | 9 |
10 #include <cmath> | 10 #include <cmath> |
11 | 11 |
12 #include "content/browser/renderer_host/input/web_input_event_util.h" | 12 #include "content/browser/renderer_host/input/web_input_event_util.h" |
13 #include "content/common/input/web_input_event_traits.h" | 13 #include "content/common/input/web_input_event_traits.h" |
14 #include "testing/gtest/include/gtest/gtest.h" | 14 #include "testing/gtest/include/gtest/gtest.h" |
| 15 #include "ui/events/blink/blink_event_util.h" |
15 #include "ui/events/event_constants.h" | 16 #include "ui/events/event_constants.h" |
16 #include "ui/events/gesture_detection/gesture_event_data.h" | 17 #include "ui/events/gesture_detection/gesture_event_data.h" |
17 #include "ui/events/gesture_detection/motion_event_generic.h" | 18 #include "ui/events/gesture_detection/motion_event_generic.h" |
18 #include "ui/events/gesture_event_details.h" | 19 #include "ui/events/gesture_event_details.h" |
19 #include "ui/gfx/geometry/safe_integer_conversions.h" | 20 #include "ui/gfx/geometry/safe_integer_conversions.h" |
20 | 21 |
21 using blink::WebInputEvent; | 22 using blink::WebInputEvent; |
22 using blink::WebTouchEvent; | 23 using blink::WebTouchEvent; |
23 using blink::WebTouchPoint; | 24 using blink::WebTouchPoint; |
24 using ui::MotionEvent; | 25 using ui::MotionEvent; |
(...skipping 24 matching lines...) Expand all Loading... |
49 expected_pointer.state = WebTouchPoint::StatePressed; | 50 expected_pointer.state = WebTouchPoint::StatePressed; |
50 expected_pointer.position = blink::WebFloatPoint(pointer.x, pointer.y); | 51 expected_pointer.position = blink::WebFloatPoint(pointer.x, pointer.y); |
51 expected_pointer.screenPosition = | 52 expected_pointer.screenPosition = |
52 blink::WebFloatPoint(pointer.raw_x, pointer.raw_y); | 53 blink::WebFloatPoint(pointer.raw_x, pointer.raw_y); |
53 expected_pointer.radiusX = pointer.touch_major / 2.f; | 54 expected_pointer.radiusX = pointer.touch_major / 2.f; |
54 expected_pointer.radiusY = pointer.touch_minor / 2.f; | 55 expected_pointer.radiusY = pointer.touch_minor / 2.f; |
55 expected_pointer.rotationAngle = 0.f; | 56 expected_pointer.rotationAngle = 0.f; |
56 expected_pointer.force = pointer.pressure; | 57 expected_pointer.force = pointer.pressure; |
57 expected_event.touches[0] = expected_pointer; | 58 expected_event.touches[0] = expected_pointer; |
58 | 59 |
59 WebTouchEvent actual_event = CreateWebTouchEventFromMotionEvent(event, false); | 60 WebTouchEvent actual_event = |
| 61 ui::CreateWebTouchEventFromMotionEvent(event, false); |
60 EXPECT_EQ(WebInputEventTraits::ToString(expected_event), | 62 EXPECT_EQ(WebInputEventTraits::ToString(expected_event), |
61 WebInputEventTraits::ToString(actual_event)); | 63 WebInputEventTraits::ToString(actual_event)); |
62 } | 64 } |
63 | 65 |
64 TEST(WebInputEventUtilTest, ScrollUpdateConversion) { | 66 TEST(WebInputEventUtilTest, ScrollUpdateConversion) { |
65 int motion_event_id = 0; | 67 int motion_event_id = 0; |
66 MotionEvent::ToolType tool_type = MotionEvent::TOOL_TYPE_UNKNOWN; | 68 MotionEvent::ToolType tool_type = MotionEvent::TOOL_TYPE_UNKNOWN; |
67 base::TimeTicks timestamp = base::TimeTicks::Now(); | 69 base::TimeTicks timestamp = base::TimeTicks::Now(); |
68 gfx::Vector2dF delta(-5.f, 10.f); | 70 gfx::Vector2dF delta(-5.f, 10.f); |
69 gfx::PointF pos(1.f, 2.f); | 71 gfx::PointF pos(1.f, 2.f); |
(...skipping 11 matching lines...) Expand all Loading... |
81 timestamp, | 83 timestamp, |
82 pos.x(), | 84 pos.x(), |
83 pos.y(), | 85 pos.y(), |
84 raw_pos.x(), | 86 raw_pos.x(), |
85 raw_pos.y(), | 87 raw_pos.y(), |
86 touch_points, | 88 touch_points, |
87 rect, | 89 rect, |
88 flags); | 90 flags); |
89 | 91 |
90 blink::WebGestureEvent web_event = | 92 blink::WebGestureEvent web_event = |
91 CreateWebGestureEventFromGestureEventData(event); | 93 ui::CreateWebGestureEventFromGestureEventData(event); |
92 EXPECT_EQ(WebInputEvent::GestureScrollUpdate, web_event.type); | 94 EXPECT_EQ(WebInputEvent::GestureScrollUpdate, web_event.type); |
93 EXPECT_EQ(0, web_event.modifiers); | 95 EXPECT_EQ(0, web_event.modifiers); |
94 EXPECT_EQ((timestamp - base::TimeTicks()).InSecondsF(), | 96 EXPECT_EQ((timestamp - base::TimeTicks()).InSecondsF(), |
95 web_event.timeStampSeconds); | 97 web_event.timeStampSeconds); |
96 EXPECT_EQ(gfx::ToFlooredInt(pos.x()), web_event.x); | 98 EXPECT_EQ(gfx::ToFlooredInt(pos.x()), web_event.x); |
97 EXPECT_EQ(gfx::ToFlooredInt(pos.y()), web_event.y); | 99 EXPECT_EQ(gfx::ToFlooredInt(pos.y()), web_event.y); |
98 EXPECT_EQ(gfx::ToFlooredInt(raw_pos.x()), web_event.globalX); | 100 EXPECT_EQ(gfx::ToFlooredInt(raw_pos.x()), web_event.globalX); |
99 EXPECT_EQ(gfx::ToFlooredInt(raw_pos.y()), web_event.globalY); | 101 EXPECT_EQ(gfx::ToFlooredInt(raw_pos.y()), web_event.globalY); |
100 EXPECT_EQ(blink::WebGestureDeviceTouchscreen, web_event.sourceDevice); | 102 EXPECT_EQ(blink::WebGestureDeviceTouchscreen, web_event.sourceDevice); |
101 EXPECT_EQ(delta.x(), web_event.data.scrollUpdate.deltaX); | 103 EXPECT_EQ(delta.x(), web_event.data.scrollUpdate.deltaX); |
102 EXPECT_EQ(delta.y(), web_event.data.scrollUpdate.deltaY); | 104 EXPECT_EQ(delta.y(), web_event.data.scrollUpdate.deltaY); |
103 EXPECT_TRUE(web_event.data.scrollUpdate.previousUpdateInSequencePrevented); | 105 EXPECT_TRUE(web_event.data.scrollUpdate.previousUpdateInSequencePrevented); |
104 } | 106 } |
105 | 107 |
106 } // namespace content | 108 } // namespace content |
OLD | NEW |