From 619215f6ce325a4f0a4de6cb63c7d640c36bc99c Mon Sep 17 00:00:00 2001 From: Daniel Stone Date: Wed, 30 May 2012 16:32:02 +0100 Subject: [PATCH] Split weston_seat_init up into pointer/keyboard/touch So we don't unnecessarily advertise interfaces the seat doesn't support. Signed-off-by: Daniel Stone --- src/evdev.c | 8 ++++++++ 1 file changed, 8 insertions(+) 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; }