From 61b2ec3159015b05a59875fc79e09245c0c68c7b Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Thu, 26 Nov 2015 11:51:20 +1000 Subject: [PATCH] Ignore BTN_TOOL_* events when posting button events These aren't real button events and they are handled elsewhere, either through proper touch events on touchscreen or through custom handling in the touchpad case. https://bugs.freedesktop.org/show_bug.cgi?id=93165 Signed-off-by: Peter Hutterer Reviewed-by: Hans de Goede --- src/evdev.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/evdev.c b/src/evdev.c index ec3abc6c..4933185e 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -439,8 +439,22 @@ evdev_flush_pending_event(struct evdev_device *device, uint64_t time) static enum evdev_key_type get_key_type(uint16_t code) { - if (code == BTN_TOUCH) + switch (code) { + case BTN_TOOL_PEN: + case BTN_TOOL_RUBBER: + case BTN_TOOL_BRUSH: + case BTN_TOOL_PENCIL: + case BTN_TOOL_AIRBRUSH: + case BTN_TOOL_MOUSE: + case BTN_TOOL_LENS: + case BTN_TOOL_QUINTTAP: + case BTN_TOOL_DOUBLETAP: + case BTN_TOOL_TRIPLETAP: + case BTN_TOOL_QUADTAP: + case BTN_TOOL_FINGER: + case BTN_TOUCH: return EVDEV_KEY_TYPE_NONE; + } if (code >= KEY_ESC && code <= KEY_MICMUTE) return EVDEV_KEY_TYPE_KEY; -- 2.34.1