From: Anisse Astier Date: Wed, 18 Aug 2010 15:28:28 +0200 Subject: [PATCH 2/2] Narrow usage of "tool" filtering to tablets Some touchscreens will report accurate absolute events regardless of tool. Ignoring these events, will cause taps to be at previous coordinates. Narrow usage of "tool" to tablets so that this kind of touchscreen can work properly. Signed-off-by: Anisse Astier --- src/evdev.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/evdev.c b/src/evdev.c index 6d7308e..f0b0f78 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -462,7 +462,7 @@ EvdevProcessValuators(InputInfoPtr pInfo, int v[MAX_VALUATORS], int *num_v, * initialized to 1 so devices that doesn't use this scheme still * just works. */ - else if (pEvdev->abs && pEvdev->tool) { + else if (pEvdev->abs && (pEvdev->tool || !(pEvdev->flags & EVDEV_TABLET))) { memcpy(v, pEvdev->vals, sizeof(int) * pEvdev->num_vals); if (pEvdev->swap_axes) { @@ -674,7 +674,7 @@ EvdevPostAbsoluteMotionEvents(InputInfoPtr pInfo, int *num_v, int *first_v, * initialized to 1 so devices that doesn't use this scheme still * just works. */ - if (pEvdev->abs && pEvdev->tool) { + if (pEvdev->abs && (pEvdev->tool || !(pEvdev->flags & EVDEV_TABLET))) { xf86PostMotionEventP(pInfo->dev, TRUE, *first_v, *num_v, v); } } -- 1.7.0.6