diff --git a/src/evdev.c b/src/evdev.c index a9c132c2..23faaa68 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -440,6 +440,14 @@ evdev_configure_device(struct evdev_input_device *device) if (has_abs && !has_key) return -1; + if ((device->caps & + (EVDEV_MOTION_ABS | EVDEV_MOTION_REL | EVDEV_BUTTON))) + weston_seat_init_pointer(&device->master->base); + if ((device->caps & EVDEV_KEYBOARD)) + weston_seat_init_keyboard(&device->master->base); + if ((device->caps & EVDEV_TOUCH)) + weston_seat_init_touch(&device->master->base); + return 0; }