diff --git a/0001-touchpad-serial-synaptics-need-to-fake-new-touches-o.patch b/0001-touchpad-serial-synaptics-need-to-fake-new-touches-o.patch deleted file mode 100644 index 1b3dba8..0000000 --- a/0001-touchpad-serial-synaptics-need-to-fake-new-touches-o.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 253f8e4152b6c36b87756bb23b16512c3abf7cb8 Mon Sep 17 00:00:00 2001 -From: Peter Hutterer -Date: Fri, 24 Jul 2015 11:13:41 +1000 -Subject: [PATCH libinput] touchpad: serial synaptics need to fake new touches - on TRIPLETAP - -On the 4.1 kernels synaptics pretends to have 3 slots (the serial fw only does -2). This was added to avoid cursor jumps but has since been reverted for 4.2 -(kernel commit dbf3c37086, 4.1.3 is still buggy). In some cases a TRIPLETAP -may be triggered without slot 2 ever activating. - -While there are still those kernels out there, work around this bug by opening -a new touch point where none exists if the fake finger count exceeds the slot -count. - -Reported-by: Jan Alexander Steffens -Signed-off-by: Peter Hutterer -Tested-by: Jan Alexander Steffens -Reviewed-by: Hans de Goede ---- - src/evdev-mt-touchpad.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - -diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c -index a683d9a..5ef03d5 100644 ---- a/src/evdev-mt-touchpad.c -+++ b/src/evdev-mt-touchpad.c -@@ -369,13 +369,23 @@ tp_restore_synaptics_touches(struct tp_dispatch *tp, - for (i = 0; i < tp->num_slots; i++) { - struct tp_touch *t = tp_get_touch(tp, i); - -- if (t->state != TOUCH_END) -+ switch(t->state) { -+ case TOUCH_HOVERING: -+ case TOUCH_BEGIN: -+ case TOUCH_UPDATE: - continue; -- -- /* new touch, move it through begin to update immediately */ -- tp_new_touch(tp, t, time); -- tp_begin_touch(tp, t, time); -- t->state = TOUCH_UPDATE; -+ case TOUCH_NONE: -+ /* new touch, move it through to begin immediately */ -+ tp_new_touch(tp, t, time); -+ tp_begin_touch(tp, t, time); -+ break; -+ case TOUCH_END: -+ /* touch just ended ,we need need to restore it to update */ -+ tp_new_touch(tp, t, time); -+ tp_begin_touch(tp, t, time); -+ t->state = TOUCH_UPDATE; -+ break; -+ } - } - } - --- -2.4.3 - diff --git a/libinput.spec b/libinput.spec index 1a5efb4..9033d9a 100644 --- a/libinput.spec +++ b/libinput.spec @@ -5,7 +5,7 @@ Name: libinput Version: 1.5.0 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} Summary: Input device library License: MIT @@ -18,9 +18,6 @@ Source2: commitid Source0: http://www.freedesktop.org/software/libinput/libinput-%{version}.tar.xz %endif -# Not upstream, keep until kernel 4.2 or 4.1.x with dbf3c37086 -Patch01: 0001-touchpad-serial-synaptics-need-to-fake-new-touches-o.patch - BuildRequires: git BuildRequires: autoconf automake libtool pkgconfig BuildRequires: libevdev-devel @@ -97,6 +94,9 @@ find $RPM_BUILD_ROOT -name '*.la' -delete %changelog +* Wed Sep 14 2016 Peter Hutterer 1.5.0-2 +- Drop the synaptics 3-slot workaround + * Wed Sep 14 2016 Peter Hutterer 1.5.0-1 - libinput 1.5.0