On Tue, Nov 23, 2010 at 9:31 PM, Peter Hutterer
<[email protected]> wrote:
> On Tue, Nov 23, 2010 at 11:03:18PM -0600, Chris Bagwell wrote:
>> On Tue, Nov 23, 2010 at 10:06 PM, Peter Hutterer
>> <[email protected]> wrote:
>> > On Tue, Nov 23, 2010 at 05:30:21PM -0800, Ping Cheng wrote:
>> >> Added a few new ones in wcmDeviceTypeKeys
>> >>
>> >> Signed-off-by: Ping Cheng <[email protected]>
>> >> ---
>> >>  src/wcmValidateDevice.c |   26 +++++++++++++++++++++++++-
>> >>  1 files changed, 25 insertions(+), 1 deletions(-)
>> >>
>> >> diff --git a/src/wcmValidateDevice.c b/src/wcmValidateDevice.c
>> >> index cde194d..e625a32 100644
>> >> --- a/src/wcmValidateDevice.c
>> >> +++ b/src/wcmValidateDevice.c
>> >> @@ -175,11 +175,16 @@ int wcmDeviceTypeKeys(InputInfoPtr pInfo)
>> >>
>> >>       switch (priv->common->tablet_id)
>> >>       {
>> >> -             /* tablets with touch ring and rotation pen*/
>> >> +             case 0xCC:  /* CintiqV5 */
>> >> +                     priv->common->tablet_type = WCM_LCD;
>> >> +                     /* fall through */
>> >> +
>> >>               case 0xB8:  /* I4 */
>> >>               case 0xB9:  /* I4 */
>> >>               case 0xBA:  /* I4 */
>> >>               case 0xBB:  /* I4 */
>> >> +             case 0xBC:  /* I4 */
>> >> +             case 0xBD:  /* I4 */
>> >>                       priv->common->tablet_type = WCM_ROTATION;
>> >>                       /* fall through */
>> >>
>> >> @@ -204,6 +209,25 @@ int wcmDeviceTypeKeys(InputInfoPtr pInfo)
>> >>                       priv->common->tablet_type = WCM_DUALINPUT;
>> >>                       break;
>> >>
>> >> +             /* P4 display tablets */
>> >> +             case 0x30:  /* PL400 */
>> >> +             case 0x31:  /* PL500 */
>> >> +             case 0x32:  /* PL600 */
>> >> +             case 0x33:  /* PL600SX */
>> >> +             case 0x34:  /* PL550 */
>> >> +             case 0x35:  /* PL800 */
>> >> +             case 0x37:  /* PL700 */
>> >> +             case 0x38:  /* PL510 */
>> >> +             case 0x39:  /* PL710 */
>> >> +             case 0xC0:  /* DTF720 */
>> >> +             case 0xC2:  /* DTF720a */
>> >> +             case 0xC4:  /* DTF521 */
>> >> +             case 0xC7:  /* DTU1931 */
>> >> +             case 0xCE:  /* DTU2231 */
>> >> +             case 0xF0:  /* DTU1631 */
>> >> +                     priv->common->tablet_type |= WCM_LCD;
>> >> +                     break;
>> >> +
>> >>               /* tablets support menu strips */
>> >>               case 0x3F:  /* CintiqV5 */
>> >>               case 0xC5:  /* CintiqV5 */
>> >> --
>> >> 1.7.2.3
>> >
>> > applied, but I'd really like us to start thinking of a framework where we 
>> > do
>> > not have to add device ids for each new device. this simply doesn't scale
>> > and it makes "works out of the box" for new devices pretty much impossible.
>> >
>> > Cheers,
>> >  Peter
>> >
>>
>> Agree.  For USB devices, alot of these names seem candidates for
>> detecting using standard touchpad, touchscreen, tablet detection with
>> BTN_TOOL_*.  I've not looked real close but seem possible
>>
>> This is how we could do it if we standardized all kernel drivers to
>> use standard BTN_TOOL_* events:
>>
>> WCM_TPC, WCM_LCD = BTN_TOUCH && !BTN_TOOL_FINGER (once converting
>> Tablet PC's to be Bamboo-like anyways).

This is not true any more. Dmitry suggests us to use BTN_TOOL_FINGER
for 1FGT on touchscreen too.

Plus, TPC != LCD. Cintiqs are not TPC. But they are LCD.

>> WCM_2FGT = BTN_TOOL_DOUBLETAP
>> WCM_2FGT = BTN_TOOL_FINGER (and possibly BTN_TOOL_TOUCH)
>> WCM_PEN = BTN_TOOL_PEN
>
> yes please. the whole point of kernel drivers is that we don't have
> device-specific magic in userspace.

The mess in figuring out those BTN_TOOL_* is bigger than checking on
the IDs. Chris knows that I've done my share of the effort....

> I don't have a problem with catering for different capabilities (IsPad,
> HasTouch, etc), but this device_id magic is not good.

We are forced to be this way for some features.

Ping

------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
Linuxwacom-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to