• Home
  • Raw
  • Download

Lines Matching refs:dev

58 	struct litest_device *dev = litest_current_device();  in START_TEST()  local
59 struct libinput *li = dev->libinput; in START_TEST()
63 litest_disable_tap(dev->libinput_device); in START_TEST()
67 litest_touch_down(dev, 0, 50, 50); in START_TEST()
68 litest_touch_move_to(dev, 0, 50, 50, 80, 50, 20); in START_TEST()
69 litest_touch_up(dev, 0); in START_TEST()
91 struct litest_device *dev = litest_current_device(); in START_TEST() local
92 struct libinput *li = dev->libinput; in START_TEST()
95 libinput_device_config_tap_set_enabled(dev->libinput_device, in START_TEST()
100 litest_touch_down(dev, 0, 20, 20); in START_TEST()
101 litest_touch_down(dev, 1, 70, 20); in START_TEST()
102 litest_touch_move_two_touches(dev, 20, 20, 70, 20, 20, 30, 20); in START_TEST()
103 litest_touch_up(dev, 1); in START_TEST()
104 litest_touch_up(dev, 0); in START_TEST()
119 test_2fg_scroll(struct litest_device *dev, double dx, double dy, bool want_sleep) in test_2fg_scroll() argument
121 struct libinput *li = dev->libinput; in test_2fg_scroll()
123 litest_touch_down(dev, 0, 49, 50); in test_2fg_scroll()
124 litest_touch_down(dev, 1, 51, 50); in test_2fg_scroll()
126 litest_touch_move_two_touches(dev, 49, 50, 51, 50, dx, dy, 10); in test_2fg_scroll()
135 litest_touch_up(dev, 1); in test_2fg_scroll()
136 litest_touch_up(dev, 0); in test_2fg_scroll()
143 struct litest_device *dev = litest_current_device(); in START_TEST() local
144 struct libinput *li = dev->libinput; in START_TEST()
146 if (!litest_has_2fg_scroll(dev)) in START_TEST()
149 litest_enable_2fg_scroll(dev); in START_TEST()
152 test_2fg_scroll(dev, 0.1, 40, false); in START_TEST()
154 test_2fg_scroll(dev, 0.1, -40, false); in START_TEST()
156 test_2fg_scroll(dev, 40, 0.1, false); in START_TEST()
158 test_2fg_scroll(dev, -40, 0.1, false); in START_TEST()
162 test_2fg_scroll(dev, 0.1, 0.1, true); in START_TEST()
169 struct litest_device *dev = litest_current_device(); in START_TEST() local
170 struct libinput *li = dev->libinput; in START_TEST()
179 if (!litest_has_2fg_scroll(dev)) in START_TEST()
182 ck_assert_int_eq(libinput_device_get_size(dev->libinput_device, &w, &h), 0); in START_TEST()
184 litest_enable_2fg_scroll(dev); in START_TEST()
187 litest_touch_down(dev, 0, 45, 30); in START_TEST()
188 litest_touch_down(dev, 1, 55, 30); in START_TEST()
192 litest_touch_move_two_touches(dev, 45, 30, 55, 30, 15, ydelta, 10); in START_TEST()
201 litest_touch_move(dev, 0, 60, 30 + ydelta + (i * ratio)); in START_TEST()
207 litest_touch_move(dev, 0, 60, 30 + ydelta + i * ratio); in START_TEST()
227 litest_touch_up(dev, 1); in START_TEST()
228 litest_touch_up(dev, 0); in START_TEST()
234 is_single_axis_2fg_scroll(struct litest_device *dev, in is_single_axis_2fg_scroll() argument
237 struct libinput *li = dev->libinput; in is_single_axis_2fg_scroll()
275 struct litest_device *dev = litest_current_device(); in START_TEST() local
276 struct libinput *li = dev->libinput; in START_TEST()
286 if (!litest_has_2fg_scroll(dev)) in START_TEST()
289 litest_enable_2fg_scroll(dev); in START_TEST()
294 test_2fg_scroll(dev, delta[i][0], delta[i][1], false); in START_TEST()
295 ck_assert(is_single_axis_2fg_scroll(dev, axis)); in START_TEST()
301 test_2fg_scroll(dev, delta[i][1], delta[i][0], false); in START_TEST()
302 ck_assert(is_single_axis_2fg_scroll(dev, axis)); in START_TEST()
310 struct litest_device *dev = litest_current_device(); in START_TEST() local
311 struct libinput *li = dev->libinput; in START_TEST()
314 if (!litest_has_2fg_scroll(dev)) in START_TEST()
317 litest_enable_2fg_scroll(dev); in START_TEST()
320 litest_touch_down(dev, 0, 20, 20); in START_TEST()
321 litest_touch_down(dev, 1, 25, 20); in START_TEST()
324 litest_touch_move_two_touches(dev, 20, 20, 25, 20, 55, 10, 15); in START_TEST()
331 ck_assert(is_single_axis_2fg_scroll(dev, axis)); in START_TEST()
341 litest_touch_move_two_touches(dev, 75, 30, 80, 30, 2, 20, 15); in START_TEST()
349 litest_touch_move_two_touches(dev, 77, 50, 82, 50, 1, 40, 15); in START_TEST()
356 ck_assert(is_single_axis_2fg_scroll(dev, axis)); in START_TEST()
360 litest_touch_move_two_touches(dev, 78, 90, 83, 90, -60, -60, 20); in START_TEST()
367 ck_assert(!is_single_axis_2fg_scroll(dev, axis)); in START_TEST()
369 litest_touch_up(dev, 1); in START_TEST()
370 litest_touch_up(dev, 0); in START_TEST()
378 struct litest_device *dev = litest_current_device(); in START_TEST() local
379 struct libinput *li = dev->libinput; in START_TEST()
385 if (!litest_has_2fg_scroll(dev)) in START_TEST()
389 ck_assert_int_eq(libinput_device_get_size(dev->libinput_device, in START_TEST()
394 litest_enable_2fg_scroll(dev); in START_TEST()
397 litest_touch_down(dev, 0, 49, 50); in START_TEST()
398 litest_touch_down(dev, 1, 51, 50); in START_TEST()
399 litest_touch_move_two_touches(dev, 49, 50, 51, 50, 0, y_move, 100); in START_TEST()
400 litest_touch_up(dev, 1); in START_TEST()
401 litest_touch_up(dev, 0); in START_TEST()
434 struct litest_device *dev = litest_current_device(); in START_TEST() local
435 struct libinput *li = dev->libinput; in START_TEST()
439 if (!litest_has_2fg_scroll(dev)) in START_TEST()
442 litest_enable_2fg_scroll(dev); in START_TEST()
445 test_2fg_scroll(dev, 0, 30, false); in START_TEST()
461 struct litest_device *dev = litest_current_device(); in START_TEST() local
462 struct libinput *li = dev->libinput; in START_TEST()
464 if (!litest_has_2fg_scroll(dev)) in START_TEST()
467 litest_enable_2fg_scroll(dev); in START_TEST()
470 litest_touch_down(dev, 0, 20, 20); in START_TEST()
471 litest_touch_down(dev, 1, 30, 20); in START_TEST()
473 litest_touch_move_two_touches(dev, in START_TEST()
485 struct litest_device *dev = litest_current_device(); in START_TEST() local
486 struct libinput *li = dev->libinput; in START_TEST()
488 if (!litest_has_2fg_scroll(dev)) in START_TEST()
491 litest_enable_2fg_scroll(dev); in START_TEST()
495 litest_touch_down(dev, 0, 70, 70); in START_TEST()
496 litest_touch_move_to(dev, 0, 70, 70, 49, 50, 10); in START_TEST()
500 litest_touch_down(dev, 1, 51, 50); in START_TEST()
501 litest_touch_move_two_touches(dev, 49, 50, 51, 50, 0, 20, 5); in START_TEST()
502 litest_touch_up(dev, 1); in START_TEST()
508 litest_touch_move_to(dev, 0, 49, 70, 49, 50, 10); in START_TEST()
512 litest_touch_down(dev, 1, 51, 50); in START_TEST()
513 litest_touch_move_two_touches(dev, 49, 50, 51, 50, 0, 20, 5); in START_TEST()
514 litest_touch_up(dev, 0); in START_TEST()
521 litest_touch_move_to(dev, 1, 51, 70, 51, 50, 10); in START_TEST()
524 litest_touch_up(dev, 1); in START_TEST()
531 struct litest_device *dev = litest_current_device(); in START_TEST() local
532 struct libinput *li = dev->libinput; in START_TEST()
534 if (!litest_has_2fg_scroll(dev) || in START_TEST()
535 !litest_has_btnareas(dev)) in START_TEST()
538 litest_enable_2fg_scroll(dev); in START_TEST()
539 litest_enable_buttonareas(dev); in START_TEST()
542 litest_touch_down(dev, 0, 30, 95); in START_TEST()
543 litest_touch_down(dev, 1, 50, 95); in START_TEST()
549 litest_touch_move(dev, 0, 30, 95 - i); in START_TEST()
554 litest_touch_move(dev, 0, 30, 90 - i); in START_TEST()
555 litest_touch_move(dev, 1, 50, 95 - i); in START_TEST()
559 litest_touch_up(dev, 0); in START_TEST()
560 litest_touch_up(dev, 1); in START_TEST()
568 struct litest_device *dev = litest_current_device(); in START_TEST() local
570 ck_assert_int_ge(libinput_device_config_scroll_has_natural_scroll(dev->libinput_device), 1); in START_TEST()
571 …ck_assert_int_eq(libinput_device_config_scroll_get_natural_scroll_enabled(dev->libinput_device), 0… in START_TEST()
572 …ck_assert_int_eq(libinput_device_config_scroll_get_default_natural_scroll_enabled(dev->libinput_de… in START_TEST()
578 struct litest_device *dev = litest_current_device(); in START_TEST() local
581 status = libinput_device_config_scroll_set_natural_scroll_enabled(dev->libinput_device, 1); in START_TEST()
583 …ck_assert_int_eq(libinput_device_config_scroll_get_natural_scroll_enabled(dev->libinput_device), 1… in START_TEST()
585 status = libinput_device_config_scroll_set_natural_scroll_enabled(dev->libinput_device, 0); in START_TEST()
587 …ck_assert_int_eq(libinput_device_config_scroll_get_natural_scroll_enabled(dev->libinput_device), 0… in START_TEST()
593 struct litest_device *dev = litest_current_device(); in START_TEST() local
594 struct libinput *li = dev->libinput; in START_TEST()
596 if (!litest_has_2fg_scroll(dev)) in START_TEST()
599 litest_enable_2fg_scroll(dev); in START_TEST()
602 libinput_device_config_scroll_set_natural_scroll_enabled(dev->libinput_device, 1); in START_TEST()
604 test_2fg_scroll(dev, 0.1, 40, false); in START_TEST()
606 test_2fg_scroll(dev, 0.1, -40, false); in START_TEST()
608 test_2fg_scroll(dev, 40, 0.1, false); in START_TEST()
610 test_2fg_scroll(dev, -40, 0.1, false); in START_TEST()
618 struct litest_device *dev = litest_current_device(); in START_TEST() local
619 struct libinput *li = dev->libinput; in START_TEST()
621 litest_enable_edge_scroll(dev); in START_TEST()
624 libinput_device_config_scroll_set_natural_scroll_enabled(dev->libinput_device, 1); in START_TEST()
626 litest_touch_down(dev, 0, 99, 20); in START_TEST()
627 litest_touch_move_to(dev, 0, 99, 20, 99, 80, 10); in START_TEST()
628 litest_touch_up(dev, 0); in START_TEST()
634 litest_touch_down(dev, 0, 99, 80); in START_TEST()
635 litest_touch_move_to(dev, 0, 99, 80, 99, 20, 10); in START_TEST()
636 litest_touch_up(dev, 0); in START_TEST()
647 struct litest_device *dev = litest_current_device(); in START_TEST() local
648 struct libinput *li = dev->libinput; in START_TEST()
650 litest_touch_down(dev, 0, 99, 20); in START_TEST()
651 litest_touch_move_to(dev, 0, 99, 20, 99, 80, 10); in START_TEST()
652 litest_touch_up(dev, 0); in START_TEST()
655 litest_enable_edge_scroll(dev); in START_TEST()
657 litest_touch_down(dev, 0, 99, 20); in START_TEST()
658 litest_touch_move_to(dev, 0, 99, 20, 99, 80, 10); in START_TEST()
659 litest_touch_up(dev, 0); in START_TEST()
665 litest_touch_down(dev, 0, 99, 80); in START_TEST()
666 litest_touch_move_to(dev, 0, 99, 80, 99, 20, 10); in START_TEST()
667 litest_touch_up(dev, 0); in START_TEST()
676 touchpad_has_horiz_edge_scroll_size(struct litest_device *dev) in touchpad_has_horiz_edge_scroll_size() argument
681 rc = libinput_device_get_size(dev->libinput_device, &width, &height); in touchpad_has_horiz_edge_scroll_size()
688 struct litest_device *dev = litest_current_device(); in START_TEST() local
689 struct libinput *li = dev->libinput; in START_TEST()
691 litest_touch_down(dev, 0, 99, 20); in START_TEST()
692 litest_touch_move_to(dev, 0, 99, 20, 99, 80, 10); in START_TEST()
693 litest_touch_up(dev, 0); in START_TEST()
695 if (!touchpad_has_horiz_edge_scroll_size(dev)) in START_TEST()
699 litest_enable_edge_scroll(dev); in START_TEST()
701 litest_touch_down(dev, 0, 20, 99); in START_TEST()
702 litest_touch_move_to(dev, 0, 20, 99, 70, 99, 10); in START_TEST()
703 litest_touch_up(dev, 0); in START_TEST()
709 litest_touch_down(dev, 0, 70, 99); in START_TEST()
710 litest_touch_move_to(dev, 0, 70, 99, 20, 99, 10); in START_TEST()
711 litest_touch_up(dev, 0); in START_TEST()
721 struct litest_device *dev = litest_current_device(); in START_TEST() local
722 struct libinput *li = dev->libinput; in START_TEST()
725 litest_enable_edge_scroll(dev); in START_TEST()
727 litest_touch_down(dev, 0, 20, 99); in START_TEST()
728 litest_touch_move_to(dev, 0, 20, 99, 70, 99, 10); in START_TEST()
729 litest_touch_up(dev, 0); in START_TEST()
735 litest_touch_down(dev, 0, 70, 99); in START_TEST()
736 litest_touch_move_to(dev, 0, 70, 99, 20, 99, 10); in START_TEST()
737 litest_touch_up(dev, 0); in START_TEST()
747 struct litest_device *dev = litest_current_device(); in START_TEST() local
748 struct libinput *li = dev->libinput; in START_TEST()
750 if (touchpad_has_horiz_edge_scroll_size(dev)) in START_TEST()
754 litest_enable_edge_scroll(dev); in START_TEST()
756 litest_touch_down(dev, 0, 20, 99); in START_TEST()
757 litest_touch_move_to(dev, 0, 20, 99, 70, 99, 10); in START_TEST()
758 litest_touch_up(dev, 0); in START_TEST()
762 litest_touch_down(dev, 0, 70, 99); in START_TEST()
763 litest_touch_move_to(dev, 0, 70, 99, 20, 99, 10); in START_TEST()
764 litest_touch_up(dev, 0); in START_TEST()
772 struct litest_device *dev = litest_current_device(); in START_TEST() local
773 struct libinput_device *device = dev->libinput_device; in START_TEST()
774 struct libevdev *evdev = dev->evdev; in START_TEST()
780 (libevdev_get_id_vendor(dev->evdev) == VENDOR_ID_APPLE && in START_TEST()
781 libevdev_get_id_product(dev->evdev) == PRODUCT_ID_APPLE_APPLETOUCH)) in START_TEST()
816 struct litest_device *dev = litest_current_device(); in START_TEST() local
817 struct libinput *li = dev->libinput; in START_TEST()
824 ck_assert_int_eq(libinput_device_get_size(dev->libinput_device, in START_TEST()
832 if (libinput_device_config_click_get_methods(dev->libinput_device) & in START_TEST()
834 litest_enable_clickfinger(dev); in START_TEST()
837 litest_enable_edge_scroll(dev); in START_TEST()
841 litest_touch_down(dev, 0, 99, 20); in START_TEST()
846 litest_touch_move_to(dev, 0, 99, 20, 99, 20 + mm/2, 8); in START_TEST()
856 litest_touch_move_to(dev, 0, 99, 20 + mm/2, 99, 20 + mm * 2, 20); in START_TEST()
857 litest_touch_up(dev, 0); in START_TEST()
886 struct litest_device *dev = litest_current_device(); in START_TEST() local
887 struct libinput *li = dev->libinput; in START_TEST()
890 litest_enable_edge_scroll(dev); in START_TEST()
892 litest_touch_down(dev, 0, 99, 10); in START_TEST()
893 litest_touch_move_to(dev, 0, 99, 10, 99, 70, 12); in START_TEST()
895 litest_touch_move_to(dev, 0, 99, 70, 20, 70, 12); in START_TEST()
897 litest_touch_move_to(dev, 0, 20, 70, 40, 99, 12); in START_TEST()
898 litest_touch_up(dev, 0); in START_TEST()
908 struct litest_device *dev = litest_current_device(); in START_TEST() local
909 struct libinput *li = dev->libinput; in START_TEST()
912 litest_enable_edge_scroll(dev); in START_TEST()
915 litest_touch_down(dev, 0, 20, 20); in START_TEST()
916 litest_touch_move_to(dev, 0, 20, 20, 99, 20, 22); in START_TEST()
917 litest_touch_move_to(dev, 0, 99, 20, 99, 80, 22); in START_TEST()
918 litest_touch_up(dev, 0); in START_TEST()
928 struct litest_device *dev = litest_current_device(); in START_TEST() local
929 struct libinput *li = dev->libinput; in START_TEST()
934 litest_enable_edge_scroll(dev); in START_TEST()
936 litest_touch_down(dev, 0, 99, 20); in START_TEST()
937 litest_touch_move_to(dev, 0, 99, 20, 99, 80, 10); in START_TEST()
938 litest_touch_up(dev, 0); in START_TEST()
955 struct litest_device *dev = litest_current_device(); in START_TEST() local
956 struct libinput *li = dev->libinput; in START_TEST()
959 litest_enable_edge_scroll(dev); in START_TEST()
961 litest_touch_down(dev, 0, 49, 50); in START_TEST()
962 litest_touch_down(dev, 1, 51, 50); in START_TEST()
963 litest_touch_move_two_touches(dev, 49, 50, 51, 50, 20, 30, 10); in START_TEST()
965 litest_touch_up(dev, 0); in START_TEST()
966 litest_touch_up(dev, 1); in START_TEST()
975 struct litest_device *dev = litest_current_device(); in START_TEST() local
976 struct libinput *li = dev->libinput; in START_TEST()
978 litest_enable_buttonareas(dev); in START_TEST()
979 litest_enable_edge_scroll(dev); in START_TEST()
982 litest_touch_down(dev, 0, 99, 40); in START_TEST()
983 litest_touch_move_to(dev, 0, 99, 40, 99, 95, 10); in START_TEST()
986 litest_touch_move_to(dev, 0, 99, 95, 99, 100, 10); in START_TEST()
990 litest_touch_move_to(dev, 0, 99, 100, 99, 70, 10); in START_TEST()
994 litest_touch_move_to(dev, 0, 99, 70, 99, 50, 10); in START_TEST()
1001 struct litest_device *dev = litest_current_device(); in START_TEST() local
1002 struct libinput *li = dev->libinput; in START_TEST()
1004 if (!touchpad_has_horiz_edge_scroll_size(dev)) in START_TEST()
1007 litest_enable_buttonareas(dev); in START_TEST()
1008 litest_enable_edge_scroll(dev); in START_TEST()
1011 litest_touch_down(dev, 0, 20, 99); in START_TEST()
1014 litest_touch_move_to(dev, 0, 20, 99, 40, 99, 10); in START_TEST()
1018 litest_touch_move_to(dev, 0, 40, 99, 60, 99, 10); in START_TEST()
1022 litest_touch_move_to(dev, 0, 60, 99, 80, 99, 10); in START_TEST()
1029 struct litest_device *dev = litest_current_device(); in START_TEST() local
1030 struct libinput *li = dev->libinput; in START_TEST()
1035 if (!touchpad_has_horiz_edge_scroll_size(dev)) in START_TEST()
1038 litest_enable_buttonareas(dev); in START_TEST()
1039 litest_enable_edge_scroll(dev); in START_TEST()
1042 litest_touch_down(dev, 0, 20, 95); in START_TEST()
1043 litest_touch_move_to(dev, 0, 20, 95, 70, 95, 10); in START_TEST()
1046 litest_button_click(dev, BTN_LEFT, true); in START_TEST()
1072 litest_touch_move_to(dev, 0, 70, 95, 90, 95, 10); in START_TEST()
1075 litest_button_click(dev, BTN_LEFT, false); in START_TEST()
1079 litest_touch_up(dev, 0); in START_TEST()
1085 struct litest_device *dev = litest_current_device(); in START_TEST() local
1086 struct libinput *li = dev->libinput; in START_TEST()
1091 if (!touchpad_has_horiz_edge_scroll_size(dev)) in START_TEST()
1094 litest_enable_clickfinger(dev); in START_TEST()
1095 litest_enable_edge_scroll(dev); in START_TEST()
1098 litest_touch_down(dev, 0, 20, 95); in START_TEST()
1099 litest_touch_move_to(dev, 0, 20, 95, 70, 95, 10); in START_TEST()
1102 litest_button_click(dev, BTN_LEFT, true); in START_TEST()
1122 litest_touch_move_to(dev, 0, 70, 95, 90, 95, 10); in START_TEST()
1126 litest_button_click(dev, BTN_LEFT, false); in START_TEST()
1130 litest_touch_up(dev, 0); in START_TEST()
1136 struct litest_device *dev = litest_current_device(); in START_TEST() local
1137 struct libinput *li = dev->libinput; in START_TEST()
1139 litest_enable_edge_scroll(dev); in START_TEST()
1144 litest_touch_down(dev, 0, 99, 20); in START_TEST()
1145 litest_touch_move_to(dev, 0, 99, 20, 99, 50, 15); in START_TEST()
1146 litest_touch_move_to(dev, 0, 99, 50, 20, 50, 15); in START_TEST()
1149 litest_touch_move_to(dev, 0, 20, 50, 20, 20, 15); in START_TEST()
1150 litest_touch_move_to(dev, 0, 20, 20, 99, 20, 15); in START_TEST()
1153 litest_touch_move_to(dev, 0, 99, 20, 99, 50, 15); in START_TEST()
1160 touchpad_has_top_palm_detect_size(struct litest_device *dev) in touchpad_has_top_palm_detect_size() argument
1165 if (!litest_has_palm_detect_size(dev)) in touchpad_has_top_palm_detect_size()
1168 rc = libinput_device_get_size(dev->libinput_device, &width, &height); in touchpad_has_top_palm_detect_size()
1175 struct litest_device *dev = litest_current_device(); in START_TEST() local
1176 struct libinput *li = dev->libinput; in START_TEST()
1178 if (!litest_has_palm_detect_size(dev) || in START_TEST()
1179 !litest_has_2fg_scroll(dev)) in START_TEST()
1182 litest_enable_2fg_scroll(dev); in START_TEST()
1184 litest_disable_tap(dev->libinput_device); in START_TEST()
1188 litest_touch_down(dev, 0, 99, 50); in START_TEST()
1189 litest_touch_move_to(dev, 0, 99, 50, 99, 70, 5); in START_TEST()
1190 litest_touch_up(dev, 0); in START_TEST()
1194 litest_touch_down(dev, 0, 5, 50); in START_TEST()
1195 litest_touch_move_to(dev, 0, 5, 50, 5, 70, 5); in START_TEST()
1196 litest_touch_up(dev, 0); in START_TEST()
1204 struct litest_device *dev = litest_current_device(); in START_TEST() local
1205 struct libinput *li = dev->libinput; in START_TEST()
1207 if (!touchpad_has_top_palm_detect_size(dev)) in START_TEST()
1210 litest_disable_tap(dev->libinput_device); in START_TEST()
1214 litest_touch_down(dev, 0, 20, 1); in START_TEST()
1215 litest_touch_move_to(dev, 0, 20, 1, 70, 1, 10); in START_TEST()
1216 litest_touch_up(dev, 0); in START_TEST()
1224 struct litest_device *dev = litest_current_device(); in START_TEST() local
1225 struct libinput *li = dev->libinput; in START_TEST()
1227 if (!litest_has_palm_detect_size(dev)) in START_TEST()
1230 litest_enable_edge_scroll(dev); in START_TEST()
1234 litest_touch_down(dev, 0, 99, 50); in START_TEST()
1235 litest_touch_move_to(dev, 0, 99, 50, 99, 70, 5); in START_TEST()
1236 litest_touch_up(dev, 0); in START_TEST()
1244 struct litest_device *dev = litest_current_device(); in START_TEST() local
1245 struct libinput *li = dev->libinput; in START_TEST()
1247 if (!litest_has_palm_detect_size(dev) || in START_TEST()
1248 !litest_has_2fg_scroll(dev)) in START_TEST()
1251 litest_enable_2fg_scroll(dev); in START_TEST()
1253 litest_disable_tap(dev->libinput_device); in START_TEST()
1259 litest_touch_down(dev, 0, 99, 95); in START_TEST()
1260 litest_touch_move_to(dev, 0, 99, 95, 99, 99, 10); in START_TEST()
1261 litest_touch_up(dev, 0); in START_TEST()
1265 litest_touch_down(dev, 0, 5, 95); in START_TEST()
1266 litest_touch_move_to(dev, 0, 5, 95, 5, 99, 5); in START_TEST()
1267 litest_touch_up(dev, 0); in START_TEST()
1273 struct litest_device *dev = litest_current_device(); in START_TEST() local
1274 struct libinput *li = dev->libinput; in START_TEST()
1276 if (!litest_has_palm_detect_size(dev) || in START_TEST()
1277 !litest_has_2fg_scroll(dev)) in START_TEST()
1280 litest_enable_2fg_scroll(dev); in START_TEST()
1282 litest_disable_tap(dev->libinput_device); in START_TEST()
1288 litest_touch_down(dev, 0, 99, 5); in START_TEST()
1289 litest_touch_move_to(dev, 0, 99, 5, 99, 9, 10); in START_TEST()
1290 litest_touch_up(dev, 0); in START_TEST()
1294 litest_touch_down(dev, 0, 5, 5); in START_TEST()
1295 litest_touch_move_to(dev, 0, 5, 5, 5, 9, 5); in START_TEST()
1296 litest_touch_up(dev, 0); in START_TEST()
1304 struct litest_device *dev = litest_current_device(); in START_TEST() local
1305 struct libinput *li = dev->libinput; in START_TEST()
1307 if (!litest_has_palm_detect_size(dev) || in START_TEST()
1308 !litest_has_2fg_scroll(dev)) in START_TEST()
1311 litest_enable_2fg_scroll(dev); in START_TEST()
1313 litest_disable_tap(dev->libinput_device); in START_TEST()
1317 litest_touch_down(dev, 0, 99, 20); in START_TEST()
1318 litest_touch_move_to(dev, 0, 99, 20, 75, 99, 20); in START_TEST()
1319 litest_touch_up(dev, 0); in START_TEST()
1326 struct litest_device *dev = litest_current_device(); in START_TEST() local
1327 struct libinput *li = dev->libinput; in START_TEST()
1329 if (!touchpad_has_top_palm_detect_size(dev)) in START_TEST()
1332 litest_disable_tap(dev->libinput_device); in START_TEST()
1336 litest_touch_down(dev, 0, 20, 1); in START_TEST()
1337 litest_touch_move_to(dev, 0, 20, 1, 50, 30, 20); in START_TEST()
1338 litest_touch_up(dev, 0); in START_TEST()
1346 struct litest_device *dev = litest_current_device(); in START_TEST() local
1347 struct libinput *li = dev->libinput; in START_TEST()
1349 if (!litest_has_palm_detect_size(dev) || in START_TEST()
1350 !litest_has_2fg_scroll(dev)) in START_TEST()
1353 litest_enable_2fg_scroll(dev); in START_TEST()
1355 litest_disable_tap(dev->libinput_device); in START_TEST()
1359 litest_touch_down(dev, 0, 99, 50); in START_TEST()
1360 litest_touch_move_to(dev, 0, 99, 50, 0, 70, 20); in START_TEST()
1361 litest_touch_up(dev, 0); in START_TEST()
1373 struct litest_device *dev = litest_current_device(); in START_TEST() local
1374 struct libinput *li = dev->libinput; in START_TEST()
1376 if (!touchpad_has_top_palm_detect_size(dev)) in START_TEST()
1379 litest_disable_tap(dev->libinput_device); in START_TEST()
1383 litest_touch_down(dev, 0, 50, 1); in START_TEST()
1384 litest_touch_move_to(dev, 0, 50, 1, 50, 60, 20); in START_TEST()
1385 litest_touch_up(dev, 0); in START_TEST()
1397 struct litest_device *dev = litest_current_device(); in START_TEST() local
1398 struct libinput *li = dev->libinput; in START_TEST()
1400 if (!litest_has_palm_detect_size(dev)) in START_TEST()
1403 litest_disable_tap(dev->libinput_device); in START_TEST()
1408 litest_touch_down(dev, 0, 50, 50); in START_TEST()
1409 litest_touch_move_to(dev, 0, 50, 50, 99, 50, 10); in START_TEST()
1413 litest_touch_move_to(dev, 0, 99, 50, 99, 90, 10); in START_TEST()
1418 litest_touch_up(dev, 0); in START_TEST()
1426 struct litest_device *dev = litest_current_device(); in START_TEST() local
1427 struct libinput *li = dev->libinput; in START_TEST()
1429 if (!touchpad_has_top_palm_detect_size(dev)) in START_TEST()
1432 litest_disable_tap(dev->libinput_device); in START_TEST()
1437 litest_touch_down(dev, 0, 50, 50); in START_TEST()
1438 litest_touch_move_to(dev, 0, 50, 50, 0, 2, 10); in START_TEST()
1442 litest_touch_move_to(dev, 0, 0, 2, 50, 50, 10); in START_TEST()
1447 litest_touch_up(dev, 0); in START_TEST()
1455 struct litest_device *dev = litest_current_device(); in START_TEST() local
1456 struct libinput *li = dev->libinput; in START_TEST()
1458 if (!touchpad_has_top_palm_detect_size(dev)) in START_TEST()
1461 litest_enable_tap(dev->libinput_device); in START_TEST()
1465 litest_touch_down(dev, 0, 50, 1); in START_TEST()
1466 litest_touch_up(dev, 0); in START_TEST()
1476 struct litest_device *dev = litest_current_device(); in START_TEST() local
1477 struct libinput *li = dev->libinput; in START_TEST()
1479 if (!litest_has_palm_detect_size(dev)) in START_TEST()
1482 litest_enable_tap(dev->libinput_device); in START_TEST()
1486 litest_touch_down(dev, 0, 95, 5); in START_TEST()
1487 litest_touch_up(dev, 0); in START_TEST()
1493 litest_touch_down(dev, 0, 5, 5); in START_TEST()
1494 litest_touch_up(dev, 0); in START_TEST()
1500 litest_touch_down(dev, 0, 5, 99); in START_TEST()
1501 litest_touch_up(dev, 0); in START_TEST()
1507 litest_touch_down(dev, 0, 95, 99); in START_TEST()
1508 litest_touch_up(dev, 0); in START_TEST()
1518 struct litest_device *dev = litest_current_device(); in START_TEST() local
1519 struct libinput *li = dev->libinput; in START_TEST()
1521 if (!litest_has_palm_detect_size(dev)) in START_TEST()
1524 litest_enable_tap(dev->libinput_device); in START_TEST()
1525 litest_enable_buttonareas(dev); in START_TEST()
1529 litest_touch_down(dev, 0, 99, 99); in START_TEST()
1530 litest_touch_up(dev, 0); in START_TEST()
1536 litest_touch_down(dev, 0, 1, 99); in START_TEST()
1537 litest_touch_up(dev, 0); in START_TEST()
1543 litest_touch_down(dev, 0, 10, 99); in START_TEST()
1544 litest_touch_up(dev, 0); in START_TEST()
1556 litest_touch_down(dev, 0, 90, 99); in START_TEST()
1557 litest_touch_up(dev, 0); in START_TEST()
1573 struct litest_device *dev = litest_current_device(); in START_TEST() local
1574 struct libinput *li = dev->libinput; in START_TEST()
1576 if (!litest_has_palm_detect_size(dev)) in START_TEST()
1579 litest_enable_tap(dev->libinput_device); in START_TEST()
1580 litest_enable_clickfinger(dev); in START_TEST()
1584 litest_touch_down(dev, 0, 95, 5); in START_TEST()
1585 litest_touch_up(dev, 0); in START_TEST()
1591 litest_touch_down(dev, 0, 5, 5); in START_TEST()
1592 litest_touch_up(dev, 0); in START_TEST()
1598 litest_touch_down(dev, 0, 5, 99); in START_TEST()
1599 litest_touch_up(dev, 0); in START_TEST()
1605 litest_touch_down(dev, 0, 95, 99); in START_TEST()
1606 litest_touch_up(dev, 0); in START_TEST()
1616 struct litest_device *dev = litest_current_device(); in START_TEST() local
1617 struct libinput *li = dev->libinput; in START_TEST()
1619 if (!litest_has_palm_detect_size(dev) || in START_TEST()
1620 !litest_has_2fg_scroll(dev)) in START_TEST()
1623 litest_enable_2fg_scroll(dev); in START_TEST()
1629 litest_touch_down(dev, 0, 99, 50); in START_TEST()
1630 litest_touch_move_to(dev, 0, 99, 50, 99, 40, 45); in START_TEST()
1631 litest_touch_move_to(dev, 0, 99, 40, 99, 50, 45); in START_TEST()
1633 litest_touch_down(dev, 1, 50, 50); in START_TEST()
1636 litest_touch_move_two_touches(dev, 99, 50, 50, 50, 0, -20, 10); in START_TEST()
1643 struct litest_device *dev = litest_current_device(); in START_TEST() local
1644 struct libinput *li = dev->libinput; in START_TEST()
1646 if (!litest_has_palm_detect_size(dev) || in START_TEST()
1647 !litest_has_2fg_scroll(dev)) in START_TEST()
1650 litest_enable_2fg_scroll(dev); in START_TEST()
1656 litest_touch_down(dev, 0, 99, 50); in START_TEST()
1657 litest_touch_move_to(dev, 0, 99, 50, 99, 40, 10); in START_TEST()
1658 litest_touch_move_to(dev, 0, 99, 40, 99, 50, 10); in START_TEST()
1661 litest_touch_down(dev, 1, 1, 50); in START_TEST()
1662 litest_touch_move_to(dev, 1, 1, 50, 1, 40, 10); in START_TEST()
1663 litest_touch_move_to(dev, 1, 1, 40, 1, 50, 10); in START_TEST()
1666 litest_touch_move_two_touches(dev, 99, 50, 1, 50, 0, -20, 10); in START_TEST()
1672 touchpad_has_tool_palm(struct litest_device *dev) in touchpad_has_tool_palm() argument
1674 return libevdev_has_event_code(dev->evdev, EV_ABS, ABS_MT_TOOL_TYPE); in touchpad_has_tool_palm()
1679 struct litest_device *dev = litest_current_device(); in START_TEST() local
1680 struct libinput *li = dev->libinput; in START_TEST()
1682 if (!touchpad_has_tool_palm(dev)) in START_TEST()
1685 litest_touch_down(dev, 0, 50, 50); in START_TEST()
1686 litest_touch_move_to(dev, 0, 50, 50, 70, 70, 10); in START_TEST()
1689 litest_event(dev, EV_ABS, ABS_MT_TOOL_TYPE, MT_TOOL_PALM); in START_TEST()
1690 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
1691 litest_touch_move_to(dev, 0, 70, 70, 50, 40, 10); in START_TEST()
1692 litest_touch_up(dev, 0); in START_TEST()
1700 struct litest_device *dev = litest_current_device(); in START_TEST() local
1701 struct libinput *li = dev->libinput; in START_TEST()
1703 if (!touchpad_has_tool_palm(dev)) in START_TEST()
1706 litest_touch_down(dev, 0, 50, 50); in START_TEST()
1707 litest_touch_move_to(dev, 0, 50, 50, 70, 70, 10); in START_TEST()
1710 litest_event(dev, EV_ABS, ABS_MT_TOOL_TYPE, MT_TOOL_PALM); in START_TEST()
1711 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
1712 litest_touch_move_to(dev, 0, 70, 70, 50, 40, 10); in START_TEST()
1716 litest_event(dev, EV_ABS, ABS_MT_TOOL_TYPE, MT_TOOL_FINGER); in START_TEST()
1717 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
1718 litest_touch_move_to(dev, 0, 50, 40, 70, 70, 10); in START_TEST()
1719 litest_touch_up(dev, 0); in START_TEST()
1727 struct litest_device *dev = litest_current_device(); in START_TEST() local
1728 struct libinput *li = dev->libinput; in START_TEST()
1730 if (!touchpad_has_tool_palm(dev)) in START_TEST()
1733 litest_enable_tap(dev->libinput_device); in START_TEST()
1736 litest_push_event_frame(dev); in START_TEST()
1737 litest_event(dev, EV_ABS, ABS_MT_TOOL_TYPE, MT_TOOL_PALM); in START_TEST()
1738 litest_touch_down(dev, 0, 50, 50); in START_TEST()
1739 litest_pop_event_frame(dev); in START_TEST()
1742 litest_touch_move_to(dev, 0, 50, 50, 50, 80, 10); in START_TEST()
1747 litest_push_event_frame(dev); in START_TEST()
1748 litest_event(dev, EV_ABS, ABS_MT_TOOL_TYPE, MT_TOOL_FINGER); in START_TEST()
1749 litest_touch_up(dev, 0); in START_TEST()
1750 litest_pop_event_frame(dev); in START_TEST()
1755 litest_touch_down(dev, 0, 50, 50); in START_TEST()
1757 litest_touch_up(dev, 0); in START_TEST()
1769 struct litest_device *dev = litest_current_device(); in START_TEST() local
1770 struct libinput *li = dev->libinput; in START_TEST()
1772 if (!touchpad_has_tool_palm(dev)) in START_TEST()
1775 litest_enable_tap(dev->libinput_device); in START_TEST()
1778 litest_push_event_frame(dev); in START_TEST()
1779 litest_event(dev, EV_ABS, ABS_MT_TOOL_TYPE, MT_TOOL_PALM); in START_TEST()
1780 litest_touch_down(dev, 0, 50, 50); in START_TEST()
1781 litest_pop_event_frame(dev); in START_TEST()
1785 litest_touch_up(dev, 0); in START_TEST()
1794 touchpad_has_palm_pressure(struct litest_device *dev) in touchpad_has_palm_pressure() argument
1796 struct libevdev *evdev = dev->evdev; in touchpad_has_palm_pressure()
1806 struct litest_device *dev = litest_current_device(); in START_TEST() local
1807 struct libinput *li = dev->libinput; in START_TEST()
1813 if (!touchpad_has_palm_pressure(dev)) in START_TEST()
1816 litest_disable_tap(dev->libinput_device); in START_TEST()
1819 litest_touch_down_extended(dev, 0, 50, 99, axes); in START_TEST()
1820 litest_touch_move_to(dev, 0, 50, 50, 80, 99, 10); in START_TEST()
1821 litest_touch_up(dev, 0); in START_TEST()
1829 struct litest_device *dev = litest_current_device(); in START_TEST() local
1830 struct libinput *li = dev->libinput; in START_TEST()
1836 if (!touchpad_has_palm_pressure(dev)) in START_TEST()
1839 litest_enable_tap(dev->libinput_device); in START_TEST()
1840 litest_enable_clickfinger(dev); in START_TEST()
1844 litest_touch_down(dev, 0, 50, 80); in START_TEST()
1845 litest_touch_move_extended(dev, 0, 51, 99, axes); in START_TEST()
1846 litest_touch_up(dev, 0); in START_TEST()
1852 litest_touch_down(dev, 0, 50, 99); in START_TEST()
1853 litest_touch_up(dev, 0); in START_TEST()
1862 struct litest_device *dev = litest_current_device(); in START_TEST() local
1863 struct libinput *li = dev->libinput; in START_TEST()
1869 if (!touchpad_has_palm_pressure(dev)) in START_TEST()
1872 litest_enable_tap(dev->libinput_device); in START_TEST()
1873 litest_enable_clickfinger(dev); in START_TEST()
1877 litest_touch_down(dev, 0, 50, 99); in START_TEST()
1881 litest_touch_move_extended(dev, 0, 51, 99, axes); in START_TEST()
1882 litest_touch_up(dev, 0); in START_TEST()
1886 litest_touch_down(dev, 0, 50, 99); in START_TEST()
1887 litest_touch_up(dev, 0); in START_TEST()
1896 struct litest_device *dev = litest_current_device(); in START_TEST() local
1897 struct libinput *li = dev->libinput; in START_TEST()
1903 if (!touchpad_has_palm_pressure(dev)) in START_TEST()
1906 litest_enable_tap(dev->libinput_device); in START_TEST()
1907 litest_enable_clickfinger(dev); in START_TEST()
1911 litest_touch_down(dev, 0, 50, 99); in START_TEST()
1915 litest_touch_move_extended(dev, 0, 51, 99, axes); in START_TEST()
1920 litest_touch_down(dev, 1, 60, 50); in START_TEST()
1923 litest_touch_up(dev, 0); in START_TEST()
1930 litest_touch_up(dev, 1); in START_TEST()
1934 litest_touch_down(dev, 0, 50, 99); in START_TEST()
1935 litest_touch_up(dev, 0); in START_TEST()
1944 struct litest_device *dev = litest_current_device(); in START_TEST() local
1945 struct libinput *li = dev->libinput; in START_TEST()
1951 if (!touchpad_has_palm_pressure(dev)) in START_TEST()
1954 litest_enable_tap(dev->libinput_device); in START_TEST()
1958 litest_touch_down(dev, 0, 50, 99); in START_TEST()
1959 litest_touch_move(dev, 0, 51, 99); in START_TEST()
1960 litest_touch_move_extended(dev, 0, 55, 99, axes); in START_TEST()
1966 litest_touch_down(dev, 1, 50, 50); in START_TEST()
1967 litest_touch_up(dev, 1); in START_TEST()
1983 struct litest_device *dev = litest_current_device(); in START_TEST() local
1984 struct libinput *li = dev->libinput; in START_TEST()
1990 if (!touchpad_has_palm_pressure(dev)) in START_TEST()
1993 litest_disable_tap(dev->libinput_device); in START_TEST()
1996 litest_touch_down(dev, 0, 50, 50); in START_TEST()
1997 litest_touch_move_to(dev, 0, 50, 70, 80, 90, 10); in START_TEST()
2000 litest_touch_move_to_extended(dev, 0, 80, 90, 50, 20, axes, 10); in START_TEST()
2001 litest_touch_up(dev, 0); in START_TEST()
2009 struct litest_device *dev = litest_current_device(); in START_TEST() local
2010 struct libinput *li = dev->libinput; in START_TEST()
2016 if (!touchpad_has_palm_pressure(dev)) in START_TEST()
2019 litest_disable_tap(dev->libinput_device); in START_TEST()
2022 litest_touch_down(dev, 0, 80, 90); in START_TEST()
2023 litest_touch_move_to_extended(dev, 0, 80, 90, 50, 20, axes, 10); in START_TEST()
2024 litest_touch_move_to(dev, 0, 50, 20, 80, 90, 10); in START_TEST()
2025 litest_touch_up(dev, 0); in START_TEST()
2033 struct litest_device *dev = litest_current_device(); in START_TEST() local
2034 struct libinput *li = dev->libinput; in START_TEST()
2040 if (!touchpad_has_palm_pressure(dev) || in START_TEST()
2041 !litest_has_palm_detect_size(dev) || in START_TEST()
2042 !litest_has_2fg_scroll(dev)) in START_TEST()
2045 litest_enable_2fg_scroll(dev); in START_TEST()
2046 litest_disable_tap(dev->libinput_device); in START_TEST()
2049 litest_touch_down(dev, 0, 99, 50); in START_TEST()
2050 litest_touch_move_to_extended(dev, 0, 99, 50, 20, 50, axes, 20); in START_TEST()
2051 litest_touch_up(dev, 0); in START_TEST()
2100 struct litest_device *dev = litest_current_device(); in START_TEST() local
2101 struct libinput *li = dev->libinput; in START_TEST()
2107 if (!touchpad_has_palm_pressure(dev)) in START_TEST()
2110 litest_enable_clickfinger(dev); in START_TEST()
2111 litest_disable_tap(dev->libinput_device); in START_TEST()
2114 litest_touch_down_extended(dev, 0, 50, 95, axes); in START_TEST()
2115 litest_touch_down(dev, 1, 50, 50); in START_TEST()
2116 litest_button_click(dev, BTN_LEFT, true); in START_TEST()
2117 litest_button_click(dev, BTN_LEFT, false); in START_TEST()
2119 litest_touch_up(dev, 1); in START_TEST()
2120 litest_touch_up(dev, 0); in START_TEST()
2130 struct litest_device *dev = litest_current_device(); in START_TEST() local
2131 struct libinput *li = dev->libinput; in START_TEST()
2137 if (!touchpad_has_palm_pressure(dev)) in START_TEST()
2140 if (libevdev_get_num_slots(dev->evdev) < 3) in START_TEST()
2143 litest_enable_clickfinger(dev); in START_TEST()
2144 litest_disable_tap(dev->libinput_device); in START_TEST()
2147 litest_touch_down_extended(dev, 0, 50, 95, axes); in START_TEST()
2148 litest_touch_down(dev, 1, 50, 50); in START_TEST()
2149 litest_touch_down(dev, 2, 50, 60); in START_TEST()
2150 litest_button_click(dev, BTN_LEFT, true); in START_TEST()
2151 litest_button_click(dev, BTN_LEFT, false); in START_TEST()
2153 litest_touch_up(dev, 1); in START_TEST()
2154 litest_touch_up(dev, 2); in START_TEST()
2155 litest_touch_up(dev, 0); in START_TEST()
2165 touchpad_has_touch_size(struct litest_device *dev) in touchpad_has_touch_size() argument
2167 struct libevdev *evdev = dev->evdev; in touchpad_has_touch_size()
2180 struct litest_device *dev = litest_current_device(); in START_TEST() local
2181 struct libinput *li = dev->libinput; in START_TEST()
2189 if (!touchpad_has_touch_size(dev)) in START_TEST()
2192 litest_enable_clickfinger(dev); in START_TEST()
2193 litest_disable_tap(dev->libinput_device); in START_TEST()
2196 litest_touch_down_extended(dev, 0, 50, 95, axes); in START_TEST()
2197 litest_touch_down(dev, 1, 50, 50); in START_TEST()
2198 litest_button_click(dev, BTN_LEFT, true); in START_TEST()
2199 litest_button_click(dev, BTN_LEFT, false); in START_TEST()
2201 litest_touch_up(dev, 1); in START_TEST()
2202 litest_touch_up(dev, 0); in START_TEST()
2212 struct litest_device *dev = litest_current_device(); in START_TEST() local
2213 struct libinput *li = dev->libinput; in START_TEST()
2221 if (!touchpad_has_touch_size(dev)) in START_TEST()
2224 if (libevdev_get_num_slots(dev->evdev) < 3) in START_TEST()
2227 litest_enable_clickfinger(dev); in START_TEST()
2228 litest_disable_tap(dev->libinput_device); in START_TEST()
2231 litest_touch_down_extended(dev, 0, 50, 95, axes); in START_TEST()
2232 litest_touch_down(dev, 1, 50, 50); in START_TEST()
2233 litest_touch_down(dev, 2, 50, 60); in START_TEST()
2234 litest_button_click(dev, BTN_LEFT, true); in START_TEST()
2235 litest_button_click(dev, BTN_LEFT, false); in START_TEST()
2237 litest_touch_up(dev, 1); in START_TEST()
2238 litest_touch_up(dev, 2); in START_TEST()
2239 litest_touch_up(dev, 0); in START_TEST()
2249 struct litest_device *dev = litest_current_device(); in START_TEST() local
2250 struct libinput_device *d = dev->libinput_device; in START_TEST()
2251 struct libinput *li = dev->libinput; in START_TEST()
2254 if (libevdev_get_id_vendor(dev->evdev) == VENDOR_ID_APPLE && in START_TEST()
2255 libevdev_get_id_product(dev->evdev) == PRODUCT_ID_APPLE_APPLETOUCH) in START_TEST()
2262 litest_button_click(dev, BTN_LEFT, 1); in START_TEST()
2263 litest_button_click(dev, BTN_LEFT, 0); in START_TEST()
2272 litest_button_click(dev, BTN_RIGHT, 1); in START_TEST()
2273 litest_button_click(dev, BTN_RIGHT, 0); in START_TEST()
2281 if (libevdev_has_event_code(dev->evdev, in START_TEST()
2284 litest_button_click(dev, BTN_MIDDLE, 1); in START_TEST()
2285 litest_button_click(dev, BTN_MIDDLE, 0); in START_TEST()
2298 struct litest_device *dev = litest_current_device(); in START_TEST() local
2299 struct libinput_device *d = dev->libinput_device; in START_TEST()
2311 struct litest_device *dev = litest_current_device(); in START_TEST() local
2312 struct libinput_device *d = dev->libinput_device; in START_TEST()
2313 struct libinput *li = dev->libinput; in START_TEST()
2323 litest_touch_down(dev, 0, 10, 90); in START_TEST()
2324 litest_button_click(dev, BTN_LEFT, 1); in START_TEST()
2325 litest_button_click(dev, BTN_LEFT, 0); in START_TEST()
2326 litest_touch_up(dev, 0); in START_TEST()
2336 litest_touch_down(dev, 0, 90, 90); in START_TEST()
2337 litest_button_click(dev, BTN_LEFT, 1); in START_TEST()
2338 litest_button_click(dev, BTN_LEFT, 0); in START_TEST()
2339 litest_touch_up(dev, 0); in START_TEST()
2349 litest_touch_down(dev, 0, 50, 50); in START_TEST()
2350 litest_button_click(dev, BTN_LEFT, 1); in START_TEST()
2351 litest_button_click(dev, BTN_LEFT, 0); in START_TEST()
2352 litest_touch_up(dev, 0); in START_TEST()
2365 struct litest_device *dev = litest_current_device(); in START_TEST() local
2366 struct libinput_device *d = dev->libinput_device; in START_TEST()
2367 struct libinput *li = dev->libinput; in START_TEST()
2377 litest_touch_down(dev, 0, 10, 90); in START_TEST()
2378 litest_button_click(dev, BTN_LEFT, 1); in START_TEST()
2379 litest_button_click(dev, BTN_LEFT, 0); in START_TEST()
2380 litest_touch_up(dev, 0); in START_TEST()
2391 litest_touch_down(dev, 0, 10, 90); in START_TEST()
2392 litest_touch_down(dev, 1, 30, 90); in START_TEST()
2393 litest_button_click(dev, BTN_LEFT, 1); in START_TEST()
2394 litest_button_click(dev, BTN_LEFT, 0); in START_TEST()
2395 litest_touch_up(dev, 0); in START_TEST()
2396 litest_touch_up(dev, 1); in START_TEST()
2409 struct litest_device *dev = litest_current_device(); in START_TEST() local
2410 struct libinput_device *d = dev->libinput_device; in START_TEST()
2411 struct libinput *li = dev->libinput; in START_TEST()
2417 litest_enable_tap(dev->libinput_device); in START_TEST()
2424 litest_touch_down(dev, 0, 50, 50); in START_TEST()
2425 litest_touch_up(dev, 0); in START_TEST()
2443 struct litest_device *dev = litest_current_device(); in START_TEST() local
2444 struct libinput_device *d = dev->libinput_device; in START_TEST()
2445 struct libinput *li = dev->libinput; in START_TEST()
2451 litest_enable_tap(dev->libinput_device); in START_TEST()
2458 litest_touch_down(dev, 0, 50, 50); in START_TEST()
2459 litest_touch_down(dev, 1, 70, 50); in START_TEST()
2460 litest_touch_up(dev, 1); in START_TEST()
2461 litest_touch_up(dev, 0); in START_TEST()
2479 struct litest_device *dev = litest_current_device(); in START_TEST() local
2480 struct libinput_device *d = dev->libinput_device; in START_TEST()
2481 struct libinput *li = dev->libinput; in START_TEST()
2488 litest_button_click(dev, BTN_LEFT, 1); in START_TEST()
2494 litest_button_click(dev, BTN_LEFT, 0); in START_TEST()
2504 litest_button_click(dev, BTN_RIGHT, 1); in START_TEST()
2508 litest_button_click(dev, BTN_LEFT, 1); in START_TEST()
2514 litest_button_click(dev, BTN_RIGHT, 0); in START_TEST()
2515 litest_button_click(dev, BTN_LEFT, 0); in START_TEST()
2534 struct litest_device *dev = litest_current_device(); in START_TEST() local
2535 struct libinput_device *d = dev->libinput_device; in START_TEST()
2536 struct libinput *li = dev->libinput; in START_TEST()
2543 litest_touch_down(dev, 0, 10, 90); in START_TEST()
2544 litest_button_click(dev, BTN_LEFT, 1); in START_TEST()
2550 litest_button_click(dev, BTN_LEFT, 0); in START_TEST()
2551 litest_touch_up(dev, 0); in START_TEST()
2562 litest_touch_down(dev, 0, 90, 90); in START_TEST()
2563 litest_button_click(dev, BTN_LEFT, 1); in START_TEST()
2569 litest_button_click(dev, BTN_LEFT, 0); in START_TEST()
2570 litest_touch_up(dev, 0); in START_TEST()
2590 struct litest_device *dev = litest_current_device(); in START_TEST() local
2591 struct libinput_device *d = dev->libinput_device; in START_TEST()
2592 struct libinput *li = dev->libinput; in START_TEST()
2596 bool rotate = touchpad_has_rotation(dev->evdev); in START_TEST()
2606 litest_touch_down(dev, 0, 20, 80); in START_TEST()
2607 litest_touch_move_to(dev, 0, 20, 80, 80, 20, 20); in START_TEST()
2608 litest_touch_up(dev, 0); in START_TEST()
2642 hover_continue(struct litest_device *dev, unsigned int slot, in hover_continue() argument
2645 litest_event(dev, EV_ABS, ABS_MT_SLOT, slot); in hover_continue()
2646 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x); in hover_continue()
2647 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y); in hover_continue()
2648 litest_event(dev, EV_ABS, ABS_X, x); in hover_continue()
2649 litest_event(dev, EV_ABS, ABS_Y, y); in hover_continue()
2650 litest_event(dev, EV_ABS, ABS_PRESSURE, 10); in hover_continue()
2651 litest_event(dev, EV_ABS, ABS_TOOL_WIDTH, 6); in hover_continue()
2656 hover_start(struct litest_device *dev, unsigned int slot, in hover_start() argument
2661 litest_event(dev, EV_ABS, ABS_MT_SLOT, slot); in hover_start()
2662 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, ++tracking_id); in hover_start()
2663 hover_continue(dev, slot, x, y); in hover_start()
2669 struct litest_device *dev = litest_current_device(); in START_TEST() local
2670 struct libinput *li = dev->libinput; in START_TEST()
2677 hover_start(dev, 0, x, y); in START_TEST()
2678 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 1); in START_TEST()
2679 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2684 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x); in START_TEST()
2685 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y); in START_TEST()
2686 litest_event(dev, EV_ABS, ABS_X, x); in START_TEST()
2687 litest_event(dev, EV_ABS, ABS_Y, y); in START_TEST()
2688 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2691 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
2692 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2700 struct litest_device *dev = litest_current_device(); in START_TEST() local
2701 struct libinput *li = dev->libinput; in START_TEST()
2709 hover_start(dev, 0, x, y); in START_TEST()
2710 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 1); in START_TEST()
2711 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2716 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x); in START_TEST()
2717 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y); in START_TEST()
2718 litest_event(dev, EV_ABS, ABS_X, x); in START_TEST()
2719 litest_event(dev, EV_ABS, ABS_Y, y); in START_TEST()
2720 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2725 litest_event(dev, EV_ABS, ABS_X, x + 100); in START_TEST()
2726 litest_event(dev, EV_ABS, ABS_Y, y + 100); in START_TEST()
2727 litest_event(dev, EV_ABS, ABS_PRESSURE, 50); in START_TEST()
2728 litest_event(dev, EV_KEY, BTN_TOUCH, 1); in START_TEST()
2729 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2734 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x); in START_TEST()
2735 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y); in START_TEST()
2736 litest_event(dev, EV_ABS, ABS_X, x); in START_TEST()
2737 litest_event(dev, EV_ABS, ABS_Y, y); in START_TEST()
2738 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2753 hover_continue(dev, 0, x, y); in START_TEST()
2754 litest_event(dev, EV_ABS, ABS_PRESSURE, 0); in START_TEST()
2755 litest_event(dev, EV_KEY, BTN_TOUCH, 0); in START_TEST()
2756 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2761 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x); in START_TEST()
2762 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y); in START_TEST()
2763 litest_event(dev, EV_ABS, ABS_X, x); in START_TEST()
2764 litest_event(dev, EV_ABS, ABS_Y, y); in START_TEST()
2765 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2768 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
2769 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2777 struct litest_device *dev = litest_current_device(); in START_TEST() local
2778 struct libinput *li = dev->libinput; in START_TEST()
2786 hover_start(dev, 0, x, y); in START_TEST()
2787 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 1); in START_TEST()
2788 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2793 litest_event(dev, EV_ABS, ABS_X, x + 100); in START_TEST()
2794 litest_event(dev, EV_ABS, ABS_Y, y + 100); in START_TEST()
2795 litest_event(dev, EV_ABS, ABS_PRESSURE, 50); in START_TEST()
2796 litest_event(dev, EV_KEY, BTN_TOUCH, 1); in START_TEST()
2797 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2803 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x); in START_TEST()
2804 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y); in START_TEST()
2805 litest_event(dev, EV_ABS, ABS_X, x); in START_TEST()
2806 litest_event(dev, EV_ABS, ABS_Y, y); in START_TEST()
2807 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2816 hover_continue(dev, 0, x, y); in START_TEST()
2817 litest_event(dev, EV_ABS, ABS_PRESSURE, 0); in START_TEST()
2818 litest_event(dev, EV_KEY, BTN_TOUCH, 0); in START_TEST()
2819 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2824 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x); in START_TEST()
2825 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y); in START_TEST()
2826 litest_event(dev, EV_ABS, ABS_X, x); in START_TEST()
2827 litest_event(dev, EV_ABS, ABS_Y, y); in START_TEST()
2828 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2835 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
2836 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2841 litest_push_event_frame(dev); in START_TEST()
2842 litest_touch_down(dev, 0, 50, 50); in START_TEST()
2843 litest_event(dev, EV_ABS, ABS_PRESSURE, 50); in START_TEST()
2844 litest_pop_event_frame(dev); in START_TEST()
2845 litest_touch_move_to(dev, 0, 50, 50, 70, 70, 10); in START_TEST()
2846 litest_touch_up(dev, 0); in START_TEST()
2856 struct litest_device *dev = litest_current_device(); in START_TEST() local
2857 struct libinput *li = dev->libinput; in START_TEST()
2865 hover_start(dev, 0, x, y); in START_TEST()
2866 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 1); in START_TEST()
2867 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2870 hover_start(dev, 1, x, y); in START_TEST()
2871 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
2872 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 1); in START_TEST()
2873 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2876 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 0); in START_TEST()
2877 litest_event(dev, EV_KEY, BTN_TOOL_TRIPLETAP, 1); in START_TEST()
2878 litest_event(dev, EV_KEY, BTN_TOUCH, 1); in START_TEST()
2879 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2884 litest_event(dev, EV_ABS, ABS_MT_SLOT, 1); in START_TEST()
2885 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, -1); in START_TEST()
2886 litest_event(dev, EV_KEY, BTN_TOOL_TRIPLETAP, 0); in START_TEST()
2887 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 1); in START_TEST()
2888 litest_event(dev, EV_KEY, BTN_TOUCH, 0); in START_TEST()
2889 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2893 litest_event(dev, EV_ABS, ABS_PRESSURE, 50); in START_TEST()
2894 litest_event(dev, EV_KEY, BTN_TOUCH, 1); in START_TEST()
2895 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2900 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
2901 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x); in START_TEST()
2902 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y); in START_TEST()
2903 litest_event(dev, EV_ABS, ABS_X, x); in START_TEST()
2904 litest_event(dev, EV_ABS, ABS_Y, y); in START_TEST()
2905 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2912 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
2913 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, -1); in START_TEST()
2914 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
2915 litest_event(dev, EV_KEY, BTN_TOUCH, 0); in START_TEST()
2916 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2923 struct litest_device *dev = litest_current_device(); in START_TEST() local
2924 struct libinput *li = dev->libinput; in START_TEST()
2931 hover_start(dev, 0, x, y); in START_TEST()
2932 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 1); in START_TEST()
2933 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2935 hover_start(dev, 1, x + 500, y + 500); in START_TEST()
2936 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
2937 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 1); in START_TEST()
2938 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2943 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
2944 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x); in START_TEST()
2945 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y); in START_TEST()
2946 litest_event(dev, EV_ABS, ABS_MT_SLOT, 1); in START_TEST()
2947 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x + 500); in START_TEST()
2948 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y + 500); in START_TEST()
2949 litest_event(dev, EV_ABS, ABS_X, x); in START_TEST()
2950 litest_event(dev, EV_ABS, ABS_Y, y); in START_TEST()
2951 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2954 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 0); in START_TEST()
2955 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2959 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
2960 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2968 struct litest_device *dev = litest_current_device(); in START_TEST() local
2969 struct libinput *li = dev->libinput; in START_TEST()
2977 hover_start(dev, 0, x, y); in START_TEST()
2978 hover_start(dev, 1, x + 500, y + 500); in START_TEST()
2979 litest_event(dev, EV_ABS, ABS_PRESSURE, 50); in START_TEST()
2980 litest_event(dev, EV_KEY, BTN_TOUCH, 1); in START_TEST()
2981 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 1); in START_TEST()
2982 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2987 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
2988 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x); in START_TEST()
2989 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y); in START_TEST()
2990 litest_event(dev, EV_ABS, ABS_MT_SLOT, 1); in START_TEST()
2991 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, x + 500); in START_TEST()
2992 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, y + 500); in START_TEST()
2993 litest_event(dev, EV_ABS, ABS_X, x); in START_TEST()
2994 litest_event(dev, EV_ABS, ABS_Y, y); in START_TEST()
2995 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
2998 litest_event(dev, EV_ABS, ABS_PRESSURE, 0); in START_TEST()
2999 litest_event(dev, EV_KEY, BTN_TOUCH, 0); in START_TEST()
3000 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
3001 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
3011 struct litest_device *dev = litest_current_device(); in START_TEST() local
3012 struct libinput *li = dev->libinput; in START_TEST()
3014 litest_touch_down(dev, 0, 70, 50); in START_TEST()
3015 litest_touch_down(dev, 1, 50, 50); in START_TEST()
3017 litest_push_event_frame(dev); in START_TEST()
3018 litest_touch_move(dev, 0, 72, 50); in START_TEST()
3019 litest_touch_move(dev, 1, 52, 50); in START_TEST()
3020 litest_event(dev, EV_ABS, ABS_PRESSURE, 0); in START_TEST()
3021 litest_event(dev, EV_KEY, BTN_TOUCH, 0); in START_TEST()
3022 litest_pop_event_frame(dev); in START_TEST()
3024 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
3025 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, -1); in START_TEST()
3026 litest_event(dev, EV_ABS, ABS_MT_SLOT, 1); in START_TEST()
3027 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, -1); in START_TEST()
3028 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 0); in START_TEST()
3029 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
3037 struct litest_device *dev = litest_current_device(); in START_TEST() local
3038 struct libinput *li = dev->libinput; in START_TEST()
3042 litest_hover_start(dev, 0, 50, 50); in START_TEST()
3043 litest_hover_move_to(dev, 0, 50, 50, 70, 70, 10); in START_TEST()
3044 litest_hover_end(dev, 0); in START_TEST()
3052 struct litest_device *dev = litest_current_device(); in START_TEST() local
3053 struct libinput *li = dev->libinput; in START_TEST()
3058 litest_hover_start(dev, 0, 50, 50); in START_TEST()
3060 litest_hover_move_to(dev, 0, 50, 50, 70, 70, 10); in START_TEST()
3065 litest_touch_move_to(dev, 0, 70, 70, 50, 50, 10); in START_TEST()
3072 litest_hover_move_to(dev, 0, 50, 50, 70, 70, 10); in START_TEST()
3073 litest_hover_end(dev, 0); in START_TEST()
3081 struct litest_device *dev = litest_current_device(); in START_TEST() local
3082 struct libinput *li = dev->libinput; in START_TEST()
3087 litest_hover_start(dev, 0, 50, 50); in START_TEST()
3092 litest_hover_move_to(dev, 0, 50, 50, 70, 70, 10); in START_TEST()
3097 litest_touch_move_to(dev, 0, 70, 70, 50, 50, 10); in START_TEST()
3105 litest_hover_end(dev, 0); in START_TEST()
3108 litest_touch_down(dev, 0, 50, 50); in START_TEST()
3109 litest_touch_move_to(dev, 0, 50, 50, 70, 70, 10); in START_TEST()
3110 litest_touch_up(dev, 0); in START_TEST()
3118 struct litest_device *dev = litest_current_device(); in START_TEST() local
3119 struct libinput *li = dev->libinput; in START_TEST()
3124 litest_push_event_frame(dev); in START_TEST()
3125 litest_hover_start(dev, 0, 50, 50); in START_TEST()
3126 litest_hover_start(dev, 1, 50, 50); in START_TEST()
3127 litest_touch_down(dev, 2, 50, 50); in START_TEST()
3128 litest_pop_event_frame(dev); in START_TEST()
3133 litest_push_event_frame(dev); in START_TEST()
3134 litest_hover_move(dev, 0, 55, 55); in START_TEST()
3135 litest_hover_end(dev, 1); in START_TEST()
3136 litest_touch_up(dev, 2); in START_TEST()
3137 litest_pop_event_frame(dev); in START_TEST()
3142 litest_touch_move_to(dev, 0, 50, 50, 70, 70, 10); in START_TEST()
3144 litest_touch_up(dev, 0); in START_TEST()
3152 struct litest_device *dev = litest_current_device(); in START_TEST() local
3153 struct libinput *li = dev->libinput; in START_TEST()
3158 litest_push_event_frame(dev); in START_TEST()
3159 litest_hover_start(dev, 0, 25, 25); in START_TEST()
3160 litest_hover_start(dev, 1, 50, 50); in START_TEST()
3161 litest_pop_event_frame(dev); in START_TEST()
3163 litest_hover_move_two_touches(dev, 25, 25, 50, 50, 50, 50, 10); in START_TEST()
3165 litest_push_event_frame(dev); in START_TEST()
3166 litest_hover_end(dev, 0); in START_TEST()
3167 litest_hover_end(dev, 1); in START_TEST()
3168 litest_pop_event_frame(dev); in START_TEST()
3176 struct litest_device *dev = litest_current_device(); in START_TEST() local
3177 struct libinput *li = dev->libinput; in START_TEST()
3183 litest_push_event_frame(dev); in START_TEST()
3184 litest_hover_start(dev, 0, 25, 25); in START_TEST()
3185 litest_touch_down(dev, 1, 50, 50); in START_TEST()
3186 litest_pop_event_frame(dev); in START_TEST()
3189 litest_push_event_frame(dev); in START_TEST()
3190 litest_hover_move(dev, 0, 25 + 5 * i, 25 + 5 * i); in START_TEST()
3191 litest_touch_move(dev, 1, 50 + 5 * i, 50 - 5 * i); in START_TEST()
3192 litest_pop_event_frame(dev); in START_TEST()
3195 litest_push_event_frame(dev); in START_TEST()
3196 litest_hover_end(dev, 0); in START_TEST()
3197 litest_touch_up(dev, 1); in START_TEST()
3198 litest_pop_event_frame(dev); in START_TEST()
3206 struct litest_device *dev = litest_current_device(); in START_TEST() local
3207 struct libinput *li = dev->libinput; in START_TEST()
3209 litest_enable_tap(dev->libinput_device); in START_TEST()
3213 litest_hover_start(dev, 0, 50, 50); in START_TEST()
3214 litest_hover_end(dev, 0); in START_TEST()
3495 struct litest_device *dev; in START_TEST() local
3502 dev = litest_current_device(); in START_TEST()
3503 libinput1 = dev->libinput; in START_TEST()
3505 litest_disable_tap(dev->libinput_device); in START_TEST()
3507 litest_touch_down(dev, 0, x, y); in START_TEST()
3508 litest_touch_up(dev, 0); in START_TEST()
3515 libevdev_uinput_get_devnode(dev->uinput)); in START_TEST()
3522 litest_touch_down(dev, 0, x, y); in START_TEST()
3523 litest_touch_move_to(dev, 0, x, y, 70, 70, 10); in START_TEST()
3524 litest_touch_up(dev, 0); in START_TEST()
3555 struct litest_device *dev = litest_current_device(); in START_TEST() local
3563 if (!libevdev_has_event_code(dev->evdev, EV_KEY, map[finger_count])) in START_TEST()
3568 if (litest_slot_count(dev) >= finger_count) { in START_TEST()
3569 litest_touch_down(dev, i, 20 + 10 * i, 30); in START_TEST()
3571 litest_event(dev, EV_KEY, map[finger_count], 1); in START_TEST()
3575 litest_drain_events(dev->libinput); in START_TEST()
3580 libevdev_uinput_get_devnode(dev->uinput)); in START_TEST()
3585 if (litest_slot_count(dev) < finger_count) in START_TEST()
3587 litest_touch_move(dev, i, 20 + 10 * i + x, 30); in START_TEST()
3594 if (litest_slot_count(dev) >= finger_count) { in START_TEST()
3595 litest_touch_up(dev, i); in START_TEST()
3597 litest_event(dev, EV_KEY, map[finger_count], 0); in START_TEST()
3628 struct litest_device *dev = litest_current_device(); in START_TEST() local
3629 struct libinput *li = dev->libinput; in START_TEST()
3632 litest_disable_tap(dev->libinput_device); in START_TEST()
3634 litest_touch_down(dev, 0, 10, 10); in START_TEST()
3639 litest_touch_move(dev, 0, 10 + 0.1 * i, 10 + 0.1 * i); in START_TEST()
3642 litest_touch_up(dev, 0); in START_TEST()
3643 litest_touch_down(dev, 0, 50, 50); in START_TEST()
3644 litest_touch_down(dev, 1, 70, 50); in START_TEST()
3649 litest_touch_up(dev, 0); in START_TEST()
3650 litest_touch_up(dev, 1); in START_TEST()
3653 litest_touch_down(dev, 0, 50, 50); in START_TEST()
3654 litest_touch_down(dev, 1, 70, 50); in START_TEST()
3655 litest_touch_move_two_touches(dev, 50, 50, 70, 50, 0, -20, 10); in START_TEST()
3656 litest_touch_up(dev, 0); in START_TEST()
3657 litest_touch_up(dev, 1); in START_TEST()
3661 litest_touch_down(dev, 0, 50, 50); in START_TEST()
3663 litest_touch_move(dev, 0, 10 + 0.1 * i, 10 + 0.1 * i); in START_TEST()
3664 litest_touch_up(dev, 0); in START_TEST()
4499 struct litest_device *dev = litest_current_device(); in START_TEST() local
4500 struct libinput_device *device = dev->libinput_device; in START_TEST()
4504 if (libevdev_get_id_vendor(dev->evdev) == VENDOR_ID_WACOM || in START_TEST()
4505 libevdev_get_id_bustype(dev->evdev) == BUS_BLUETOOTH) { in START_TEST()
4530 struct litest_device *dev = litest_current_device(); in START_TEST() local
4531 struct libinput_device *device = dev->libinput_device; in START_TEST()
4554 disable_dwt(struct litest_device *dev) in disable_dwt() argument
4558 status = libinput_device_config_dwt_set_enabled(dev->libinput_device, in disable_dwt()
4564 enable_dwt(struct litest_device *dev) in enable_dwt() argument
4568 status = libinput_device_config_dwt_set_enabled(dev->libinput_device, in enable_dwt()
5095 has_thumb_detect(struct litest_device *dev) in has_thumb_detect() argument
5099 if (libinput_device_get_size(dev->libinput_device, &w, &h) != 0) in has_thumb_detect()
5107 struct litest_device *dev = litest_current_device(); in START_TEST() local
5108 struct libinput *li = dev->libinput; in START_TEST()
5110 if (!has_thumb_detect(dev)) in START_TEST()
5113 litest_disable_tap(dev->libinput_device); in START_TEST()
5118 litest_touch_down(dev, 0, 50, 99); in START_TEST()
5119 litest_touch_move_to(dev, 0, 55, 99, 60, 99, 50); in START_TEST()
5123 litest_touch_move_to(dev, 0, 60, 99, 90, 99, 30); in START_TEST()
5124 litest_touch_up(dev, 0); in START_TEST()
5132 struct litest_device *dev = litest_current_device(); in START_TEST() local
5133 struct libinput *li = dev->libinput; in START_TEST()
5135 if (!has_thumb_detect(dev)) in START_TEST()
5138 litest_disable_tap(dev->libinput_device); in START_TEST()
5143 litest_touch_down(dev, 0, 50, 99); in START_TEST()
5144 litest_touch_move_to(dev, 0, 50, 99, 90, 99, 30); in START_TEST()
5148 litest_touch_move_to(dev, 0, 90, 99, 60, 99, 50); in START_TEST()
5149 litest_touch_up(dev, 0); in START_TEST()
5157 struct litest_device *dev = litest_current_device(); in START_TEST() local
5158 struct libinput *li = dev->libinput; in START_TEST()
5160 litest_disable_tap(dev->libinput_device); in START_TEST()
5161 litest_enable_2fg_scroll(dev); in START_TEST()
5163 if (libevdev_get_num_slots(dev->evdev) < 3) in START_TEST()
5169 litest_touch_down(dev, 0, 50, 20); in START_TEST()
5170 litest_touch_move_to(dev, 0, 50, 20, 70, 99, 15); in START_TEST()
5171 litest_touch_up(dev, 0); in START_TEST()
5177 litest_touch_down(dev, 1, 50, 50); in START_TEST()
5178 litest_touch_down(dev, 2, 55, 50); in START_TEST()
5181 litest_touch_move_to(dev, 1, 50, y, 50, y + 1, 1); in START_TEST()
5182 litest_touch_move_to(dev, 2, 55, y, 50, y + 1, 1); in START_TEST()
5185 litest_touch_up(dev, 1); in START_TEST()
5186 litest_touch_up(dev, 2); in START_TEST()
5195 struct litest_device *dev = litest_current_device(); in START_TEST() local
5196 struct libinput *li = dev->libinput; in START_TEST()
5199 if (!has_thumb_detect(dev)) in START_TEST()
5202 litest_disable_tap(dev->libinput_device); in START_TEST()
5204 libinput_device_config_click_set_method(dev->libinput_device, in START_TEST()
5209 litest_touch_down(dev, 0, 50, 99); /* thumb */ in START_TEST()
5211 litest_touch_down(dev, 1, 60, 50); in START_TEST()
5213 litest_button_click(dev, BTN_LEFT, true); in START_TEST()
5224 litest_button_click(dev, BTN_LEFT, false); in START_TEST()
5225 litest_touch_up(dev, 0); in START_TEST()
5226 litest_touch_up(dev, 1); in START_TEST()
5230 litest_touch_down(dev, 1, 60, 99); /* thumb */ in START_TEST()
5232 litest_touch_down(dev, 0, 50, 50); in START_TEST()
5234 litest_button_click(dev, BTN_LEFT, true); in START_TEST()
5249 struct litest_device *dev = litest_current_device(); in START_TEST() local
5250 struct libinput *li = dev->libinput; in START_TEST()
5253 if (!has_thumb_detect(dev)) in START_TEST()
5256 litest_disable_tap(dev->libinput_device); in START_TEST()
5258 libinput_device_config_click_set_method(dev->libinput_device, in START_TEST()
5263 litest_touch_down(dev, 0, 90, 99); /* thumb */ in START_TEST()
5265 litest_button_click(dev, BTN_LEFT, true); in START_TEST()
5282 struct litest_device *dev = litest_current_device(); in START_TEST() local
5283 struct libinput *li = dev->libinput; in START_TEST()
5285 litest_disable_tap(dev->libinput_device); in START_TEST()
5286 litest_enable_clickfinger(dev); in START_TEST()
5288 if (!has_thumb_detect(dev)) in START_TEST()
5294 litest_touch_down(dev, 0, 50, 99); in START_TEST()
5303 litest_touch_down(dev, 1, 70, 99); in START_TEST()
5306 litest_touch_move_two_touches(dev, 50, 99, 70, 99, 0, -20, 10); in START_TEST()
5307 litest_touch_up(dev, 0); in START_TEST()
5308 litest_touch_up(dev, 1); in START_TEST()
5316 struct litest_device *dev = litest_current_device(); in START_TEST() local
5317 struct libinput *li = dev->libinput; in START_TEST()
5325 litest_enable_clickfinger(dev); in START_TEST()
5328 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
5329 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, 1); in START_TEST()
5330 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, 1200); in START_TEST()
5331 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, 3200); in START_TEST()
5332 litest_event(dev, EV_ABS, ABS_MT_PRESSURE, 78); in START_TEST()
5333 litest_event(dev, EV_ABS, ABS_X, 1200); in START_TEST()
5334 litest_event(dev, EV_ABS, ABS_Y, 3200); in START_TEST()
5335 litest_event(dev, EV_ABS, ABS_PRESSURE, 78); in START_TEST()
5336 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 1); in START_TEST()
5337 litest_event(dev, EV_KEY, BTN_TOUCH, 1); in START_TEST()
5338 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5343 litest_event(dev, EV_ABS, ABS_MT_SLOT, 1); in START_TEST()
5344 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, 1); in START_TEST()
5345 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, 3500); in START_TEST()
5346 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, 3500); in START_TEST()
5347 litest_event(dev, EV_ABS, ABS_MT_PRESSURE, 73); in START_TEST()
5348 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
5349 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 1); in START_TEST()
5350 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5355 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
5356 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, 4000); in START_TEST()
5357 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, 4000); in START_TEST()
5358 litest_event(dev, EV_ABS, ABS_MT_PRESSURE, 78); in START_TEST()
5359 litest_event(dev, EV_ABS, ABS_MT_SLOT, 1); in START_TEST()
5360 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, -1); in START_TEST()
5361 litest_event(dev, EV_ABS, ABS_X, 4000); in START_TEST()
5362 litest_event(dev, EV_ABS, ABS_Y, 4000); in START_TEST()
5363 litest_event(dev, EV_ABS, ABS_PRESSURE, 78); in START_TEST()
5364 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 0); in START_TEST()
5365 litest_event(dev, EV_KEY, BTN_TOOL_TRIPLETAP, 1); in START_TEST()
5366 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5371 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
5372 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, 4000); in START_TEST()
5373 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, 4000); in START_TEST()
5374 litest_event(dev, EV_ABS, ABS_MT_PRESSURE, 78); in START_TEST()
5375 litest_event(dev, EV_ABS, ABS_MT_SLOT, 1); in START_TEST()
5376 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, 3); in START_TEST()
5377 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, 3500); in START_TEST()
5378 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, 3500); in START_TEST()
5379 litest_event(dev, EV_ABS, ABS_MT_PRESSURE, 73); in START_TEST()
5380 litest_event(dev, EV_ABS, ABS_X, 4000); in START_TEST()
5381 litest_event(dev, EV_ABS, ABS_Y, 4000); in START_TEST()
5382 litest_event(dev, EV_ABS, ABS_PRESSURE, 78); in START_TEST()
5383 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5388 litest_event(dev, EV_KEY, BTN_LEFT, 1); in START_TEST()
5389 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5391 litest_event(dev, EV_KEY, BTN_LEFT, 0); in START_TEST()
5392 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5408 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
5409 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, -1); in START_TEST()
5410 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
5411 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, -1); in START_TEST()
5412 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
5413 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 0); in START_TEST()
5414 litest_event(dev, EV_KEY, BTN_TOOL_TRIPLETAP, 0); in START_TEST()
5415 litest_event(dev, EV_KEY, BTN_TOUCH, 0); in START_TEST()
5416 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5422 struct litest_device *dev = litest_current_device(); in START_TEST() local
5423 struct libinput *li = dev->libinput; in START_TEST()
5431 litest_enable_clickfinger(dev); in START_TEST()
5434 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
5435 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, 1); in START_TEST()
5436 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, 2200); in START_TEST()
5437 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, 3200); in START_TEST()
5438 litest_event(dev, EV_ABS, ABS_MT_PRESSURE, 78); in START_TEST()
5439 litest_event(dev, EV_ABS, ABS_X, 2200); in START_TEST()
5440 litest_event(dev, EV_ABS, ABS_Y, 3200); in START_TEST()
5441 litest_event(dev, EV_ABS, ABS_PRESSURE, 78); in START_TEST()
5442 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 1); in START_TEST()
5443 litest_event(dev, EV_KEY, BTN_TOUCH, 1); in START_TEST()
5444 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5449 litest_event(dev, EV_ABS, ABS_MT_SLOT, 1); in START_TEST()
5450 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, 1); in START_TEST()
5451 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, 3500); in START_TEST()
5452 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, 3500); in START_TEST()
5453 litest_event(dev, EV_ABS, ABS_MT_PRESSURE, 73); in START_TEST()
5454 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
5455 litest_event(dev, EV_KEY, BTN_TOOL_TRIPLETAP, 1); in START_TEST()
5456 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5462 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
5463 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, 4000); in START_TEST()
5464 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, 4000); in START_TEST()
5465 litest_event(dev, EV_ABS, ABS_MT_PRESSURE, 78); in START_TEST()
5466 litest_event(dev, EV_ABS, ABS_MT_SLOT, 1); in START_TEST()
5467 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, -1); in START_TEST()
5468 litest_event(dev, EV_ABS, ABS_X, 4000); in START_TEST()
5469 litest_event(dev, EV_ABS, ABS_Y, 4000); in START_TEST()
5470 litest_event(dev, EV_ABS, ABS_PRESSURE, 78); in START_TEST()
5471 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5476 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
5477 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, 4000); in START_TEST()
5478 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, 4000); in START_TEST()
5479 litest_event(dev, EV_ABS, ABS_MT_PRESSURE, 78); in START_TEST()
5480 litest_event(dev, EV_ABS, ABS_MT_SLOT, 1); in START_TEST()
5481 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, 3); in START_TEST()
5482 litest_event(dev, EV_ABS, ABS_MT_POSITION_X, 3500); in START_TEST()
5483 litest_event(dev, EV_ABS, ABS_MT_POSITION_Y, 3500); in START_TEST()
5484 litest_event(dev, EV_ABS, ABS_MT_PRESSURE, 73); in START_TEST()
5485 litest_event(dev, EV_ABS, ABS_X, 4000); in START_TEST()
5486 litest_event(dev, EV_ABS, ABS_Y, 4000); in START_TEST()
5487 litest_event(dev, EV_ABS, ABS_PRESSURE, 78); in START_TEST()
5488 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5494 litest_event(dev, EV_KEY, BTN_LEFT, 1); in START_TEST()
5495 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5497 litest_event(dev, EV_KEY, BTN_LEFT, 0); in START_TEST()
5498 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5514 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
5515 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, -1); in START_TEST()
5516 litest_event(dev, EV_ABS, ABS_MT_SLOT, 0); in START_TEST()
5517 litest_event(dev, EV_ABS, ABS_MT_TRACKING_ID, -1); in START_TEST()
5518 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
5519 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 0); in START_TEST()
5520 litest_event(dev, EV_KEY, BTN_TOOL_TRIPLETAP, 0); in START_TEST()
5521 litest_event(dev, EV_KEY, BTN_TOUCH, 0); in START_TEST()
5522 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5528 struct litest_device *dev = litest_current_device(); in START_TEST() local
5529 struct libinput *li = dev->libinput; in START_TEST()
5545 litest_touch_down(dev, 0, start[0][0], start[0][1]); in START_TEST()
5547 litest_touch_down(dev, 1, start[1][0], start[1][1]); in START_TEST()
5550 litest_touch_move_two_touches(dev, in START_TEST()
5559 litest_push_event_frame(dev); in START_TEST()
5560 litest_touch_up(dev, first); in START_TEST()
5561 litest_touch_move(dev, second, in START_TEST()
5564 litest_pop_event_frame(dev); in START_TEST()
5570 litest_touch_move_to(dev, second, in START_TEST()
5579 litest_touch_move_to(dev, second, 50, 21, 50, 11, 20); in START_TEST()
5592 litest_touch_up(dev, second); in START_TEST()
5599 struct litest_device *dev = litest_current_device(); in START_TEST() local
5603 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 1); in START_TEST()
5604 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
5608 libevdev_uinput_get_devnode(dev->uinput)); in START_TEST()
5611 litest_touch_down(dev, 0, 50, 50); in START_TEST()
5612 litest_touch_move_to(dev, 0, 50, 50, 70, 50, 10); in START_TEST()
5622 struct litest_device *dev = litest_current_device(); in START_TEST() local
5623 struct libinput *li = dev->libinput; in START_TEST()
5627 litest_disable_tap(dev->libinput_device); in START_TEST()
5631 litest_touch_down(dev, 0, 50, 50); in START_TEST()
5632 litest_touch_move_to(dev, 0, 50, 50, 80, 50, 20); in START_TEST()
5633 litest_touch_up(dev, 0); in START_TEST()
5656 struct litest_device *dev = litest_current_device(); in START_TEST() local
5657 struct libinput *li = dev->libinput; in START_TEST()
5661 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5662 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5668 litest_touch_move_to(dev, 0, 90, 30, 20, 80, 1); in START_TEST()
5672 litest_touch_move_to(dev, 0, 20, 80, 21, 81, 10); in START_TEST()
5673 litest_touch_up(dev, 0); in START_TEST()
5695 struct litest_device *dev = litest_current_device(); in START_TEST() local
5696 struct libinput *li = dev->libinput; in START_TEST()
5700 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5701 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5708 litest_touch_move(dev, 0, 90, 88); in START_TEST()
5712 litest_touch_move_to(dev, 0, 90, 88, 91, 89, 10); in START_TEST()
5713 litest_touch_up(dev, 0); in START_TEST()
5735 struct litest_device *dev = litest_current_device(); in START_TEST() local
5737 struct libinput *li = dev->libinput; in START_TEST()
5743 dev->libinput_device, in START_TEST()
5747 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5748 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5749 litest_touch_up(dev, 0); in START_TEST()
5755 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5756 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5757 litest_touch_up(dev, 0); in START_TEST()
5763 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5764 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5765 litest_touch_up(dev, 0); in START_TEST()
5772 struct litest_device *dev = litest_current_device(); in START_TEST() local
5774 struct libinput *li = dev->libinput; in START_TEST()
5780 dev->libinput_device, in START_TEST()
5784 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5785 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5786 litest_touch_up(dev, 0); in START_TEST()
5798 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5799 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5800 litest_touch_up(dev, 0); in START_TEST()
5806 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5807 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5808 litest_touch_up(dev, 0); in START_TEST()
5815 struct litest_device *dev = litest_current_device(); in START_TEST() local
5817 struct libinput *li = dev->libinput; in START_TEST()
5823 dev->libinput_device, in START_TEST()
5827 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5828 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5829 litest_touch_up(dev, 0); in START_TEST()
5836 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5837 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5838 litest_touch_up(dev, 0); in START_TEST()
5844 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5845 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5846 litest_touch_up(dev, 0); in START_TEST()
5852 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5853 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5854 litest_touch_up(dev, 0); in START_TEST()
5861 struct litest_device *dev = litest_current_device(); in START_TEST() local
5863 struct libinput *li = dev->libinput; in START_TEST()
5869 dev->libinput_device, in START_TEST()
5873 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5874 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5875 litest_touch_up(dev, 0); in START_TEST()
5888 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5889 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5890 litest_touch_up(dev, 0); in START_TEST()
5896 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5897 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5898 litest_touch_up(dev, 0); in START_TEST()
5904 litest_touch_down(dev, 0, 20, 30); in START_TEST()
5905 litest_touch_move_to(dev, 0, 20, 30, 90, 30, 10); in START_TEST()
5906 litest_touch_up(dev, 0); in START_TEST()
5912 touchpad_has_pressure(struct litest_device *dev) in touchpad_has_pressure() argument
5914 struct libevdev *evdev = dev->evdev; in touchpad_has_pressure()
5928 struct litest_device *dev = litest_current_device(); in START_TEST() local
5929 struct libinput *li = dev->libinput; in START_TEST()
5938 if (!touchpad_has_pressure(dev)) in START_TEST()
5946 litest_touch_down_extended(dev, 0, 50, 50, axes); in START_TEST()
5947 litest_touch_move_to_extended(dev, 0, 50, 50, 80, 80, axes, in START_TEST()
5949 litest_touch_up(dev, 0); in START_TEST()
5962 struct litest_device *dev = litest_current_device(); in START_TEST() local
5963 struct libinput *li = dev->libinput; in START_TEST()
5970 if (!touchpad_has_pressure(dev)) in START_TEST()
5975 litest_touch_down(dev, 0, 30, 50); in START_TEST()
5976 litest_touch_down_extended(dev, 1, 50, 50, axes); in START_TEST()
5978 litest_touch_move_to(dev, 0, 50, 50, 80, 80, 10); in START_TEST()
5982 litest_touch_move_to_extended(dev, 1, 50, 50, 80, 80, axes, 10); in START_TEST()
5984 litest_touch_move_to(dev, 0, 80, 80, 20, 50, 10); in START_TEST()
5985 litest_touch_move_to_extended(dev, 1, 80, 80, 50, 50, axes, 10); in START_TEST()
5993 struct litest_device *dev = litest_current_device(); in START_TEST() local
5994 struct libinput *li = dev->libinput; in START_TEST()
6001 if (!touchpad_has_pressure(dev)) in START_TEST()
6014 litest_touch_down_extended(dev, 0, 50, 50, axes); in START_TEST()
6016 litest_event(dev, EV_KEY, BTN_TOOL_FINGER, 0); in START_TEST()
6017 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 1); in START_TEST()
6018 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
6020 litest_touch_move_to_extended(dev, 0, 50, 50, 80, 80, axes, 10); in START_TEST()
6027 struct litest_device *dev = litest_current_device(); in START_TEST() local
6028 struct libinput *li = dev->libinput; in START_TEST()
6035 if (!touchpad_has_pressure(dev)) in START_TEST()
6038 litest_enable_tap(dev->libinput_device); in START_TEST()
6041 litest_touch_down_extended(dev, 0, 50, 50, axes); in START_TEST()
6043 litest_touch_up(dev, 0); in START_TEST()
6050 struct litest_device *dev = litest_current_device(); in START_TEST() local
6051 struct libinput *li = dev->libinput; in START_TEST()
6058 if (!touchpad_has_pressure(dev)) in START_TEST()
6061 litest_enable_tap(dev->libinput_device); in START_TEST()
6065 litest_touch_down_extended(dev, 0, 40, 50, axes); in START_TEST()
6066 litest_touch_down_extended(dev, 1, 50, 50, axes); in START_TEST()
6068 litest_touch_up(dev, 0); in START_TEST()
6069 litest_touch_up(dev, 1); in START_TEST()
6076 struct litest_device *dev = litest_current_device(); in START_TEST() local
6077 struct libinput *li = dev->libinput; in START_TEST()
6085 if (!touchpad_has_pressure(dev)) in START_TEST()
6088 litest_enable_tap(dev->libinput_device); in START_TEST()
6092 litest_touch_down(dev, 0, 40, 50); in START_TEST()
6093 litest_touch_down_extended(dev, 1, 50, 50, axes); in START_TEST()
6095 litest_touch_up(dev, 0); in START_TEST()
6096 litest_touch_up(dev, 1); in START_TEST()
6118 struct litest_device *dev = litest_current_device(); in START_TEST() local
6119 struct libinput *li = dev->libinput; in START_TEST()
6128 if (libevdev_get_num_slots(dev->evdev) != 2) in START_TEST()
6131 if (!touchpad_has_pressure(dev)) in START_TEST()
6134 litest_enable_tap(dev->libinput_device); in START_TEST()
6138 litest_touch_down_extended(dev, 0, 40, 50, axes); in START_TEST()
6139 litest_touch_down_extended(dev, 1, 45, 50, axes); in START_TEST()
6144 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 0); in START_TEST()
6145 litest_event(dev, EV_KEY, BTN_TOOL_TRIPLETAP, 1); in START_TEST()
6146 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
6150 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 1); in START_TEST()
6151 litest_event(dev, EV_KEY, BTN_TOOL_TRIPLETAP, 0); in START_TEST()
6152 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
6156 litest_touch_move(dev, 0, 40, 50); in START_TEST()
6160 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 0); in START_TEST()
6161 litest_event(dev, EV_KEY, BTN_TOOL_TRIPLETAP, 1); in START_TEST()
6162 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
6165 litest_event(dev, EV_KEY, BTN_TOOL_DOUBLETAP, 1); in START_TEST()
6166 litest_event(dev, EV_KEY, BTN_TOOL_TRIPLETAP, 0); in START_TEST()
6167 litest_event(dev, EV_SYN, SYN_REPORT, 0); in START_TEST()
6184 struct litest_device *dev = litest_current_device(); in START_TEST() local
6185 struct libinput *li = dev->libinput; in START_TEST()
6191 litest_enable_2fg_scroll(dev); in START_TEST()
6194 litest_touch_down(dev, 0, 40, 50); in START_TEST()
6195 litest_touch_down(dev, 1, 60, 50); in START_TEST()
6196 litest_touch_move_two_touches(dev, 40, 50, 60, 50, 0, -20, 10); in START_TEST()
6199 litest_push_event_frame(dev); in START_TEST()
6200 litest_touch_move_extended(dev, 0, 40, 31, axes); in START_TEST()
6201 litest_touch_move_extended(dev, 1, 60, 31, axes); in START_TEST()
6202 litest_pop_event_frame(dev); in START_TEST()
6207 litest_push_event_frame(dev); in START_TEST()
6208 litest_touch_move_extended(dev, 0, 40, 35, axes); in START_TEST()
6209 litest_touch_move_extended(dev, 1, 60, 35, axes); in START_TEST()
6210 litest_pop_event_frame(dev); in START_TEST()
6212 litest_push_event_frame(dev); in START_TEST()
6213 litest_touch_move_extended(dev, 0, 40, 40, axes); in START_TEST()
6214 litest_touch_move_extended(dev, 1, 60, 40, axes); in START_TEST()
6215 litest_pop_event_frame(dev); in START_TEST()
6223 struct litest_device *dev = litest_current_device(); in START_TEST() local
6224 struct libinput *li = dev->libinput; in START_TEST()
6232 if (!touchpad_has_touch_size(dev)) in START_TEST()
6239 litest_touch_down_extended(dev, 0, 50, 50, axes); in START_TEST()
6240 litest_touch_move_to_extended(dev, 0, 50, 50, 80, 80, axes, 10); in START_TEST()
6241 litest_touch_up(dev, 0); in START_TEST()
6246 litest_touch_down_extended(dev, 0, 50, 50, axes); in START_TEST()
6247 litest_touch_move_to_extended(dev, 0, 50, 50, 80, 80, axes, 10); in START_TEST()
6248 litest_touch_up(dev, 0); in START_TEST()
6256 struct litest_device *dev = litest_current_device(); in START_TEST() local
6257 struct libinput *li = dev->libinput; in START_TEST()
6265 if (!touchpad_has_touch_size(dev)) in START_TEST()
6271 litest_touch_down_extended(dev, 0, 50, 50, axes); in START_TEST()
6272 litest_touch_move_to_extended(dev, 0, 50, 50, 80, 80, axes, 10); in START_TEST()
6279 litest_touch_down_extended(dev, 1, 70, 70, axes); in START_TEST()
6280 litest_touch_move_to_extended(dev, 1, 70, 70, 80, 90, axes, 10); in START_TEST()
6285 litest_touch_move_to_extended(dev, 0, 80, 80, 50, 50, axes, 10); in START_TEST()
6290 litest_touch_up(dev, 1); in START_TEST()
6291 litest_touch_up(dev, 0); in START_TEST()
6297 struct litest_device *dev = litest_current_device(); in START_TEST() local
6298 struct libinput *li = dev->libinput; in START_TEST()
6305 if (!touchpad_has_touch_size(dev) || in START_TEST()
6306 litest_touchpad_is_external(dev)) in START_TEST()
6314 litest_touch_down_extended(dev, 0, 50, 50, axes); in START_TEST()
6315 litest_touch_move_to_extended(dev, 0, 50, 50, 80, 80, axes, 10); in START_TEST()
6322 litest_touch_move_to_extended(dev, 0, 80, 80, 50, 50, axes, 10); in START_TEST()
6329 struct litest_device *dev = litest_current_device(); in START_TEST() local
6330 struct libinput *li = dev->libinput; in START_TEST()
6337 if (!touchpad_has_touch_size(dev) || in START_TEST()
6338 litest_touchpad_is_external(dev)) in START_TEST()
6346 litest_touch_down(dev, 0, 50, 50); in START_TEST()
6347 litest_touch_move_to(dev, 0, 50, 70, 80, 90, 10); in START_TEST()
6350 litest_touch_move_to_extended(dev, 0, 80, 90, 50, 20, axes, 10); in START_TEST()
6351 litest_touch_up(dev, 0); in START_TEST()
6358 litest_touch_down(dev, 0, 50, 50); in START_TEST()
6359 litest_touch_move_to(dev, 0, 50, 70, 80, 90, 10); in START_TEST()
6362 litest_touch_move_to_extended(dev, 0, 80, 90, 50, 20, axes, 10); in START_TEST()
6363 litest_touch_up(dev, 0); in START_TEST()
6370 struct litest_device *dev = litest_current_device(); in START_TEST() local
6371 struct libinput *li = dev->libinput; in START_TEST()
6378 if (!touchpad_has_touch_size(dev) || in START_TEST()
6379 litest_touchpad_is_external(dev)) in START_TEST()
6387 litest_touch_down(dev, 0, 80, 90); in START_TEST()
6388 litest_touch_move_to_extended(dev, 0, 80, 90, 50, 20, axes, 10); in START_TEST()
6389 litest_touch_move_to(dev, 0, 50, 20, 80, 90, 10); in START_TEST()
6390 litest_touch_up(dev, 0); in START_TEST()
6397 litest_touch_down(dev, 0, 80, 90); in START_TEST()
6398 litest_touch_move_to_extended(dev, 0, 80, 90, 50, 20, axes, 10); in START_TEST()
6399 litest_touch_move_to(dev, 0, 50, 20, 80, 90, 10); in START_TEST()
6400 litest_touch_up(dev, 0); in START_TEST()
6407 struct litest_device *dev = litest_current_device(); in START_TEST() local
6408 struct libinput *li = dev->libinput; in START_TEST()
6415 if (!touchpad_has_touch_size(dev) || in START_TEST()
6416 litest_touchpad_is_external(dev) || in START_TEST()
6417 !litest_has_palm_detect_size(dev) || in START_TEST()
6418 !litest_has_2fg_scroll(dev)) in START_TEST()
6421 litest_enable_2fg_scroll(dev); in START_TEST()
6427 litest_touch_down(dev, 0, 99, 50); in START_TEST()
6428 litest_touch_move_to_extended(dev, 0, 99, 50, 20, 50, axes, 20); in START_TEST()
6429 litest_touch_up(dev, 0); in START_TEST()
6484 struct litest_device *dev = litest_current_device(); in START_TEST() local
6485 struct libinput *li = dev->libinput; in START_TEST()
6487 if (!has_thumb_detect(dev)) in START_TEST()
6490 if (litest_has_clickfinger(dev)) in START_TEST()
6491 litest_enable_clickfinger(dev); in START_TEST()
6495 litest_touch_down(dev, 0, 20, 20); in START_TEST()
6496 litest_touch_move_to(dev, 0, 20, 20, 85, 80, 20); in START_TEST()
6497 litest_touch_down(dev, 1, 20, 80); in START_TEST()
6498 litest_touch_move_two_touches(dev, 85, 80, 20, 80, -20, -20, 10); in START_TEST()
6501 litest_touch_up(dev, 0); in START_TEST()
6502 litest_touch_up(dev, 1); in START_TEST()
6510 struct litest_device *dev = litest_current_device(); in START_TEST() local
6511 struct libinput *li = dev->libinput; in START_TEST()
6513 if (!has_thumb_detect(dev)) in START_TEST()
6516 if (!litest_has_2fg_scroll(dev)) in START_TEST()
6519 if (litest_has_clickfinger(dev)) in START_TEST()
6520 litest_enable_clickfinger(dev); in START_TEST()
6522 litest_enable_2fg_scroll(dev); in START_TEST()
6526 litest_touch_down(dev, 0, 20, 20); in START_TEST()
6527 litest_touch_move_to(dev, 0, 20, 20, 80, 80, 20); in START_TEST()
6529 litest_touch_down(dev, 1, 79, 80); in START_TEST()
6530 litest_touch_move_two_touches(dev, 80, 80, 79, 80, -20, -20, 10); in START_TEST()
6533 litest_touch_up(dev, 0); in START_TEST()
6534 litest_touch_up(dev, 1); in START_TEST()
6542 struct litest_device *dev = litest_current_device(); in START_TEST() local
6543 struct libinput *li = dev->libinput; in START_TEST()
6545 if (!has_thumb_detect(dev)) in START_TEST()
6548 litest_enable_edge_scroll(dev); in START_TEST()
6549 if (litest_has_clickfinger(dev)) in START_TEST()
6550 litest_enable_clickfinger(dev); in START_TEST()
6554 litest_touch_down(dev, 0, 20, 20); in START_TEST()
6555 litest_touch_move_to(dev, 0, 20, 20, 60, 80, 20); in START_TEST()
6557 litest_touch_down(dev, 1, 59, 80); in START_TEST()
6558 litest_touch_move_two_touches(dev, 60, 80, 59, 80, -20, -20, 10); in START_TEST()
6561 litest_touch_up(dev, 0); in START_TEST()
6563 litest_touch_up(dev, 1); in START_TEST()
6571 struct litest_device *dev = litest_current_device(); in START_TEST() local
6572 struct libinput *li = dev->libinput; in START_TEST()
6579 if (!has_thumb_detect(dev)) in START_TEST()
6586 litest_touch_down_extended(dev, 2, 20, 20, axes); in START_TEST()
6587 litest_touch_move_to_extended(dev, 2, 20, 20, 60, 80, axes, 20); in START_TEST()
6591 litest_push_event_frame(dev); in START_TEST()
6592 litest_touch_down(dev, 0, 59, 70); in START_TEST()
6593 litest_touch_down(dev, 1, 65, 70); in START_TEST()
6594 litest_pop_event_frame(dev); in START_TEST()
6596 litest_touch_move_two_touches(dev, 59, 70, 65, 70, 0, 30, 10); in START_TEST()
6599 litest_touch_up(dev, 2); in START_TEST()
6601 litest_touch_up(dev, 1); in START_TEST()
6602 litest_touch_up(dev, 0); in START_TEST()
6934 struct litest_device *dev = litest_current_device(); in START_TEST() local
6935 struct libinput *li = dev->libinput; in START_TEST()
6937 litest_enable_tap(dev->libinput_device); in START_TEST()
6941 litest_touch_down(dev, 0, 50, 50); in START_TEST()
6942 litest_touch_move(dev, 0, 50.1, 50.1); in START_TEST()
6945 litest_push_event_frame(dev); in START_TEST()
6946 litest_touch_up(dev, 0); in START_TEST()
6947 litest_touch_down(dev, 0, 50.2, 50.2); in START_TEST()
6948 litest_pop_event_frame(dev); in START_TEST()
6959 litest_touch_move_to(dev, 0, 50.2, 50.2, 50, 70, 10); in START_TEST()
6960 litest_touch_up(dev, 0); in START_TEST()
6968 struct litest_device *dev = litest_current_device(); in START_TEST() local
6969 struct libevdev *evdev = dev->evdev; in START_TEST()