Find a file
Peter Hutterer fc51daff73 touchpad: always call into the the tap state machine
A button event consumed by the softbutton or clickpad code does not feed into
the tap state machine, leaving it in its current state. The touch generating
that event however may have triggered state changes.

For some tap/click combinations this gives us either double press/release
events or an inconsistent order of events. Those issues include:
* a really short physical click causes a click + tap-click
* a really short physical click on the right software button causes a right
  click + left tap-click
* tap + click causes double button left press events

To avoid these, notify the tap code that a button event has occured and
process that accordingly. Depending on the state this may either continue to
the DEAD state or release the current tap button and then go to the DEAD
state.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
2014-06-12 10:29:26 +10:00
doc touchpad: Add support for top softbutton area 2014-06-02 14:01:23 +10:00
include/linux Add our own version of linux/input.h 2014-06-04 09:40:39 +10:00
m4 Port evdev code to be used as a shared library 2013-11-12 22:37:20 +01:00
src touchpad: always call into the the tap state machine 2014-06-12 10:29:26 +10:00
test test: use check's strcmp API instead of strcmp 2014-06-11 09:43:52 +10:00
tools tools: add a script to push the doxygen output to freedesktop.org 2014-06-10 08:28:07 +10:00
.gitignore Add the framework for a test suite 2014-01-10 14:17:06 +10:00
autogen.sh Port evdev code to be used as a shared library 2013-11-12 22:37:20 +01:00
configure.ac test: silence compiler warning for C++ build test 2014-06-10 20:54:53 +10:00
COPYING test: Test seat wide button and key count helpers 2014-04-23 00:07:40 +02:00
Makefile.am test: automatically run the tests against valgrind for leaks 2014-04-10 11:11:56 +10:00
README Update README 2014-02-26 19:50:37 +01:00

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/