Lines Matching refs:seat

4 Subject: [PATCH 18/93] libinput-seat: Improve input device and output
15 An output can associate with a wl_seat using seat entry in weston.ini's
19 seat=seat1
24 libweston/libinput-seat.c | 117 +++++++++++++++++++++++-------------
25 libweston/libinput-seat.h | 5 +-
35 seat->base.output = output;
36 + seat->has_output = true;
38 pointer = weston_seat_get_pointer(&seat->base);
40 diff --git a/libweston/libinput-seat.c b/libweston/libinput-seat.c
42 --- a/libweston/libinput-seat.c
43 +++ b/libweston/libinput-seat.c
49 +udev_seat_update_output(struct udev_seat *seat)
51 + struct weston_compositor *c = seat->base.compositor;
55 + if (seat->has_output) {
56 + if (weston_output_valid(seat->base.output))
57 + prefered = seat->base.output;
59 + /* The seat's output been removed */
60 + seat->base.output = NULL;
73 + wl_list_for_each(device, &seat->devices_list, link) {
98 struct weston_seat *seat;
119 weston_seat_repick(seat);
124 -udev_seat_output_changed(struct udev_seat *seat, struct weston_output *output)
130 - wl_list_for_each(device, &seat->devices_list, link) {
149 + struct udev_seat *seat = container_of(listener, struct udev_seat,
151 + udev_seat_update_output(seat);
158 struct udev_seat *seat = container_of(listener, struct udev_seat,
162 + udev_seat_update_output(seat);
165 - udev_seat_output_changed(seat, output);
169 + struct udev_seat *seat = container_of(listener, struct udev_seat,
171 + udev_seat_update_output(seat);
177 struct udev_seat *seat = container_of(listener, struct udev_seat,
181 - udev_seat_output_changed(seat, output);
182 + udev_seat_update_output(seat);
187 weston_seat_init(&seat->base, c, seat_name);
188 seat->base.led_update = udev_seat_led_update;
190 - seat->output_create_listener.notify = notify_output_create;
191 + seat->output_created_listener.notify = notify_output_created;
193 - &seat->output_create_listener);
194 + &seat->output_created_listener);
196 + seat->output_destroyed_listener.notify = notify_output_destroyed;
198 + &seat->output_destroyed_listener);
200 + seat->output_moved_listener.notify = notify_output_moved;
202 + &seat->output_moved_listener);
204 seat->output_heads_listener.notify = notify_output_heads_changed;
206 @@ -486,7 +515,9 @@ udev_seat_destroy(struct udev_seat *seat)
208 udev_seat_remove_devices(seat);
209 weston_seat_release(&seat->base);
210 - wl_list_remove(&seat->output_create_listener.link);
211 + wl_list_remove(&seat->output_created_listener.link);
212 + wl_list_remove(&seat->output_destroyed_listener.link);
213 + wl_list_remove(&seat->output_moved_listener.link);
214 wl_list_remove(&seat->output_heads_listener.link);
215 free(seat);
217 diff --git a/libweston/libinput-seat.h b/libweston/libinput-seat.h
219 --- a/libweston/libinput-seat.h
220 +++ b/libweston/libinput-seat.h