Find a file
Peter Hutterer 4e8f1259cc touchpad: add fake-touch support for BTN_TOOL_DOUBLETAP and friends
This enables two-finger scrolling and two- and three-finger tapping on a
single-touch touchpad if BTN_TOOL_DOUBLETAP and BTN_TOOL_TRIPLETAP is set.

These require a bit of special processing:
BTN_TOUCH is set with the first finger down, but somewhat randomly unset and
re-set when switching between the various BTN_TOOL_*TAP values.
BTN_TOOL_<N>TAP is only set for N fingers down, thus a double->triple move
will see a release for DOUBLETAP and a press for TRIPLETAP. This may happen in
the same event, or across two consecutive events.

This patch adds a fake_touches mask to the touchpad struct. The mask is set
for each matching BTN_* event and used to count the number of expected
fake touchpoints. From that we begin/end the number of actual touchpoints
required. Fake touchpoints take their x/y coordinates from the first
touchpoint, which reads ABS_X/ABS_Y.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2014-03-24 16:39:12 +10:00
doc touchpad: add support for multi-finger tapping 2014-03-24 14:56:40 +10:00
m4 Port evdev code to be used as a shared library 2013-11-12 22:37:20 +01:00
src touchpad: add fake-touch support for BTN_TOOL_DOUBLETAP and friends 2014-03-24 16:39:12 +10:00
test Split up the touch event into the different touch types 2014-02-26 19:32:33 +01:00
tools tools: drop CLOCK_MONOTONIC call, no longer necessary 2014-03-06 15:27:47 +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 configure.ac: Bump to 0.1.0 2014-02-26 19:54:51 +01:00
COPYING Add COPYING file 2014-01-31 14:57:18 +10:00
Makefile.am tools: add a tool for basic event debugging 2014-01-31 14:57:19 +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/