#ifndef _SWAY_SEAT_H #define _SWAY_SEAT_H #include #include "sway/input/input-manager.h" struct sway_seat { struct wlr_seat *seat; struct sway_cursor *cursor; struct sway_input_manager *input; swayc_t *focus; struct wl_list keyboards; // sway_keyboard::link struct wl_list pointers; // sway_pointer::link struct wl_listener focus_destroy; }; struct sway_pointer { struct sway_seat *seat; struct wlr_input_device *device; struct wl_list link; }; struct sway_seat *sway_seat_create(struct sway_input_manager *input, const char *seat_name); void sway_seat_add_device(struct sway_seat *seat, struct wlr_input_device *device); void sway_seat_remove_device(struct sway_seat *seat, struct wlr_input_device *device); void sway_seat_configure_xcursor(struct sway_seat *seat); void sway_seat_set_focus(struct sway_seat *seat, swayc_t *container); #endif