summaryrefslogtreecommitdiff
path: root/src/udev/udev-builtin-input_id.c
diff options
context:
space:
mode:
authorAndreas Pokorny <andreas.pokorny@canonical.com>2016-01-01 13:35:36 +0100
committerAndreas Pokorny <andreas.pokorny@canonical.com>2016-01-01 13:35:36 +0100
commit1a3439ef68d02e8ca4da02a7c1816d596e70de8b (patch)
treedbbbd3f1abc91e44fba90346353eefb21f094c89 /src/udev/udev-builtin-input_id.c
parent5809f340fd7e5e6c76e229059c50d92e1f57e8d8 (diff)
udev: Fix touch screen detection
Use BTN_TOUCH or INPUT_PROP_DIRECT to detect touch screens. Signed-off-by: Andreas Pokorny <andreas.pokorny@canonical.com>
Diffstat (limited to 'src/udev/udev-builtin-input_id.c')
-rw-r--r--src/udev/udev-builtin-input_id.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/udev/udev-builtin-input_id.c b/src/udev/udev-builtin-input_id.c
index 1d31829a08..a7aac78def 100644
--- a/src/udev/udev-builtin-input_id.c
+++ b/src/udev/udev-builtin-input_id.c
@@ -205,12 +205,12 @@ static bool test_pointers(struct udev_device *dev,
/* This path is taken by VMware's USB mouse, which has
* absolute axes, but no touch/pressure button. */
is_mouse = true;
- else if (has_touch)
+ else if (has_touch || is_direct)
is_touchscreen = true;
else if (has_joystick_axes_or_buttons)
is_joystick = true;
}
- if (has_mt_coordinates && is_direct)
+ if (has_mt_coordinates && (is_direct || has_touch))
is_touchscreen = true;
if (has_rel_coordinates && has_mouse_button)