Find a file
Peter Hutterer 8b1df05516 touchpad: detect fake finger overflow after BTN_TOOL_QUINTTAB
Up to QUINTTAP, we count fake fingers through the BTN_TOOL_*TAP kernel defines.
Once we exceed QUINTTAP, the nfake_finger count returns to 0 and
tp_unhover_touches terminates all touch sequences. The most visible effect of
this was stopped in 591a41f but the problem remained.

Since we're not using 5 fingers for anything, use that to set the
overflow flag. The kernel gives us either a BTN_TOUCH 0 (all
released) or a lower BTN_TOOL_*TAP to unset the flag when we go below 5
fingers again.

And if we overflow, we can skip the unhovering of touch points since we a)
have a decent touchpad that gives us real touchpoints and b) hovering isn't
supported for 5 touches anyway.

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

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
2015-04-09 14:18:39 +02:00
doc Revert "touchpad: parse the TOUCHPAD_RESOLUTION property" 2015-03-20 11:09:05 +10:00
include/linux include: update to v3.18 header 2015-04-08 09:26:02 +10:00
m4 Port evdev code to be used as a shared library 2013-11-12 22:37:20 +01:00
src touchpad: detect fake finger overflow after BTN_TOOL_QUINTTAB 2015-04-09 14:18:39 +02:00
test evdev: reject devices with only one of x/y resolution 2015-04-09 14:18:27 +02:00
tools tools: don't use deprecated gdk_cursor_new() 2015-03-20 08:47:39 +10:00
udev Add udev bits to assign LIBINPUT_DEVICE_GROUP 2015-02-18 10:08:29 +10:00
.gitignore add simple symbols leak checker 2015-02-13 10:20:44 +10:00
autogen.sh Port evdev code to be used as a shared library 2013-11-12 22:37:20 +01:00
configure.ac configure.ac: libinput 0.13.0 2015-03-24 15:49:41 +10:00
COPYING test: Test seat wide button and key count helpers 2014-04-23 00:07:40 +02:00
Makefile.am Add udev bits to assign LIBINPUT_DEVICE_GROUP 2015-02-18 10:08:29 +10:00
README.txt README: Add the libinput component to the bugzilla URL 2015-02-09 08:12:45 +10:00

/*!@mainpage

libinput
========

libinput is a library that handles input devices for display servers and other
applications that need to directly deal with input devices.

It provides device detection, device handling, input device event processing
and abstraction so minimize the amount of custom input code the user of
libinput need to provide the common set of functionality that users expect.

Input event processing includes scaling touch coordinates, generating
pointer events from touchpads, pointer acceleration, etc.

libinput originates from weston, the Wayland reference compositor.

The source code of libinput can be found at:
http://cgit.freedesktop.org/wayland/libinput

For more information, visit:
http://www.freedesktop.org/wiki/Software/libinput/

Bugs can be filed in the libinput component of Wayland:
https://bugs.freedesktop.org/enter_bug.cgi?product=Wayland&component=libinput

Online API documentation:
http://wayland.freedesktop.org/libinput/doc/latest/modules.html

*/