diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2018-03-05 13:17:43 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2018-03-09 09:49:54 +1000 |
commit | 1523d8bb2e066bec297f7a03ce4a0d8cada8f383 (patch) | |
tree | 8e837b19507ab821159e9e2b64ba33a1eafd12af /meson.build | |
parent | 1b64888a2248af2a287365598cf520e4e2be33fd (diff) |
Extract and reset the abs fuzz value for the x/y axes
The kernel fuzz handling is buggy, especially when we want to rely on the fuzz
value for our hysteresis. But since this is a hw property and (at least
sometimes) set by the driver, we can't make this a pure libinput hwdb set
either.
So our workaround is:
* extract the (non-zero) fuzz into a udev property so we don't lose it
* set the fuzz to 0 to disable the in-kernel hysteresis
* overwrite our internal absinfo with the property fuzz
This way we get to use the hw-specified fuzz without having the kernel muck
around with it. We also get to use the EVDEV_ABS_ values in 60-evdev.hwdb to
override a driver-set fuzz.
Two drawbacks:
- we're resetting the kernel fuzz to 0, this affects any other users of the
device node. That's probably a minor impact only.
- we can only save this in a udev property there's a risk of this information
getting lost when playing around with udev rules. That too should be a minor
issue.
https://bugs.freedesktop.org/show_bug.cgi?id=105303
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'meson.build')
-rw-r--r-- | meson.build | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/meson.build b/meson.build index 60caf997..1c12fe1c 100644 --- a/meson.build +++ b/meson.build @@ -87,7 +87,7 @@ executable('libinput-device-group', install_dir : udev_dir) executable('libinput-model-quirks', 'udev/libinput-model-quirks.c', - dependencies : dep_udev, + dependencies : [dep_udev, dep_libevdev], include_directories : [includes_src, includes_include], install : true, install_dir : udev_dir) |