From 53613b1d786922014e442a56ccef264b36c7c5be Mon Sep 17 00:00:00 2001 From: Henrik Rydberg Date: Thu, 11 Nov 2010 17:33:10 +0100 Subject: Mask pen switch events When the pen comes in proximity, special packets appear on the multitouch device. This confuses userland which misinterprets the touch state. This patch masks the special pen packets consisting of a single finger of width 10, thereby fixing the problem. Signed-off-by: Henrik Rydberg --- usr/src/dkms_source_tree/hid-ntrig.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/usr/src/dkms_source_tree/hid-ntrig.c b/usr/src/dkms_source_tree/hid-ntrig.c index 462a9a7..2d6cbc1 100644 --- a/usr/src/dkms_source_tree/hid-ntrig.c +++ b/usr/src/dkms_source_tree/hid-ntrig.c @@ -373,6 +373,10 @@ static int ntrig_event (struct hid_device *hid, struct hid_field *field, if (nd->hasmt) { nd->nindex = 0; nd->ncol = value; + /* skip pen switch events */ + if (nd->ncol == 1 && + nd->col[0].w == 10 && nd->col[0].h == 10) + break; report_frame(input, nd); } break; -- cgit v1.2.3