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]);
35 GdkDevice* touchscreen =
36 GDK_DEVICE(g_object_new(gdk_wayland_device_get_type(),
"input-source",
37 GDK_SOURCE_TOUCHSCREEN,
nullptr));
38 GdkEventTouch*
event =
39 reinterpret_cast<GdkEventTouch*
>(gdk_event_new(GDK_TOUCH_BEGIN));
43 event->device = touchscreen;
45 EXPECT_EQ(pointer_events.size(), 2u);
46 EXPECT_EQ(pointer_events[0].
x, 4.0);
47 EXPECT_EQ(pointer_events[0].
y, 8.0);
49 EXPECT_EQ(pointer_events[0].timestamp,
51 EXPECT_EQ(pointer_events[0].phase,
kAdd);
53 EXPECT_EQ(pointer_events[1].
x, 4.0);
54 EXPECT_EQ(pointer_events[1].
y, 8.0);
56 EXPECT_EQ(pointer_events[1].timestamp,
58 EXPECT_EQ(pointer_events[1].phase,
kDown);
60 event->type = GDK_TOUCH_UPDATE;
62 EXPECT_EQ(pointer_events.size(), 3u);
63 EXPECT_EQ(pointer_events[2].
x, 4.0);
64 EXPECT_EQ(pointer_events[2].
y, 8.0);
66 EXPECT_EQ(pointer_events[2].timestamp,
68 EXPECT_EQ(pointer_events[2].phase,
kMove);
70 event->type = GDK_TOUCH_END;
72 EXPECT_EQ(pointer_events.size(), 5u);
73 EXPECT_EQ(pointer_events[3].
x, 4.0);
74 EXPECT_EQ(pointer_events[3].
y, 8.0);
76 EXPECT_EQ(pointer_events[3].timestamp,
78 EXPECT_EQ(pointer_events[3].phase,
kUp);
80 EXPECT_EQ(pointer_events[4].
x, 4.0);
81 EXPECT_EQ(pointer_events[4].
y, 8.0);
83 EXPECT_EQ(pointer_events[4].timestamp,
85 EXPECT_EQ(pointer_events[4].phase,
kRemove);