xf86-input-synaptics:master: 1 commit(s)
Peter Hutterer
whot at kemper.freedesktop.org
Tue Sep 16 21:47:32 PDT 2014
Reporting from xf86-input-synaptics: xf86-input-synaptics driver
Please visit:
http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics
Or get your own copy by using:
git-clone git://anongit.freedesktop.org/xorg/driver/xf86-input-synaptics
Commit against master at 049611bd...:
commit 41b2312c006fca1f24e1a366174d3203a63fa04a
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date: Tue Sep 16 08:52:56 2014 +1000
Limit the movement to 20 mm per event
Touchpads are limited by a fixed sampling rate (usually 80Hz). Some finger
changes may happen too fast for this sampling rate, resulting in two distinct
event sequences:
* finger 1 up and finger 2 down in the same EV_SYN frame. Synaptics sees one
finger down before and after and the changed coordinates
* finger 1 up and finger 2 down _between_ two EV_SYN frames. Synaptics sees one
touchpoint move from f1 position to f2 position.
That move causes a large cursor jump. The former could be solved (with
difficulty) by adding fake EV_SYN handling after releasing touchpoints but
that won't fix the latter case.
So as a solution for now limit the finger movement to 20mm per event.
Tests on a T440 and an x220 showed that this is just above what a reasonable
finger movement would trigger. If a movement is greater than that limit, reset
it to 0/0.
On devices without resolution, use 0.25 of the touchpad's diagonal instead.
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
Reviewed-by: Hans de Goede <hdegoede at redhat.com>
diffstat:
src/synaptics.c | 33 +++++++++++++++++++++++++++++++++
src/synapticsstr.h | 2 ++
2 files changed, 35 insertions(+)
cgit url:
http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/commit/?id=41b2312c
More information about the xorg-commit
mailing list