From 10493de96e905b831e14bd510f2af1b8da3d2be6 Mon Sep 17 00:00:00 2001 From: Nikolai Kondrashov Date: Tue, 31 Aug 2010 11:31:07 +0400 Subject: Improve dumb tablet detection Improve dumb tablet detection by checking if BTN_STYLUS or BTN_STYLUS2 (first or second pen barrel button) is present when BTN_TOOL_PEN is not found. This enables detection of tablets without explicit tool proximity reporting. These include at least four UC-Logic tablet models: WP4030U, WP5540U, WP8060U and PF1209, on which many Genius and Trust models are based. Signed-off-by: Nikolai Kondrashov Reviewed-by: Peter Hutterer Signed-off-by: Peter Hutterer --- src/evdev.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/evdev.c b/src/evdev.c index 0c96344..626a3ae 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -1888,7 +1888,9 @@ EvdevProbe(InputInfoPtr pInfo) if ((TestBit(ABS_X, pEvdev->abs_bitmask) && TestBit(ABS_Y, pEvdev->abs_bitmask))) { xf86Msg(X_PROBED, "%s: Found x and y absolute axes\n", pInfo->name); - if (TestBit(BTN_TOOL_PEN, pEvdev->key_bitmask)) + if (TestBit(BTN_TOOL_PEN, pEvdev->key_bitmask) || + TestBit(BTN_STYLUS, pEvdev->key_bitmask) || + TestBit(BTN_STYLUS2, pEvdev->key_bitmask)) { xf86Msg(X_PROBED, "%s: Found absolute tablet.\n", pInfo->name); pEvdev->flags |= EVDEV_TABLET; -- cgit v1.2.3