libinput/src
Peter Hutterer a467ac32cf touchpad: add a TOUCH_HOVERING state
Some touchpads provide touch information while the finger hovers over the
touchpad, i.e. before BTN_TOUCH. Add a touch state for those touchpads so we
can ignore the touches until they actually start.

The approach is now: instead of BEGIN we mark a new touch as HOVERING.
Use the BTN_TOOL_FINGER, BTN_TOOL_DOUBLETAP information during
tp_process_state() to mark any touches that are hovering as down or ended.

i.e. provided BTN_TOUCH is down: if BTN_TOOL_FINGER is down, one hovering
touch gets marked as down, if DOUBLETAP is down, two touches are marked as
down, etc.

When ending touches, switch them back into HOVERING if the BTN_TOOL_FINGER
is still set, otherwise end them properly.

https://bugs.freedesktop.org/show_bug.cgi?id=87197

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-01-16 07:42:47 +10:00
..
evdev-mt-touchpad-buttons.c touchpad: Use remove callback to unlink event listener and stop timers 2014-12-09 09:55:36 +01:00
evdev-mt-touchpad-edge-scroll.c touchpad: add a TOUCH_HOVERING state 2015-01-16 07:42:47 +10:00
evdev-mt-touchpad-tap.c touchpad: fix a clang compiler warning 2015-01-06 09:53:30 +10:00
evdev-mt-touchpad.c touchpad: add a TOUCH_HOVERING state 2015-01-16 07:42:47 +10:00
evdev-mt-touchpad.h touchpad: add a TOUCH_HOVERING state 2015-01-16 07:42:47 +10:00
evdev.c Rename functions for left handed device configurations 2015-01-15 10:17:57 +10:00
evdev.h Rename functions for left handed device configurations 2015-01-15 10:17:57 +10:00
filter-private.h filter: add a configurable speed interface 2014-09-23 10:46:22 +10:00
filter.c Drop unused function calc_penumbral_gradient 2015-01-06 09:12:51 +10:00
filter.h Change default DPI to 1000 2014-12-02 10:16:31 +10:00
libinput-private.h Merge branch 'merged-scroll-events' 2015-01-15 10:11:44 +10:00
libinput-util.c Parse the MOUSE_WHEEL_CLICK_ANGLE udev property if present 2015-01-13 13:35:42 +10:00
libinput-util.h Change axis events to carry all directions 2015-01-13 13:54:21 +10:00
libinput-version.h.in Port evdev code to be used as a shared library 2013-11-12 22:37:20 +01:00
libinput.c Rename functions for left handed device configurations 2015-01-15 10:17:57 +10:00
libinput.h Rename functions for left handed device configurations 2015-01-15 10:17:57 +10:00
libinput.pc.in Add -lrt to the libs 2014-07-03 09:59:43 +10:00
libinput.sym Rename functions for left handed device configurations 2015-01-15 10:17:57 +10:00
Makefile.am Declare libinput.sym as dependency 2014-12-23 13:27:13 +10:00
path.c Add libinput_device_set_seat_logical_name() to change seats at runtime 2014-11-25 16:34:22 +10:00
path.h path: store the udev device instead of just the devnode 2014-11-25 16:33:01 +10:00
timer.c Add a helper function for clock_gettime 2014-09-18 11:30:15 +10:00
timer.h timer.h: Add #include libinput-util.h 2014-06-11 10:30:12 +10:00
udev-seat.c udev: only apply default calibration on absolute devices 2014-12-05 14:04:18 +10:00
udev-seat.h udev: Drop unused seat_name in struct udev_seat 2014-01-16 20:42:30 +01:00