We will reinstate the hysteresis for all devices making the negative
pressure check unncessary.

This reverts commit ef48c07a9600733e068a2a437a145862ba07fdab.
---
 src/evdev-mt-touchpad.c |  4 ----
 src/evdev-mt-touchpad.h |  1 -
 test/litest.c           | 38 +++++++++++---------------------------
 test/litest.h           |  7 -------
 test/touchpad.c         |  2 +-
 5 files changed, 12 insertions(+), 40 deletions(-)

diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c
index 1a58d5e..eb3c4dd 100644
--- a/src/evdev-mt-touchpad.c
+++ b/src/evdev-mt-touchpad.c
@@ -357,7 +357,6 @@ tp_process_absolute(struct tp_dispatch *tp,
                        tp_end_sequence(tp, t, time);
                break;
        case ABS_MT_PRESSURE:
-               t->pressure_delta = e->value - t->pressure;
                t->pressure = e->value;
                t->dirty = true;
                tp->queued |= TOUCHPAD_EVENT_OTHERAXIS;
@@ -1043,9 +1042,6 @@ tp_process_state(struct tp_dispatch *tp, uint64_t time)
                if (!t->dirty)
                        continue;
 
-               if (t->pressure_delta < -7)
-                       tp_motion_history_reset(t);
-
                if (tp_detect_jumps(tp, t)) {
                        if (!tp->semi_mt)
                                log_bug_kernel(tp_libinput_context(tp),
diff --git a/src/evdev-mt-touchpad.h b/src/evdev-mt-touchpad.h
index cbb9fb0..3f3b728 100644
--- a/src/evdev-mt-touchpad.h
+++ b/src/evdev-mt-touchpad.h
@@ -155,7 +155,6 @@ struct tp_touch {
        uint64_t millis;
        int distance;                           /* distance == 0 means touch */
        int pressure;
-       int pressure_delta;
 
        struct {
                /* A quirk mostly used on Synaptics touchpads. In a
diff --git a/test/litest.c b/test/litest.c
index 66f08f2..0bd21bd 100644
--- a/test/litest.c
+++ b/test/litest.c
@@ -1502,39 +1502,23 @@ litest_touch_move_extended(struct litest_device *d,
 }
 
 void
-litest_touch_move_to_extended(struct litest_device *d,
-                             unsigned int slot,
-                             double x_from, double y_from,
-                             double x_to, double y_to,
-                             struct axis_replacement *axes,
-                             int steps, int sleep_ms)
-{
-       for (int i = 0; i < steps - 1; i++) {
-               litest_touch_move_extended(d, slot,
-                                          x_from + (x_to - x_from)/steps * i,
-                                          y_from + (y_to - y_from)/steps * i,
-                                          axes);
-               if (sleep_ms) {
-                       libinput_dispatch(d->libinput);
-                       msleep(sleep_ms);
-                       libinput_dispatch(d->libinput);
-               }
-       }
-       litest_touch_move_extended(d, slot, x_to, y_to, axes);
-}
-
-void
 litest_touch_move_to(struct litest_device *d,
                     unsigned int slot,
                     double x_from, double y_from,
                     double x_to, double y_to,
                     int steps, int sleep_ms)
 {
-       litest_touch_move_to_extended(d, slot,
-                                     x_from, y_from,
-                                     x_to, y_to,
-                                     NULL,
-                                     steps, sleep_ms);
+       for (int i = 0; i < steps - 1; i++) {
+               litest_touch_move(d, slot,
+                                 x_from + (x_to - x_from)/steps * i,
+                                 y_from + (y_to - y_from)/steps * i);
+               if (sleep_ms) {
+                       libinput_dispatch(d->libinput);
+                       msleep(sleep_ms);
+                       libinput_dispatch(d->libinput);
+               }
+       }
+       litest_touch_move(d, slot, x_to, y_to);
 }
 
 static int
diff --git a/test/litest.h b/test/litest.h
index a7e8607..76e7df7 100644
--- a/test/litest.h
+++ b/test/litest.h
@@ -411,13 +411,6 @@ litest_touch_move_to(struct litest_device *d,
                     double x_from, double y_from,
                     double x_to, double y_to,
                     int steps, int sleep_ms);
-void
-litest_touch_move_to_extended(struct litest_device *d,
-                             unsigned int slot,
-                             double x_from, double y_from,
-                             double x_to, double y_to,
-                             struct axis_replacement *axes,
-                             int steps, int sleep_ms);
 
 void
 litest_touch_move_two_touches(struct litest_device *d,
diff --git a/test/touchpad.c b/test/touchpad.c
index 4255840..5c63202 100644
--- a/test/touchpad.c
+++ b/test/touchpad.c
@@ -3650,7 +3650,7 @@ START_TEST(touchpad_thumb_edgescroll)
        libinput_dispatch(li);
        litest_assert_only_typed_events(li, LIBINPUT_EVENT_POINTER_AXIS);
 
-       litest_touch_move_to_extended(dev, 0, 99, 55, 99, 70, axes, 10, 0);
+       litest_touch_move_to(dev, 0, 99, 55, 99, 70, 10, 0);
 
        litest_assert_only_typed_events(li, LIBINPUT_EVENT_POINTER_AXIS);
 }
-- 
2.7.4

_______________________________________________
wayland-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to