Chris, Does the patch below compatibility with your MT patchset or not? I guess Peter, and I, need your ack/nack to move on.
Thank you. Ping On Mon, Nov 29, 2010 at 12:41 PM, Ping Cheng <[email protected]> wrote: > As discussed at linux-input, BTN_TOOL_FINGER should be used to > report single touch events. Update tool type and event process > accordingly. > > Signed-off-by: Ping Cheng <[email protected]> > --- > src/wcmUSB.c | 32 ++++++++++++-------------------- > src/wcmValidateDevice.c | 18 +++++++++++++----- > 2 files changed, 25 insertions(+), 25 deletions(-) > > diff --git a/src/wcmUSB.c b/src/wcmUSB.c > index efd4319..30c57a3 100644 > --- a/src/wcmUSB.c > +++ b/src/wcmUSB.c > @@ -935,30 +935,22 @@ static int usbParseKeyEvent(WacomCommonPtr common, > ds->proximity = (event->value != 0); > break; > > - case BTN_TOOL_FINGER: > - /* If a real finger report, ignore. */ > - if (common->wcmProtocolLevel == WCM_PROTOCOL_GENERIC) > - break; > - > - DBG(6, common, > - "USB Pad detected %x (value=%d)\n", > - event->code, event->value); > - ds->device_type = PAD_ID; > - ds->device_id = PAD_DEVICE_ID; > - ds->proximity = (event->value != 0); > + case BTN_TOUCH: > + /* actual events are processed by BTN_TOOL_* events */ > break; > > - case BTN_TOUCH: > - /* Treat BTN_TOUCH same as BTN_TOOL_DOUBLETAP > - * for touchpads. > - * TODO: Tablets that do not use wacom style > - * multiplexing over a single input device > - * also can report BTN_TOUCH same as > - * BTN_TOOL_PEN would be used. We should > - * allow for that case as well. > - */ > + case BTN_TOOL_FINGER: > + /* A pad tool */ > if (common->wcmProtocolLevel != WCM_PROTOCOL_GENERIC) > + { > + DBG(6, common, > + "USB Pad detected %x (value=%d)\n", > + event->code, event->value); > + ds->device_type = PAD_ID; > + ds->device_id = PAD_DEVICE_ID; > + ds->proximity = (event->value != 0); > break; > + } > > /* fall through */ > case BTN_TOOL_DOUBLETAP: > diff --git a/src/wcmValidateDevice.c b/src/wcmValidateDevice.c > index b2ec79e..fd424dc 100644 > --- a/src/wcmValidateDevice.c > +++ b/src/wcmValidateDevice.c > @@ -123,11 +123,11 @@ static struct > __u16 tool[3]; /* tool array is terminated by 0 */ > } wcmType [] = > { > - { "stylus", { BTN_TOOL_PEN, 0 } }, > - { "eraser", { BTN_TOOL_RUBBER, 0 } }, > - { "cursor", { BTN_TOOL_MOUSE, 0 } }, > - { "touch", { BTN_TOOL_DOUBLETAP, 0 } }, > - { "pad", { BTN_FORWARD, BTN_0, 0 } } > + { "stylus", { BTN_TOOL_PEN, 0 } }, > + { "eraser", { BTN_TOOL_RUBBER, 0 } }, > + { "cursor", { BTN_TOOL_MOUSE, 0 } }, > + { "touch", { BTN_TOOL_DOUBLETAP, BTN_TOOL_FINGER, 0 } }, > + { "pad", { BTN_FORWARD, BTN_0, 0 } } > }; > > /* validate tool type for device/product */ > @@ -151,6 +151,14 @@ Bool wcmIsAValidType(InputInfoPtr pInfo, const char* > type) > if (ISBITSET (common->wcmKeys, > wcmType[j].tool[k])) > { > ret = TRUE; > + > + /* non GENERIC devices use > BTN_TOOL_FINGER for pad */ > + if (common->wcmProtocolLevel != > WCM_PROTOCOL_GENERIC) > + { > + if (!strcmp(type, "touch") && > + wcmType[j].tool[k] == > BTN_TOOL_FINGER) > + ret = FALSE; > + } > } > else if (!strlen(dsource)) /* an user defined > type */ > { > -- > 1.7.2.3 > > ------------------------------------------------------------------------------ Oracle to DB2 Conversion Guide: Compatibility Made Easier than Ever Before New IBM DB2 features make compatibility easy. In this guide, you'll learn about native support for PL/SQL, new data types, scalar functions, improved concurrency, built-in packages, OCI, SQL*Plus, data movement tools, best _______________________________________________ Linuxwacom-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel
