Input: wacom - mark Intuos5 pad as in-prox when touching buttons
authorJason Gerecke <killertofu@gmail.com>
Mon, 24 Sep 2012 16:21:31 +0000 (09:21 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 28 Sep 2012 17:34:03 +0000 (10:34 -0700)
If the ExpressKeys on the Intuos5 are touched, they currently result
an out-of-prox packet being sent even if the pad is already out of
prox. This can cause some confusion in the X driver. To restore the
expected semantics, we make being touched a sufficient condition to
signal proximity.

https://bugs.freedesktop.org/show_bug.cgi?id=54250

Reported-by: Timo Aaltonen <tjaalton@ubuntu.com>
Signed-off-by: Jason Gerecke <killertofu@gmail.com>
Reviewed-by: Chris Bagwell <chris@cnpbagwell.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/tablet/wacom_wac.c

index 532d067..9317109 100644 (file)
@@ -606,7 +606,7 @@ static int wacom_intuos_irq(struct wacom_wac *wacom)
                                input_report_abs(input, ABS_WHEEL, 0);
                        }
 
-                       if (data[2] | (data[3] & 0x01) | data[4]) {
+                       if (data[2] | (data[3] & 0x01) | data[4] | data[5]) {
                                input_report_key(input, wacom->tool[1], 1);
                                input_report_abs(input, ABS_MISC, PAD_DEVICE_ID);
                        } else {