libinput/src
Peter Hutterer 1e1b9c0e60 touchpad: never reduce the slot count to 0
Where a user releases all touches during a SYN_DROPPED and then puts more than
one finger back down before we sync, we end up with nonzero fake touches but
a zero slot count. This is caused by a wrong event sequences provided by
libevdev in that case.

This really needs to be fixed in libevdev, see
https://gitlab.freedesktop.org/libevdev/libevdev/merge_requests/19

In the meantime, put a check in to ignore that case and never reduce the slot
count to 0. It still leaves us open for some issues where 3fg gestures may
stop working if the right sequences are triggered during SYN_DROPPED but
updating libevdev will eventually make that go away too.

Fixes #422

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-02-18 06:26:56 +00:00
..
builddir.h Remove some usage of libinput-util.h 2019-09-11 12:23:06 +10:00
evdev-debounce.c evdev: Rename button up and down states to mirror each other 2019-03-21 01:07:59 +00:00
evdev-fallback.c evdev-fallback: Use input_event_init for fallback 2020-01-20 03:37:57 +00:00
evdev-fallback.h evdev: Rename button up and down states to mirror each other 2019-03-21 01:07:59 +00:00
evdev-middle-button.c doc: remove the direct link to the various state diagrams 2019-11-15 00:24:00 +00:00
evdev-mt-touchpad-buttons.c Adjust for 64bit time_t for 32bit architectures 2019-11-26 15:11:44 +10:00
evdev-mt-touchpad-edge-scroll.c evdev-mt-touchpad-edge-scroll.c: remove unused includes 2019-09-12 09:36:40 +10:00
evdev-mt-touchpad-gestures.c gestures: where we have more fingers than slots, default to swipe 2019-09-25 04:10:02 +00:00
evdev-mt-touchpad-tap.c touchpad: simplify tapping state machine by eliminating the multitap states 2019-11-26 02:34:44 +00:00
evdev-mt-touchpad-thumb.c touchpad: only identify for pinch in a distinct pinch position 2019-09-25 04:10:02 +00:00
evdev-mt-touchpad.c touchpad: never reduce the slot count to 0 2020-02-18 06:26:56 +00:00
evdev-mt-touchpad.h touchpad: correct a wrong slot count by the kernel 2020-01-29 15:58:49 +10:00
evdev-tablet-pad-leds.c evdev-tablet-pad-leds.c: remove unused includes 2019-09-12 09:36:40 +10:00
evdev-tablet-pad.c pad: add LIBINPUT_EVENT_TABLET_PAD_KEY for pad keys 2019-12-04 15:38:39 +10:00
evdev-tablet-pad.h pad: switch the button mapping to one that can handle keys or buttons 2019-12-04 15:31:46 +10:00
evdev-tablet.c tablet: don't force a proximity out while buttons are down 2020-02-13 04:53:27 +00:00
evdev-tablet.h tablet: don't force a proximity out while buttons are down 2020-02-13 04:53:27 +00:00
evdev-totem.c Add a new dispatch interface for the Dell Canvas Totem 2019-06-07 01:03:21 +00:00
evdev.c Adjust for 64bit time_t for 32bit architectures 2019-11-26 15:11:44 +10:00
evdev.h pad: add LIBINPUT_EVENT_TABLET_PAD_KEY for pad keys 2019-12-04 15:38:39 +10:00
filter-flat.c filter-flat.c: remove unused includes 2019-09-12 09:36:40 +10:00
filter-low-dpi.c filter-low-dpi.c: remove unused includes 2019-09-12 09:36:40 +10:00
filter-mouse.c filter-mouse.c: remove unused includes 2019-09-12 09:36:40 +10:00
filter-private.h Add quirk to control velocity averaging, disable it by default 2018-08-22 12:12:55 +02:00
filter-tablet.c filter: drop an unused function and an unused struct 2019-02-06 14:22:02 +10:00
filter-touchpad-x230.c filter-touchpad-x230.c: remove unused includes 2019-09-12 09:36:40 +10:00
filter-touchpad.c touchpad: use the same speed for scrolling as the baseline of the accel curve 2019-10-14 02:57:48 +00:00
filter-trackpoint.c filter-trackpoint.c: remove unused include 2019-09-12 09:36:40 +10:00
filter.c filter.h/c: remove unused includes 2019-09-13 00:07:39 +03:00
filter.h Add quirk to control velocity averaging, disable it by default 2018-08-22 12:12:55 +02:00
libinput-git-version.h.in tools: add the git version in the libinput-record output 2018-03-06 14:22:30 +10:00
libinput-private.h pad: add LIBINPUT_EVENT_TABLET_PAD_KEY for pad keys 2019-12-04 15:38:39 +10:00
libinput-restore-selinux-context.sh meson: Fix absolute libdir case in install script 2018-02-16 16:57:30 +10:00
libinput-uninstalled.pc.in buildsystem: add missing uninstalled pkg-config infra 2016-08-30 17:18:39 +10:00
libinput-util.h Split utility functions into separate source files 2019-09-11 12:23:04 +10:00
libinput-version.h.in COPYING: Update boilerplate from MIT X11 to MIT Expat license 2015-06-16 14:36:04 +10:00
libinput-versionsort.h Add versionsort test 2018-07-19 22:29:00 +03:00
libinput.c pad: add LIBINPUT_EVENT_TABLET_PAD_KEY for pad keys 2019-12-04 15:38:39 +10:00
libinput.h pad: add LIBINPUT_EVENT_TABLET_PAD_KEY for pad keys 2019-12-04 15:38:39 +10:00
libinput.pc.in Add -lrt to the libs 2014-07-03 09:59:43 +10:00
libinput.sym pad: add LIBINPUT_EVENT_TABLET_PAD_KEY for pad keys 2019-12-04 15:38:39 +10:00
path-seat.c path-seat.c: remove unused includes 2019-09-13 00:07:39 +03:00
quirks.c Fixed horizontal scrolling on Logitech MX Master 2S/3 2019-09-30 23:34:45 +00:00
quirks.h Fixed horizontal scrolling on Logitech MX Master 2S/3 2019-09-30 23:34:45 +00:00
timer.c timer: make the timer offset error a bit more user-friendly 2020-01-31 13:03:00 +10:00
timer.h timer: flush the timer funcs if our events come in late 2017-09-21 12:27:46 +10:00
udev-seat.c udev-seat.c: remove unused includes 2019-09-13 00:07:39 +03:00
udev-seat.h COPYING: Update boilerplate from MIT X11 to MIT Expat license 2015-06-16 14:36:04 +10:00
util-bits.h Split utility functions into separate source files 2019-09-11 12:23:04 +10:00
util-input-event.h Adjust for 64bit time_t for 32bit architectures 2019-11-26 15:11:44 +10:00
util-list.c Split utility functions into separate source files 2019-09-11 12:23:04 +10:00
util-list.h Remove some usage of libinput-util.h 2019-09-11 12:23:06 +10:00
util-macros.h tools: add a tablet debugging tool 2019-11-19 09:56:14 +10:00
util-matrix.h Split utility functions into separate source files 2019-09-11 12:23:04 +10:00
util-prop-parsers.c udev: parse the EVDEV_ABS properties for a potential fuzz setting 2019-09-11 12:24:02 +10:00
util-prop-parsers.h udev: parse the EVDEV_ABS properties for a potential fuzz setting 2019-09-11 12:24:02 +10:00
util-ratelimit.c Split utility functions into separate source files 2019-09-11 12:23:04 +10:00
util-ratelimit.h Split utility functions into separate source files 2019-09-11 12:23:04 +10:00
util-strings.c Split utility functions into separate source files 2019-09-11 12:23:04 +10:00
util-strings.h Split utility functions into separate source files 2019-09-11 12:23:04 +10:00
util-time.h util-time: include linux/input.h 2019-10-05 07:14:25 +10:00