summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2016-01-12 12:24:18 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2016-01-14 09:51:56 +1000
commit556aac04b5d56f015d5da8b96e24fd78ad231760 (patch)
treecef51e0e151f5de7fe39bee5de6f4ec73db9d80c /src
parent41cc9053dd87e8b2be89187b73312d85a010c4ef (diff)
touchpad: disable MT for elantech semi-mt touchpads
When three fingers are set down on the touchpad, one finger tends to get a 0/0 coordinate, triggering palm detection in the upper left corner. Handle this like the jumping semi-mt touchpads and disable MT handling and instead just rely on the x/y axis and the BTN_TOOL_* events. https://bugs.freedesktop.org/show_bug.cgi?id=93583 This kernel patch is required: https://lkml.org/lkml/2016/1/11/171 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'src')
-rw-r--r--src/evdev-mt-touchpad.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c
index 2de2539f..f91f8392 100644
--- a/src/evdev-mt-touchpad.c
+++ b/src/evdev-mt-touchpad.c
@@ -1496,7 +1496,8 @@ tp_init_slots(struct tp_dispatch *tp,
* explanation.
*/
if (tp->semi_mt &&
- (device->model_flags & EVDEV_MODEL_JUMPING_SEMI_MT)) {
+ (device->model_flags &
+ (EVDEV_MODEL_JUMPING_SEMI_MT|EVDEV_MODEL_ELANTECH_TOUCHPAD))) {
tp->num_slots = 1;
tp->slot = 0;
tp->has_mt = false;