#ifndef RIVERGUILE_SEAT_H #define RIVERGUILE_SEAT_H #include #include #include #include "river-status-unstable-v1.h" struct SeatStatus { struct wl_output *focused_output; char *focused_view_title; char *mode; }; struct Seat { struct wl_list link; struct wl_seat *wl_seat; struct zriver_seat_status_v1 *status_monitor; uint32_t name; struct wl_list idles; struct SeatStatus status; }; struct Idle { struct Seat *seat; struct wl_list link; struct ext_idle_notification_v1 *idle_notification; SCM handler; uint32_t ms; }; struct Seat *seat_create (struct wl_seat *wl_seat, uint32_t name); void seat_status_init(struct Seat *seat); void seat_destroy (struct Seat *seat); bool seat_add_idle (struct Seat *seat, SCM proc, uint32_t ms); #endif