libinput/test
Peter Hutterer 2f481ba4a2 tablet: handle custom proximity handling
For the puck/lens cursor tool we need to artificially reduce proximity
detection. These tools are usually used in a relative mode (i.e. like a mouse)
and thus require lifting and resetting the tool multiple times to move across
the screen. The tablets' distance detection goes too far, requiring the user
to lift the device several cm on every move. This is uncomfortable.

Introduce an artificial distance threshold for the devices with the default
value taken from the X.Org wacom driver. If a tool is in proximity but outside
of this range, fake proximity events accordingly.

If a button was pressed while we were out of range we discard that event and
send it later when we enter proximity again.

This is the simple implementation that only takes one proximity out value (the
one from the wacom driver) and applies it to all. Those devices that support a
button/lens tool and have a different default threshold are well out of date.

Reviewed-by: Hans de Goede <hdegoede@redhat.com>

[rebased, tests updated for new axis percentage behavior (8d76734f)]

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-12-23 09:15:36 +10:00
..
50-litest.conf test: Prefix litest created device names with litest 2014-06-25 11:11:45 +10:00
build-cxx.cc test: Add include from C++ build test 2014-03-29 00:51:44 +01:00
build-pedantic.c Fix a couple of coding style issues 2015-05-01 12:09:57 +10:00
device.c Merge branch 'master' into tablet-support 2015-10-21 19:19:01 +10:00
gestures.c touchpad: reduced the 2fg scroll threshold to 1mm 2015-11-16 09:17:25 +10:00
keyboard.c Change to micro seconds for measuring time internally 2015-07-28 17:42:32 +08:00
litest-device-alps-dualpoint.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-alps-semi-mt.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-asus-rog-gladius.c evdev: init pointer acceleration for any device with pointer cap and rel x/y 2015-10-30 11:18:18 +10:00
litest-device-atmel-hover.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-bcm5974.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-elantech-touchpad.c test: add an Elantech touchpad device 2015-07-13 09:11:28 +10:00
litest-device-generic-singletouch.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-huion-pentablet.c test: set default axis values for all tablet devices 2015-12-14 08:27:59 +10:00
litest-device-keyboard-razer-blackwidow.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-keyboard.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-logitech-trackball.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-magic-trackpad.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-mouse-low-dpi.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-mouse-roccat.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-mouse-wheel-click-angle.c test: add a device to check MOUSE_WHEEL_CLICK_ANGLE handling 2015-11-09 16:06:26 +10:00
litest-device-mouse.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-ms-surface-cover.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-nexus4-touch-screen.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-protocol-a-touch-screen.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-qemu-usb-tablet.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-synaptics-hover.c touchpad: disable 2fg scrolling on Synaptics semi-mt touchpads 2015-07-27 19:34:42 +10:00
litest-device-synaptics-st.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-synaptics-t440.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-synaptics-x1-carbon-3rd.c touchpad: drop TOUCHPAD_HAS_TRACKPOINT_BUTTONS parsing 2015-07-24 08:48:20 +10:00
litest-device-synaptics.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-touch-screen.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-trackpoint.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-vmware-virtual-usb-mouse.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-wacom-bamboo-tablet.c test: add pressure axes to proximity in for the bamboo and the cintiq 2015-12-15 08:08:16 +10:00
litest-device-wacom-cintiq-tablet.c tablet: add tilt tests 2015-12-21 09:47:31 +10:00
litest-device-wacom-intuos-finger.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-wacom-intuos-tablet.c tablet: add tilt tests 2015-12-21 09:47:31 +10:00
litest-device-wacom-isdv4-tablet.c test: set default axis values for all tablet devices 2015-12-14 08:27:59 +10:00
litest-device-wacom-touch.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-waltop-tablet.c tablet: add tilt tests 2015-12-21 09:47:31 +10:00
litest-device-wheel-only.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-device-xen-virtual-pointer.c test: prefix all test device files with litest-device 2015-07-13 09:11:26 +10:00
litest-int.h Merge branch 'master' into tablet-support 2015-08-26 14:24:16 +10:00
litest-selftest.c litest: floating point comparison macros 2015-07-07 17:49:17 +10:00
litest.c tablet: handle custom proximity handling 2015-12-23 09:15:36 +10:00
litest.h tablet: handle custom proximity handling 2015-12-23 09:15:36 +10:00
log.c COPYING: Update boilerplate from MIT X11 to MIT Expat license 2015-06-16 14:36:04 +10:00
Makefile.am test: add the HUION PenTablet device 2015-12-11 10:53:06 +10:00
misc.c tablet: rename libinput_event_tablet to libinput_event_tablet_tool 2015-11-18 12:13:54 +10:00
path.c test: abort if we trigger a libinput bug message 2015-07-29 19:53:39 +10:00
pointer.c tablet: enable the calibration matrix for internal tablets 2015-12-09 09:01:03 +10:00
symbols-leak-test.in add simple symbols leak checker 2015-02-13 10:20:44 +10:00
tablet.c tablet: handle custom proximity handling 2015-12-23 09:15:36 +10:00
touch.c Change to micro seconds for measuring time internally 2015-07-28 17:42:32 +08:00
touchpad-buttons.c test: move the helper functions to the litest.h file 2015-07-31 09:14:21 +10:00
touchpad-tap.c touchpad: fix the number of button clicks in multitap 2015-09-19 02:03:37 +10:00
touchpad.c test: change extra axes to take a percentage as well 2015-12-14 07:44:57 +10:00
trackpoint.c COPYING: Update boilerplate from MIT X11 to MIT Expat license 2015-06-16 14:36:04 +10:00
udev.c test: fix memleak in the udev_device_sysname() test 2015-07-09 16:47:07 +10:00
valgrind.suppressions Merge branch 'master' into tablet-support 2015-05-22 14:21:21 +10:00