Commit fbc9be19 authored by Peter Hutterer's avatar Peter Hutterer

Merge branch 'reduce-motion-thresholds'

parents 3948cb90 9d0c7671
......@@ -193,9 +193,10 @@ tp_gesture_get_direction(struct tp_dispatch *tp, struct tp_touch *touch)
if (tp->semi_mt)
move_threshold = TP_MM_TO_DPI_NORMALIZED(4);
else
move_threshold = TP_MM_TO_DPI_NORMALIZED(3);
move_threshold = TP_MM_TO_DPI_NORMALIZED(2);
delta = device_delta(touch->point, touch->gesture.initial);
normalized = tp_normalize_delta(tp, delta);
if (normalized_length(normalized) < move_threshold)
......
......@@ -438,8 +438,8 @@ tp_unpin_finger(struct tp_dispatch *tp, struct tp_touch *t)
ydist = abs(t->point.y - t->pinned.center.y);
ydist *= tp->buttons.motion_dist.y_scale_coeff;
/* 3mm movement -> unpin */
if (hypot(xdist, ydist) >= 3.0) {
/* 1.5mm movement -> unpin */
if (hypot(xdist, ydist) >= 1.5) {
t->pinned.is_pinned = false;
return;
}
......
......@@ -287,16 +287,16 @@ START_TEST(gestures_spread)
litest_touch_down(dev, 1, 50 - dir_x, 50 - dir_y);
libinput_dispatch(li);
for (i = 0; i < 8; i++) {
for (i = 0; i < 15; i++) {
litest_push_event_frame(dev);
if (dir_x > 0.0)
dir_x += 3;
dir_x += 2;
else if (dir_x < 0.0)
dir_x -= 3;
dir_x -= 2;
if (dir_y > 0.0)
dir_y += 3;
dir_y += 2;
else if (dir_y < 0.0)
dir_y -= 3;
dir_y -= 2;
litest_touch_move(dev,
0,
50 + dir_x,
......
......@@ -862,12 +862,19 @@ START_TEST(clickpad_finger_pin)
struct libinput *li = dev->libinput;
struct libevdev *evdev = dev->evdev;
const struct input_absinfo *abs;
double w, h;
double dist;
abs = libevdev_get_abs_info(evdev, ABS_MT_POSITION_X);
ck_assert_notnull(abs);
if (abs->resolution == 0)
return;
if (libinput_device_get_size(dev->libinput_device, &w, &h) != 0)
return;
dist = 100.0/max(w, h);
litest_drain_events(li);
/* make sure the movement generates pointer events when
......@@ -881,9 +888,9 @@ START_TEST(clickpad_finger_pin)
litest_button_click(dev, BTN_LEFT, true);
litest_drain_events(li);
litest_touch_move_to(dev, 0, 50, 50, 51, 51, 10, 1);
litest_touch_move_to(dev, 0, 51, 51, 49, 49, 10, 1);
litest_touch_move_to(dev, 0, 49, 49, 50, 50, 10, 1);
litest_touch_move_to(dev, 0, 50, 50, 50 + dist, 50 + dist, 10, 1);
litest_touch_move_to(dev, 0, 50 + dist, 50 + dist, 50, 50, 10, 1);
litest_touch_move_to(dev, 0, 50, 50, 50 - dist, 50 - dist, 10, 1);
litest_assert_empty_queue(li);
......@@ -891,9 +898,9 @@ START_TEST(clickpad_finger_pin)
litest_assert_only_typed_events(li, LIBINPUT_EVENT_POINTER_BUTTON);
/* still pinned after release */
litest_touch_move_to(dev, 0, 50, 50, 51, 51, 10, 1);
litest_touch_move_to(dev, 0, 51, 51, 49, 49, 10, 1);
litest_touch_move_to(dev, 0, 49, 49, 50, 50, 10, 1);
litest_touch_move_to(dev, 0, 50, 50, 50 + dist, 50 + dist, 10, 1);
litest_touch_move_to(dev, 0, 50 + dist, 50 + dist, 50, 50, 10, 1);
litest_touch_move_to(dev, 0, 50, 50, 50 - dist, 50 - dist, 10, 1);
litest_assert_empty_queue(li);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment