touchpad: reduce 2fg scroll threshold to 2mm

3mm is too large, especially on fine-grained scroll motions. Since we
already use the hysteresis to defuzz the current touchpad point, having a
slower threshold here should not cause any adverse motions.

This affects the pinch gestures too and needs a minor test adjustment. The
atmel hover device's resolution is low enough that we trigger a >1 degree
angle now, make the movement a bit more finegrained.

https://bugs.freedesktop.org/show_bug.cgi?id=91364

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
Peter Hutterer 2015-07-20 11:13:55 +10:00
parent f5abded2e5
commit 3b73342e34
2 changed files with 7 additions and 6 deletions

View file

@ -195,9 +195,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)

View file

@ -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,