On Sunday, October 6, 2013, Peter Hutterer wrote:
> On Thu, Oct 03, 2013 at 05:18:26PM -0700, Ping Cheng wrote:
> > Some devices send expresskeys on its own interface, that is, there
> > is no motion/pointer events associated with the pad interface.
> >
> > This patch handles above case.
> >
> > Signed-off-by: Ping Cheng <pi...@wacom.com <javascript:;>>
> > ---
> > src/wcmUSB.c | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/src/wcmUSB.c b/src/wcmUSB.c
> > index 634eb1c..4a49c4a 100644
> > --- a/src/wcmUSB.c
> > +++ b/src/wcmUSB.c
> > @@ -1756,7 +1756,8 @@ static void usbGenericTouchscreenQuirks(unsigned
> long *keys,
> > */
> > if (ISBITSET(keys, BTN_TOUCH) &&
> > !ISBITSET(keys, BTN_TOOL_FINGER) &&
> > - !ISBITSET(keys, BTN_TOOL_PEN))
> > + !ISBITSET(keys, BTN_TOOL_PEN) &&
> > + ISBITSET(abs, ABS_X))
> > {
> > SETBIT(keys, BTN_TOOL_FINGER); /* 1FGT */
> > TabletSetFeature(common, WCM_TPC);
> > --
> > 1.8.1.2
>
> so you're saying that we get a device that has BTN_TOUCH but no BTN_TOOL_*
> set?
No, not exactly.
When BTN_TOUCH is set without BTN_TOOL_*, it means a single finger
touchscreen. That definition has been discussed many time at LKML and all
parties agreed. That's why we had the existing if statement, which can not
be changed in the kernel.
The change above means, if a tool falls into the case, ABS_X has to be set
too. That is, the tool has to report motion events.
We need to explicitly set ABS_X for single finger touchscreen since we now
have a tool (for new Intuos) that only sends button events on its
interface. ABS_X can not be set for this tool/pad since there is no motion
events associated with this tool. If we do not check ABS_X, the pad
would fall into single finger touchscreen case.
> if so, can we fix this in the kernel driver please?
>
Are you still following me :-)? We can not fix it in the kernel although I
wish we could too.
Ping
------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk
_______________________________________________
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel