17 std::vector<FlutterPointerEvent> pointer_events;
21 size_t events_count) {
22 for (
size_t i = 0;
i < events_count;
i++) {
23 pointer_events.push_back(events[
i]);
35 EXPECT_EQ(pointer_events.size(), 2u);
37 EXPECT_EQ(pointer_events[0].timestamp, 1234000u);
38 EXPECT_EQ(pointer_events[0].
x, 1.0);
39 EXPECT_EQ(pointer_events[0].
y, 2.0);
41 EXPECT_EQ(pointer_events[0].buttons, 0);
42 EXPECT_EQ(pointer_events[0].
view_id, 42);
44 EXPECT_EQ(pointer_events[1].timestamp, 1235000u);
45 EXPECT_EQ(pointer_events[1].
x, 3.0);
46 EXPECT_EQ(pointer_events[1].
y, 4.0);
48 EXPECT_EQ(pointer_events[1].buttons, 0);
49 EXPECT_EQ(pointer_events[1].
view_id, 42);
55 std::vector<FlutterPointerEvent> pointer_events;
59 size_t events_count) {
60 for (
size_t i = 0;
i < events_count;
i++) {
61 pointer_events.push_back(events[
i]);
74 EXPECT_EQ(pointer_events.size(), 1u);
76 EXPECT_EQ(pointer_events[0].timestamp, 1234000u);
77 EXPECT_EQ(pointer_events[0].
x, 1.0);
78 EXPECT_EQ(pointer_events[0].
y, 2.0);
80 EXPECT_EQ(pointer_events[0].buttons, 0);
81 EXPECT_EQ(pointer_events[0].
view_id, 42);
87 std::vector<FlutterPointerEvent> pointer_events;
91 size_t events_count) {
92 for (
size_t i = 0;
i < events_count;
i++) {
93 pointer_events.push_back(events[
i]);
108 EXPECT_EQ(pointer_events.size(), 2u);
110 EXPECT_EQ(pointer_events[0].timestamp, 1234000u);
111 EXPECT_EQ(pointer_events[0].
x, 1.0);
112 EXPECT_EQ(pointer_events[0].
y, 2.0);
114 EXPECT_EQ(pointer_events[0].buttons, 0);
115 EXPECT_EQ(pointer_events[0].
view_id, 42);
117 EXPECT_EQ(pointer_events[1].timestamp, 1235000u);
118 EXPECT_EQ(pointer_events[1].
x, 3.0);
119 EXPECT_EQ(pointer_events[1].
y, 4.0);
121 EXPECT_EQ(pointer_events[1].buttons, 0);
122 EXPECT_EQ(pointer_events[1].
view_id, 42);
128 std::vector<FlutterPointerEvent> pointer_events;
132 size_t events_count) {
133 for (
size_t i = 0;
i < events_count;
i++) {
134 pointer_events.push_back(events[
i]);
145 8.0, GDK_BUTTON_PRIMARY, 0, 0);
147 EXPECT_EQ(pointer_events.size(), 2u);
149 EXPECT_EQ(pointer_events[0].timestamp, 1234000u);
150 EXPECT_EQ(pointer_events[0].
x, 1.0);
151 EXPECT_EQ(pointer_events[0].
y, 2.0);
153 EXPECT_EQ(pointer_events[0].buttons, 0);
154 EXPECT_EQ(pointer_events[0].
view_id, 42);
156 EXPECT_EQ(pointer_events[1].timestamp, 1235000u);
157 EXPECT_EQ(pointer_events[1].
x, 4.0);
158 EXPECT_EQ(pointer_events[1].
y, 8.0);
161 EXPECT_EQ(pointer_events[1].
view_id, 42);
167 std::vector<FlutterPointerEvent> pointer_events;
171 size_t events_count) {
172 for (
size_t i = 0;
i < events_count;
i++) {
173 pointer_events.push_back(events[
i]);
182 8.0, GDK_BUTTON_PRIMARY, 0, 0);
184 EXPECT_EQ(pointer_events.size(), 2u);
187 EXPECT_EQ(pointer_events[0].timestamp, 1234000u);
188 EXPECT_EQ(pointer_events[0].
x, 4.0);
189 EXPECT_EQ(pointer_events[0].
y, 8.0);
191 EXPECT_EQ(pointer_events[0].buttons, 0);
192 EXPECT_EQ(pointer_events[0].
view_id, 42);
194 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
195 EXPECT_EQ(pointer_events[1].
x, 4.0);
196 EXPECT_EQ(pointer_events[1].
y, 8.0);
199 EXPECT_EQ(pointer_events[1].
view_id, 42);
205 std::vector<FlutterPointerEvent> pointer_events;
209 size_t events_count) {
210 for (
size_t i = 0;
i < events_count;
i++) {
211 pointer_events.push_back(events[
i]);
220 8.0, GDK_BUTTON_PRIMARY, 0, 0);
223 9.0, GDK_BUTTON_PRIMARY, 0, 0);
225 EXPECT_EQ(pointer_events.size(), 3u);
228 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
229 EXPECT_EQ(pointer_events[1].
x, 4.0);
230 EXPECT_EQ(pointer_events[1].
y, 8.0);
233 EXPECT_EQ(pointer_events[1].
view_id, 42);
234 EXPECT_EQ(pointer_events[2].timestamp, 1235000u);
235 EXPECT_EQ(pointer_events[2].
x, 5.0);
236 EXPECT_EQ(pointer_events[2].
y, 9.0);
238 EXPECT_EQ(pointer_events[2].buttons, 0);
239 EXPECT_EQ(pointer_events[2].
view_id, 42);
245 std::vector<FlutterPointerEvent> pointer_events;
249 size_t events_count) {
250 for (
size_t i = 0;
i < events_count;
i++) {
251 pointer_events.push_back(events[
i]);
260 8.0, GDK_BUTTON_SECONDARY, 0, 0);
263 9.0, GDK_BUTTON_SECONDARY, 0, 0);
265 EXPECT_EQ(pointer_events.size(), 3u);
268 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
269 EXPECT_EQ(pointer_events[1].
x, 4.0);
270 EXPECT_EQ(pointer_events[1].
y, 8.0);
273 EXPECT_EQ(pointer_events[1].
view_id, 42);
274 EXPECT_EQ(pointer_events[2].timestamp, 1235000u);
275 EXPECT_EQ(pointer_events[2].
x, 5.0);
276 EXPECT_EQ(pointer_events[2].
y, 9.0);
278 EXPECT_EQ(pointer_events[2].buttons, 0);
279 EXPECT_EQ(pointer_events[2].
view_id, 42);
285 std::vector<FlutterPointerEvent> pointer_events;
289 size_t events_count) {
290 for (
size_t i = 0;
i < events_count;
i++) {
291 pointer_events.push_back(events[
i]);
300 8.0, GDK_BUTTON_MIDDLE, 0, 0);
303 9.0, GDK_BUTTON_MIDDLE, 0, 0);
305 EXPECT_EQ(pointer_events.size(), 3u);
308 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
309 EXPECT_EQ(pointer_events[1].
x, 4.0);
310 EXPECT_EQ(pointer_events[1].
y, 8.0);
313 EXPECT_EQ(pointer_events[1].
view_id, 42);
314 EXPECT_EQ(pointer_events[2].timestamp, 1235000u);
315 EXPECT_EQ(pointer_events[2].
x, 5.0);
316 EXPECT_EQ(pointer_events[2].
y, 9.0);
318 EXPECT_EQ(pointer_events[2].buttons, 0);
319 EXPECT_EQ(pointer_events[2].
view_id, 42);
325 std::vector<FlutterPointerEvent> pointer_events;
329 size_t events_count) {
330 for (
size_t i = 0;
i < events_count;
i++) {
331 pointer_events.push_back(events[
i]);
344 EXPECT_EQ(pointer_events.size(), 3u);
347 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
348 EXPECT_EQ(pointer_events[1].
x, 4.0);
349 EXPECT_EQ(pointer_events[1].
y, 8.0);
352 EXPECT_EQ(pointer_events[1].
view_id, 42);
353 EXPECT_EQ(pointer_events[2].timestamp, 1235000u);
354 EXPECT_EQ(pointer_events[2].
x, 5.0);
355 EXPECT_EQ(pointer_events[2].
y, 9.0);
357 EXPECT_EQ(pointer_events[2].buttons, 0);
358 EXPECT_EQ(pointer_events[2].
view_id, 42);
364 std::vector<FlutterPointerEvent> pointer_events;
368 size_t events_count) {
369 for (
size_t i = 0;
i < events_count;
i++) {
370 pointer_events.push_back(events[
i]);
383 EXPECT_EQ(pointer_events.size(), 3u);
386 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
387 EXPECT_EQ(pointer_events[1].
x, 4.0);
388 EXPECT_EQ(pointer_events[1].
y, 8.0);
391 EXPECT_EQ(pointer_events[1].
view_id, 42);
392 EXPECT_EQ(pointer_events[2].timestamp, 1235000u);
393 EXPECT_EQ(pointer_events[2].
x, 5.0);
394 EXPECT_EQ(pointer_events[2].
y, 9.0);
396 EXPECT_EQ(pointer_events[2].buttons, 0);
397 EXPECT_EQ(pointer_events[2].
view_id, 42);
403 std::vector<FlutterPointerEvent> pointer_events;
407 size_t events_count) {
408 for (
size_t i = 0;
i < events_count;
i++) {
409 pointer_events.push_back(events[
i]);
419 2.0, GDK_BUTTON_PRIMARY, 0, 0);
422 4.0, GDK_BUTTON_SECONDARY, 0, 0);
425 6.0, GDK_BUTTON_MIDDLE, 0, 0);
428 8.0, GDK_BUTTON_MIDDLE, 0, 0);
431 10.0, GDK_BUTTON_SECONDARY, 0, 0);
436 EXPECT_EQ(pointer_events.size(), 7u);
439 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
440 EXPECT_EQ(pointer_events[1].
x, 1.0);
441 EXPECT_EQ(pointer_events[1].
y, 2.0);
443 EXPECT_EQ(pointer_events[2].timestamp, 1235000u);
444 EXPECT_EQ(pointer_events[2].
x, 3.0);
445 EXPECT_EQ(pointer_events[2].
y, 4.0);
448 EXPECT_EQ(pointer_events[3].timestamp, 1236000u);
449 EXPECT_EQ(pointer_events[3].
x, 5.0);
450 EXPECT_EQ(pointer_events[3].
y, 6.0);
454 EXPECT_EQ(pointer_events[4].timestamp, 1237000u);
455 EXPECT_EQ(pointer_events[4].
x, 7.0);
456 EXPECT_EQ(pointer_events[4].
y, 8.0);
459 EXPECT_EQ(pointer_events[5].timestamp, 1238000u);
460 EXPECT_EQ(pointer_events[5].
x, 9.0);
461 EXPECT_EQ(pointer_events[5].
y, 10.0);
463 EXPECT_EQ(pointer_events[6].timestamp, 1239000u);
464 EXPECT_EQ(pointer_events[6].
x, 11.0);
465 EXPECT_EQ(pointer_events[6].
y, 12.0);
466 EXPECT_EQ(pointer_events[6].buttons, 0);
472 constexpr int64_t kStylusContact = 1 << 0;
473 constexpr int64_t kStylusPrimary = 1 << 1;
475 std::vector<FlutterPointerEvent> pointer_events;
479 size_t events_count) {
480 for (
size_t i = 0;
i < events_count;
i++) {
481 pointer_events.push_back(events[
i]);
490 8.0, GDK_BUTTON_PRIMARY, 0.0, 0.5);
493 8.0, GDK_BUTTON_SECONDARY, 0.0, 0.5);
495 EXPECT_EQ(pointer_events.size(), 3u);
497 EXPECT_EQ(pointer_events[2].buttons, kStylusContact | kStylusPrimary);
503 constexpr int64_t kStylusContact = 1 << 0;
505 std::vector<FlutterPointerEvent> pointer_events;
509 size_t events_count) {
510 for (
size_t i = 0;
i < events_count;
i++) {
511 pointer_events.push_back(events[
i]);
520 8.0, GDK_BUTTON_PRIMARY, 0.0, 0.5);
522 EXPECT_EQ(pointer_events.size(), 2u);
524 EXPECT_EQ(pointer_events[1].buttons, kStylusContact);
530 constexpr int64_t kStylusContact = 1 << 0;
532 std::vector<FlutterPointerEvent> pointer_events;
536 size_t events_count) {
537 for (
size_t i = 0;
i < events_count;
i++) {
538 pointer_events.push_back(events[
i]);
547 GDK_BUTTON_PRIMARY, 0.0, 0.5);
549 EXPECT_EQ(pointer_events.size(), 2u);
550 EXPECT_EQ(pointer_events[1].device_kind,
552 EXPECT_EQ(pointer_events[1].buttons, kStylusContact);
558 constexpr int64_t kStylusContact = 1 << 0;
559 constexpr int64_t kStylusSecondary = 1 << 2;
561 std::vector<FlutterPointerEvent> pointer_events;
565 size_t events_count) {
566 for (
size_t i = 0;
i < events_count;
i++) {
567 pointer_events.push_back(events[
i]);
576 8.0, GDK_BUTTON_PRIMARY, 0.0, 0.5);
579 8.0, GDK_BUTTON_MIDDLE, 0.0, 0.5);
581 EXPECT_EQ(pointer_events.size(), 3u);
583 EXPECT_EQ(pointer_events[2].buttons, kStylusContact | kStylusSecondary);
611 std::vector<FlutterPointerEvent> pointer_events;
615 size_t events_count) {
616 for (
size_t i = 0;
i < events_count;
i++) {
617 pointer_events.push_back(events[
i]);
626 8.0, GDK_BUTTON_PRIMARY, 0, 0);
630 10.0, GDK_BUTTON_PRIMARY, 0, 0);
633 9.0, GDK_BUTTON_PRIMARY, 0, 0);
635 EXPECT_EQ(pointer_events.size(), 3u);
638 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
639 EXPECT_EQ(pointer_events[1].
x, 4.0);
640 EXPECT_EQ(pointer_events[1].
y, 8.0);
643 EXPECT_EQ(pointer_events[1].
view_id, 42);
644 EXPECT_EQ(pointer_events[2].timestamp, 1235000u);
645 EXPECT_EQ(pointer_events[2].
x, 5.0);
646 EXPECT_EQ(pointer_events[2].
y, 9.0);
648 EXPECT_EQ(pointer_events[2].buttons, 0);
649 EXPECT_EQ(pointer_events[2].
view_id, 42);
655 std::vector<FlutterPointerEvent> pointer_events;
659 size_t events_count) {
660 for (
size_t i = 0;
i < events_count;
i++) {
661 pointer_events.push_back(events[
i]);
670 8.0, GDK_BUTTON_PRIMARY, 0, 0);
673 9.0, GDK_BUTTON_PRIMARY, 0, 0);
677 10.0, GDK_BUTTON_PRIMARY, 0, 0);
679 EXPECT_EQ(pointer_events.size(), 3u);
682 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
683 EXPECT_EQ(pointer_events[1].
x, 4.0);
684 EXPECT_EQ(pointer_events[1].
y, 8.0);
687 EXPECT_EQ(pointer_events[1].
view_id, 42);
688 EXPECT_EQ(pointer_events[2].timestamp, 1235000u);
689 EXPECT_EQ(pointer_events[2].
x, 5.0);
690 EXPECT_EQ(pointer_events[2].
y, 9.0);
692 EXPECT_EQ(pointer_events[2].buttons, 0);
693 EXPECT_EQ(pointer_events[2].
view_id, 42);
723 std::vector<FlutterPointerEvent> pointer_events;
727 size_t events_count) {
728 for (
size_t i = 0;
i < events_count;
i++) {
729 pointer_events.push_back(events[
i]);
743 EXPECT_EQ(pointer_events.size(), 4u);
746 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
747 EXPECT_EQ(pointer_events[1].
x, 1.0);
748 EXPECT_EQ(pointer_events[1].
y, 2.0);
750 EXPECT_EQ(pointer_events[1].buttons, 0);
751 EXPECT_EQ(pointer_events[1].
view_id, 42);
752 EXPECT_EQ(pointer_events[2].timestamp, 1235000u);
753 EXPECT_EQ(pointer_events[2].
x, 3.0);
754 EXPECT_EQ(pointer_events[2].
y, 4.0);
756 EXPECT_EQ(pointer_events[2].buttons, 0);
757 EXPECT_EQ(pointer_events[2].
view_id, 42);
758 EXPECT_EQ(pointer_events[3].timestamp, 1236000u);
759 EXPECT_EQ(pointer_events[3].
x, 5.0);
760 EXPECT_EQ(pointer_events[3].
y, 6.0);
762 EXPECT_EQ(pointer_events[3].buttons, 0);
763 EXPECT_EQ(pointer_events[3].
view_id, 42);
769 std::vector<FlutterPointerEvent> pointer_events;
773 size_t events_count) {
774 for (
size_t i = 0;
i < events_count;
i++) {
775 pointer_events.push_back(events[
i]);
786 4.0, GDK_BUTTON_PRIMARY, 0, 0);
791 8.0, GDK_BUTTON_PRIMARY, 0, 0);
795 EXPECT_EQ(pointer_events.size(), 6u);
798 EXPECT_EQ(pointer_events[1].timestamp, 1234000u);
799 EXPECT_EQ(pointer_events[1].
x, 1.0);
800 EXPECT_EQ(pointer_events[1].
y, 2.0);
801 EXPECT_EQ(pointer_events[1].buttons, 0);
802 EXPECT_EQ(pointer_events[1].
view_id, 42);
803 EXPECT_EQ(pointer_events[2].timestamp, 1235000u);
804 EXPECT_EQ(pointer_events[2].
x, 3.0);
805 EXPECT_EQ(pointer_events[2].
y, 4.0);
807 EXPECT_EQ(pointer_events[2].
view_id, 42);
808 EXPECT_EQ(pointer_events[3].timestamp, 1236000u);
809 EXPECT_EQ(pointer_events[3].
x, 5.0);
810 EXPECT_EQ(pointer_events[3].
y, 6.0);
812 EXPECT_EQ(pointer_events[3].
view_id, 42);
813 EXPECT_EQ(pointer_events[4].timestamp, 1237000u);
814 EXPECT_EQ(pointer_events[4].
x, 7.0);
815 EXPECT_EQ(pointer_events[4].
y, 8.0);
816 EXPECT_EQ(pointer_events[4].buttons, 0);
817 EXPECT_EQ(pointer_events[4].
view_id, 42);
818 EXPECT_EQ(pointer_events[5].timestamp, 1238000u);
819 EXPECT_EQ(pointer_events[5].
x, 9.0);
820 EXPECT_EQ(pointer_events[5].
y, 10.0);
821 EXPECT_EQ(pointer_events[5].buttons, 0);
822 EXPECT_EQ(pointer_events[5].
view_id, 42);
828 std::vector<FlutterPointerEvent> pointer_events;
832 size_t events_count) {
833 for (
size_t i = 0;
i < events_count;
i++) {
834 pointer_events.push_back(events[
i]);
845 2.0, GDK_BUTTON_PRIMARY, 0, 0);
850 3.0, 4.0, GDK_BUTTON_PRIMARY, 0, 0);
854 EXPECT_EQ(pointer_events.size(), 5u);
gboolean fl_pointer_manager_handle_enter(FlPointerManager *self, guint event_time, FlutterPointerDeviceKind device_kind, gdouble x, gdouble y, gdouble rotation, gdouble pressure)
gboolean fl_pointer_manager_handle_button_press(FlPointerManager *self, guint event_time, FlutterPointerDeviceKind device_kind, gdouble x, gdouble y, guint gdk_button, gdouble rotation, gdouble pressure)
gboolean fl_pointer_manager_handle_motion(FlPointerManager *self, guint event_time, FlutterPointerDeviceKind device_kind, gdouble x, gdouble y, gdouble rotation, gdouble pressure)
gboolean fl_pointer_manager_handle_button_release(FlPointerManager *self, guint event_time, FlutterPointerDeviceKind device_kind, gdouble x, gdouble y, guint gdk_button, gdouble rotation, gdouble pressure)
gboolean fl_pointer_manager_handle_leave(FlPointerManager *self, guint event_time, FlutterPointerDeviceKind device_kind, gdouble x, gdouble y, gdouble rotation, gdouble pressure)