From 2bd942fa6dcaf02c1b825878c3d89badd9319a7f Mon Sep 17 00:00:00 2001 From: Ping Cheng Date: Thu, 10 Oct 2013 16:14:29 -0700 Subject: [PATCH 3/3] Decide WCM_LCD by kernel property kernel 2.6.38 introduced INPUT_PROP_DIRECT to indicate a device is a direct touch (onscreen pointer) device. Use it so we do not have to add individual devcies for that feature. When INPUT_PROP_DIRECT was added, INPUT_PROP_MAX and EVIOCGPROP were also defined. So, we only need to make sure INPUT_PROP_DIRECT is defined. Signed-off-by: Ping Cheng Signed-off-by: Peter Hutterer --- src/wcmValidateDevice.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/wcmValidateDevice.c b/src/wcmValidateDevice.c index 1a5e722..9c0294b 100644 --- a/src/wcmValidateDevice.c +++ b/src/wcmValidateDevice.c @@ -308,6 +308,15 @@ int wcmDeviceTypeKeys(InputInfoPtr pInfo) break; } +#ifdef INPUT_PROP_DIRECT + { + unsigned long prop[NBITS(INPUT_PROP_MAX)] = {0}; + + ioctl(pInfo->fd, EVIOCGPROP(sizeof(prop)), prop); + if (ISBITSET(prop, INPUT_PROP_DIRECT)) + TabletSetFeature(priv->common, WCM_LCD); + } +#endif if (ISBITSET(common->wcmKeys, BTN_TOOL_PEN)) TabletSetFeature(priv->common, WCM_PEN); -- 1.8.3.1