21 std::vector<FlutterPointerEvent> pointer_events;
25 size_t events_count) {
26 for (
size_t i = 0;
i < events_count;
i++) {
27 pointer_events.push_back(events[
i]);
36 GDK_DEVICE(g_object_new(gdk_wayland_device_get_type(),
"input-source",
37 GDK_SOURCE_MOUSE,
nullptr));
38 GdkEventScroll*
event =
39 reinterpret_cast<GdkEventScroll*
>(gdk_event_new(GDK_SCROLL));
43 event->device = mouse;
44 event->direction = GDK_SCROLL_UP;
46 EXPECT_EQ(pointer_events.size(), 1u);
47 EXPECT_EQ(pointer_events[0].
x, 4.0);
48 EXPECT_EQ(pointer_events[0].
y, 8.0);
50 EXPECT_EQ(pointer_events[0].timestamp,
52 EXPECT_EQ(pointer_events[0].scroll_delta_x, 0);
53 EXPECT_EQ(pointer_events[0].scroll_delta_y, 53 * -1.0);
54 event->direction = GDK_SCROLL_DOWN;
56 EXPECT_EQ(pointer_events.size(), 2u);
57 EXPECT_EQ(pointer_events[1].
x, 4.0);
58 EXPECT_EQ(pointer_events[1].
y, 8.0);
60 EXPECT_EQ(pointer_events[1].timestamp,
62 EXPECT_EQ(pointer_events[1].scroll_delta_x, 0);
63 EXPECT_EQ(pointer_events[1].scroll_delta_y, 53 * 1.0);
64 event->direction = GDK_SCROLL_LEFT;
66 EXPECT_EQ(pointer_events.size(), 3u);
67 EXPECT_EQ(pointer_events[2].
x, 4.0);
68 EXPECT_EQ(pointer_events[2].
y, 8.0);
70 EXPECT_EQ(pointer_events[2].timestamp,
72 EXPECT_EQ(pointer_events[2].scroll_delta_x, 53 * -1.0);
73 EXPECT_EQ(pointer_events[2].scroll_delta_y, 0);
74 event->direction = GDK_SCROLL_RIGHT;
76 EXPECT_EQ(pointer_events.size(), 4u);
77 EXPECT_EQ(pointer_events[3].
x, 4.0);
78 EXPECT_EQ(pointer_events[3].
y, 8.0);
80 EXPECT_EQ(pointer_events[3].timestamp,
82 EXPECT_EQ(pointer_events[3].scroll_delta_x, 53 * 1.0);
83 EXPECT_EQ(pointer_events[3].scroll_delta_y, 0);
89 std::vector<FlutterPointerEvent> pointer_events;
93 size_t events_count) {
94 for (
size_t i = 0;
i < events_count;
i++) {
95 pointer_events.push_back(events[
i]);
104 GDK_DEVICE(g_object_new(gdk_wayland_device_get_type(),
"input-source",
105 GDK_SOURCE_MOUSE,
nullptr));
106 GdkEventScroll*
event =
107 reinterpret_cast<GdkEventScroll*
>(gdk_event_new(GDK_SCROLL));
111 event->delta_x = 1.0;
112 event->delta_y = 2.0;
113 event->device = mouse;
114 event->direction = GDK_SCROLL_SMOOTH;
116 EXPECT_EQ(pointer_events.size(), 1u);
117 EXPECT_EQ(pointer_events[0].
x, 4.0);
118 EXPECT_EQ(pointer_events[0].
y, 8.0);
120 EXPECT_EQ(pointer_events[0].timestamp,
122 EXPECT_EQ(pointer_events[0].scroll_delta_x, 53 * 1.0);
123 EXPECT_EQ(pointer_events[0].scroll_delta_y, 53 * 2.0);
129 std::vector<FlutterPointerEvent> pointer_events;
133 size_t events_count) {
134 for (
size_t i = 0;
i < events_count;
i++) {
135 pointer_events.push_back(events[
i]);
143 GdkDevice* touchpad =
144 GDK_DEVICE(g_object_new(gdk_wayland_device_get_type(),
"input-source",
145 GDK_SOURCE_TOUCHPAD,
nullptr));
146 GdkEventScroll*
event =
147 reinterpret_cast<GdkEventScroll*
>(gdk_event_new(GDK_SCROLL));
151 event->delta_x = 1.0;
152 event->delta_y = 2.0;
153 event->device = touchpad;
154 event->direction = GDK_SCROLL_SMOOTH;
156 EXPECT_EQ(pointer_events.size(), 2u);
157 EXPECT_EQ(pointer_events[0].
x, 4.0);
158 EXPECT_EQ(pointer_events[0].
y, 8.0);
159 EXPECT_EQ(pointer_events[0].timestamp,
162 EXPECT_EQ(pointer_events[1].
x, 4.0);
163 EXPECT_EQ(pointer_events[1].
y, 8.0);
164 EXPECT_EQ(pointer_events[1].timestamp,
167 EXPECT_EQ(pointer_events[1].pan_x, 53 * -1.0);
168 EXPECT_EQ(pointer_events[1].pan_y, 53 * -2.0);
169 EXPECT_EQ(pointer_events[1].scale, 1.0);
170 EXPECT_EQ(pointer_events[1].rotation, 0.0);
172 EXPECT_EQ(pointer_events.size(), 3u);
173 EXPECT_EQ(pointer_events[2].
x, 4.0);
174 EXPECT_EQ(pointer_events[2].
y, 8.0);
175 EXPECT_EQ(pointer_events[2].timestamp,
178 EXPECT_EQ(pointer_events[2].pan_x, 53 * -2.0);
179 EXPECT_EQ(pointer_events[2].pan_y, 53 * -4.0);
180 EXPECT_EQ(pointer_events[2].scale, 1.0);
181 EXPECT_EQ(pointer_events[2].rotation, 0.0);
182 event->is_stop =
true;
184 EXPECT_EQ(pointer_events.size(), 4u);
185 EXPECT_EQ(pointer_events[3].
x, 4.0);
186 EXPECT_EQ(pointer_events[3].
y, 8.0);
187 EXPECT_EQ(pointer_events[3].timestamp,
195 std::vector<FlutterPointerEvent> pointer_events;
199 size_t events_count) {
200 for (
size_t i = 0;
i < events_count;
i++) {
201 pointer_events.push_back(events[
i]);
209 size_t time_start = g_get_real_time();
211 EXPECT_EQ(pointer_events.size(), 1u);
212 EXPECT_EQ(pointer_events[0].
x, 0);
213 EXPECT_EQ(pointer_events[0].
y, 0);
215 EXPECT_GE(pointer_events[0].timestamp, time_start);
217 EXPECT_EQ(pointer_events.size(), 2u);
218 EXPECT_EQ(pointer_events[1].
x, 0);
219 EXPECT_EQ(pointer_events[1].
y, 0);
221 EXPECT_GE(pointer_events[1].timestamp, pointer_events[0].timestamp);
222 EXPECT_EQ(pointer_events[1].pan_x, 0);
223 EXPECT_EQ(pointer_events[1].pan_y, 0);
224 EXPECT_EQ(pointer_events[1].scale, 1.1);
225 EXPECT_EQ(pointer_events[1].rotation, 0);
227 EXPECT_EQ(pointer_events.size(), 3u);
228 EXPECT_EQ(pointer_events[2].
x, 0);
229 EXPECT_EQ(pointer_events[2].
y, 0);
231 EXPECT_GE(pointer_events[2].timestamp, pointer_events[1].timestamp);
237 std::vector<FlutterPointerEvent> pointer_events;
241 size_t events_count) {
242 for (
size_t i = 0;
i < events_count;
i++) {
243 pointer_events.push_back(events[
i]);
251 size_t time_start = g_get_real_time();
253 EXPECT_EQ(pointer_events.size(), 1u);
254 EXPECT_EQ(pointer_events[0].
x, 0);
255 EXPECT_EQ(pointer_events[0].
y, 0);
257 EXPECT_GE(pointer_events[0].timestamp, time_start);
259 EXPECT_EQ(pointer_events.size(), 2u);
260 EXPECT_EQ(pointer_events[1].
x, 0);
261 EXPECT_EQ(pointer_events[1].
y, 0);
263 EXPECT_GE(pointer_events[1].timestamp, pointer_events[0].timestamp);
264 EXPECT_EQ(pointer_events[1].pan_x, 0);
265 EXPECT_EQ(pointer_events[1].pan_y, 0);
266 EXPECT_EQ(pointer_events[1].scale, 1.0);
267 EXPECT_EQ(pointer_events[1].rotation, 0.5);
269 EXPECT_EQ(pointer_events.size(), 3u);
270 EXPECT_EQ(pointer_events[2].
x, 0);
271 EXPECT_EQ(pointer_events[2].
y, 0);
273 EXPECT_GE(pointer_events[2].timestamp, pointer_events[1].timestamp);
279 std::vector<FlutterPointerEvent> pointer_events;
283 size_t events_count) {
284 for (
size_t i = 0;
i < events_count;
i++) {
285 pointer_events.push_back(events[
i]);
293 size_t time_start = g_get_real_time();
295 EXPECT_EQ(pointer_events.size(), 1u);
296 EXPECT_EQ(pointer_events[0].
x, 0);
297 EXPECT_EQ(pointer_events[0].
y, 0);
299 EXPECT_GE(pointer_events[0].timestamp, time_start);
301 EXPECT_EQ(pointer_events.size(), 2u);
302 EXPECT_EQ(pointer_events[1].
x, 0);
303 EXPECT_EQ(pointer_events[1].
y, 0);
305 EXPECT_GE(pointer_events[1].timestamp, pointer_events[0].timestamp);
306 EXPECT_EQ(pointer_events[1].pan_x, 0);
307 EXPECT_EQ(pointer_events[1].pan_y, 0);
308 EXPECT_EQ(pointer_events[1].scale, 1.1);
309 EXPECT_EQ(pointer_events[1].rotation, 0);
311 EXPECT_EQ(pointer_events.size(), 2u);
313 EXPECT_EQ(pointer_events.size(), 3u);
314 EXPECT_EQ(pointer_events[2].
x, 0);
315 EXPECT_EQ(pointer_events[2].
y, 0);
317 EXPECT_GE(pointer_events[2].timestamp, pointer_events[1].timestamp);
318 EXPECT_EQ(pointer_events[2].pan_x, 0);
319 EXPECT_EQ(pointer_events[2].pan_y, 0);
320 EXPECT_EQ(pointer_events[2].scale, 1.1);
321 EXPECT_EQ(pointer_events[2].rotation, 0.5);
324 EXPECT_EQ(pointer_events.size(), 3u);
326 EXPECT_EQ(pointer_events.size(), 4u);
327 EXPECT_EQ(pointer_events[3].
x, 0);
328 EXPECT_EQ(pointer_events[3].
y, 0);
330 EXPECT_GE(pointer_events[3].timestamp, pointer_events[2].timestamp);
338 std::vector<FlutterPointerEvent> pointer_events;
342 size_t events_count) {
343 for (
size_t i = 0;
i < events_count;
i++) {
344 pointer_events.push_back(events[
i]);
352 size_t time_start = g_get_real_time();
354 EXPECT_EQ(pointer_events.size(), 1u);
355 EXPECT_EQ(pointer_events[0].
x, 0);
356 EXPECT_EQ(pointer_events[0].
y, 0);
358 EXPECT_GE(pointer_events[0].timestamp, time_start);
360 EXPECT_EQ(pointer_events.size(), 2u);
361 EXPECT_EQ(pointer_events[1].
x, 0);
362 EXPECT_EQ(pointer_events[1].
y, 0);
364 EXPECT_GE(pointer_events[1].timestamp, pointer_events[0].timestamp);
365 EXPECT_EQ(pointer_events[1].pan_x, 0);
366 EXPECT_EQ(pointer_events[1].pan_y, 0);
367 EXPECT_EQ(pointer_events[1].scale, 1.1);
368 EXPECT_EQ(pointer_events[1].rotation, 0);
370 EXPECT_EQ(pointer_events.size(), 2u);
372 EXPECT_EQ(pointer_events.size(), 3u);
373 EXPECT_EQ(pointer_events[2].
x, 0);
374 EXPECT_EQ(pointer_events[2].
y, 0);
376 EXPECT_GE(pointer_events[2].timestamp, pointer_events[1].timestamp);
377 EXPECT_EQ(pointer_events[2].pan_x, 0);
378 EXPECT_EQ(pointer_events[2].pan_y, 0);
379 EXPECT_EQ(pointer_events[2].scale, 1.1);
380 EXPECT_EQ(pointer_events[2].rotation, 0.5);
382 EXPECT_EQ(pointer_events.size(), 3u);
384 EXPECT_EQ(pointer_events.size(), 4u);
385 EXPECT_EQ(pointer_events[3].
x, 0);
386 EXPECT_EQ(pointer_events[3].
y, 0);
388 EXPECT_GE(pointer_events[3].timestamp, pointer_events[2].timestamp);
389 EXPECT_EQ(pointer_events[3].pan_x, 0);
390 EXPECT_EQ(pointer_events[3].pan_y, 0);
391 EXPECT_EQ(pointer_events[3].scale, 1.1);
392 EXPECT_EQ(pointer_events[3].rotation, 1.0);
394 EXPECT_EQ(pointer_events.size(), 5u);
395 EXPECT_EQ(pointer_events[4].
x, 0);
396 EXPECT_EQ(pointer_events[4].
y, 0);
398 EXPECT_GE(pointer_events[4].timestamp, pointer_events[3].timestamp);