mirror of
https://gitlab.freedesktop.org/libinput/libinput.git
synced 2025-12-25 01:10:08 +01:00
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 <peter.hutterer@who-t.net> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
parent
5d191d10e7
commit
61b2ec3159
1 changed files with 15 additions and 1 deletions
16
src/evdev.c
16
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;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue