diff --git a/src/evdev-debounce.c b/src/evdev-debounce.c index f7252dcd..c5677e51 100644 --- a/src/evdev-debounce.c +++ b/src/evdev-debounce.c @@ -568,7 +568,8 @@ fallback_init_debounce(struct fallback_dispatch *dispatch) struct evdev_device *device = dispatch->device; char timer_name[64]; - if (device->model_flags & EVDEV_MODEL_MS_NANO_TRANSCEIVER) { + if (device->model_flags & + (EVDEV_MODEL_MS_NANO_TRANSCEIVER|EVDEV_MODEL_LOGITECH_K400)) { dispatch->debounce.state = DEBOUNCE_STATE_DISABLED; return; } diff --git a/src/evdev.c b/src/evdev.c index b98dc32d..3add0dc5 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -1251,6 +1251,7 @@ evdev_read_model_flags(struct evdev_device *device) MODEL(ALPS_TOUCHPAD), MODEL(SYNAPTICS_SERIAL_TOUCHPAD), MODEL(JUMPING_SEMI_MT), + MODEL(LOGITECH_K400), MODEL(CYBORG_RAT), MODEL(HP_STREAM11_TOUCHPAD), MODEL(LENOVO_T450_TOUCHPAD), diff --git a/src/evdev.h b/src/evdev.h index 060020f9..496bea7f 100644 --- a/src/evdev.h +++ b/src/evdev.h @@ -110,6 +110,7 @@ enum evdev_device_model { EVDEV_MODEL_ALPS_TOUCHPAD = (1 << 8), EVDEV_MODEL_SYNAPTICS_SERIAL_TOUCHPAD = (1 << 9), EVDEV_MODEL_JUMPING_SEMI_MT = (1 << 10), + EVDEV_MODEL_LOGITECH_K400 = (1 << 11), EVDEV_MODEL_LENOVO_X220_TOUCHPAD_FW81 = (1 << 12), EVDEV_MODEL_CYBORG_RAT = (1 << 14), EVDEV_MODEL_HP_STREAM11_TOUCHPAD = (1 << 16), diff --git a/udev/90-libinput-model-quirks.hwdb b/udev/90-libinput-model-quirks.hwdb index 20975aec..de1a2bd9 100644 --- a/udev/90-libinput-model-quirks.hwdb +++ b/udev/90-libinput-model-quirks.hwdb @@ -220,6 +220,10 @@ libinput:name:*Logitech M570*:dmi:* libinput:mouse:input:b0003v046DpC408* LIBINPUT_MODEL_LOGITECH_MARBLE_MOUSE=1 +# Logitech K400 +libinput:mouse:input:b0003v046Dp4024* + LIBINPUT_MODEL_LOGITECH_K400=1 + ########################################## # Microsoft ##########################################