diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c index b58a6caf..d831b836 100644 --- a/src/evdev-mt-touchpad.c +++ b/src/evdev-mt-touchpad.c @@ -824,6 +824,8 @@ tp_init(struct tp_dispatch *tp, if (tp_init_palmdetect(tp, device) != 0) return -1; + device->seat_caps |= EVDEV_DEVICE_POINTER; + return 0; } diff --git a/src/evdev.c b/src/evdev.c index a1255100..5a0ff909 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -707,6 +707,7 @@ evdev_configure_device(struct evdev_device *device) log_info(libinput, "input device '%s', %s is a touchpad\n", device->devname, device->devnode); + return device->dispatch == NULL ? -1 : 0; } for (i = KEY_ESC; i < KEY_MAX; i++) { if (i >= BTN_MISC && i < KEY_OK)