Kernel 4.0 introduced a different processing for Synaptics PS/2 devices: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/input/mouse/synaptics.c?id=e9e8520f229bd6881b51d03c010df6c0312bfef8 This commit introduced a different behavior when dropping a third finger on the sensor (see also https://lkml.org/lkml/2015/6/11/487): When we have 2 fingers and when we drop a third, the sequence is the following: (slot 0 contains a touch in 200,2000 and slot 1 an other in 3000,3000): ABS_MT_SLOT 0 ABS_MT_POSITION_X 4000 ABS_MT_POSITION_Y 4000 ABS_MT_PRESSURE 78 ABS_MT_SLOT 1 ABS_MT_TRACKING_ID -1 ABS_X 4000 ABS_Y 4000 ABS_PRESSURE 78 BTN_TOOL_DOUBLETAP 0 BTN_TOOL_TRIPLETAP 1 --- SYN_REPORT (0) ---------- ABS_MT_SLOT 0 ABS_MT_POSITION_X 4000 ABS_MT_POSITION_Y 4000 ABS_MT_PRESSURE 78 ABS_MT_SLOT 1 ABS_MT_TRACKING_ID 55 ABS_MT_POSITION_X 2000 ABS_MT_POSITION_Y 2000 ABS_MT_PRESSURE 72 ABS_X 4000 ABS_Y 4000 ABS_PRESSURE 78 --- SYN_REPORT (0) ---------- ----- 3 fingers release ----- --- SYN_REPORT (0) ---------- ABS_MT_SLOT 0 ABS_MT_TRACKING_ID -1 ABS_MT_SLOT 1 ABS_MT_TRACKING_ID -1 BTN_TOUCH 0 ABS_PRESSURE 0 BTN_TOOL_TRIPLETAP 0 --- SYN_REPORT (0) ---------- We thus get a slot release when BTN_TOOL_TRIPLETAP is set to one. For Synaptics devices reporting in PS/2 mode, we should have a special case where we ignore the release of the slot when TRIPLETAP is set and DOUBLETAP is unset.
*** Bug 91398 has been marked as a duplicate of this bug. ***
http://lists.freedesktop.org/archives/wayland-devel/2015-July/023526.html
commit cbde0894ee7f65f5d948977f527b99926fcf8f64 Merge: fbc9be1 a87d51f Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Thu Jul 23 10:34:03 2015 +1000 Merge branch 'serial-synaptics-cursor-jump'
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.