Hi,

On 30-07-15 08:11, Peter Hutterer wrote:
Follow-up to eb146677e, if we disable 2fg scrolling on those touchpads we
should also disable gestures. The data doesn't magically become more useful.

I think we should wait with doing this until the scroll situation is more
clear, see my last comment here:

https://bugzilla.redhat.com/show_bug.cgi?id=1235175

If the first touch is accurate even when 2 fingers are down then there
should be no reason to disable 2fg scrolling since we already only
look at the first touch for 2fg scrolling on semi-mt touchpads,
or at least we should be ...

Regards,

Hans




Signed-off-by: Peter Hutterer <[email protected]>
---
  src/evdev-mt-touchpad-gestures.c | 6 +++++-
  test/gestures.c                  | 8 ++++++--
  2 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/src/evdev-mt-touchpad-gestures.c b/src/evdev-mt-touchpad-gestures.c
index da03c26..1482136 100644
--- a/src/evdev-mt-touchpad-gestures.c
+++ b/src/evdev-mt-touchpad-gestures.c
@@ -565,7 +565,11 @@ tp_gesture_handle_state(struct tp_dispatch *tp, uint64_t 
time)
  int
  tp_init_gesture(struct tp_dispatch *tp)
  {
-       tp->gesture.enabled = true;
+       if (tp->device->model_flags & EVDEV_MODEL_JUMPING_SEMI_MT)
+               tp->gesture.enabled = false;
+       else
+               tp->gesture.enabled = true;
+
        tp->gesture.twofinger_state = GESTURE_2FG_STATE_NONE;

        libinput_timer_init(&tp->gesture.finger_count_switch_timer,
diff --git a/test/gestures.c b/test/gestures.c
index 3b7ba7b..9e44724 100644
--- a/test/gestures.c
+++ b/test/gestures.c
@@ -34,8 +34,12 @@ START_TEST(gestures_cap)
        struct litest_device *dev = litest_current_device();
        struct libinput_device *device = dev->libinput_device;

-       ck_assert(libinput_device_has_capability(device,
-                                                LIBINPUT_DEVICE_CAP_GESTURE));
+       if (litest_is_synaptics_semi_mt(dev))
+               ck_assert(!libinput_device_has_capability(device,
+                                         LIBINPUT_DEVICE_CAP_GESTURE));
+       else
+               ck_assert(libinput_device_has_capability(device,
+                                        LIBINPUT_DEVICE_CAP_GESTURE));
  }
  END_TEST


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

Reply via email to