[PATCH libinput v4 0/2] Fix Lenovo X230 series touchpad
Benjamin Tissoires
benjamin.tissoires at gmail.com
Mon Apr 20 11:29:43 PDT 2015
Hi,
This is a new attempt to fix the X230 series.
This time, I tried to put some more scientific effort, and used gnuplot
to try to understand what was happening and how we could catch the same
acceleration at high speed than regular touchpads.
The results are synthetized in this png:
http://people.freedesktop.org/~tissoire/x230.png
The red-ish lines are the ones plotted from the regular touchpad acceleration
profile for different speed settings (-1.0, 0.0, 1.0).
The black one is the one I submitted in the v1 of this series.
You can see that the max speed is caught when the input speed is 5, which is
not the common use case.
So I tried to implement what I wanted to do the first time:
- at low speed, slow down the cursor
- at high speed (> 2), catch up with the other touchpads
- find something acceptable in the middle
Not having to use the generic linear pointer acceleration made things much
easier to tune, and I ended up with the code in patch 1/2.
If other users of the X230 find this acceptable, I propose that we merge this
and then we try to tune it later.
My believe is that unless we properly filter the incoming events, we won't be
able to have a smooth solution. Nevertheless, I feel that these settings
should be OK.
Cheers,
Benjamin
Benjamin Tissoires (2):
evdev: use a different filter for low resolution touchpad on the
Lenovo X230
udev: add a custom udev rule for X230 touchpads
doc/device-configuration-via-udev.dox | 9 +++++++
src/evdev-mt-touchpad.c | 14 +++++++++--
src/evdev.c | 23 +++++++++++++++++++
src/evdev.h | 7 +++++
src/filter.c | 40 +++++++++++++++++++++++++++++++++
src/filter.h | 5 ++++
udev/90-libinput-model-quirks.rules | 14 +++++++++++
udev/Makefile.am | 4 ++-
8 files changed, 112 insertions(+), 4 deletions(-)
create mode 100644 udev/90-libinput-model-quirks.rules
More information about the wayland-devel
mailing list