From 21626e8153490bf155e812644454fe9610491ffd Mon Sep 17 00:00:00 2001 From: Tony Crisci Date: Sun, 10 Dec 2017 11:11:47 -0500 Subject: seat focus on button press --- include/sway/container.h | 4 ++++ include/sway/input/input-manager.h | 3 +++ include/sway/input/seat.h | 8 +++++++- 3 files changed, 14 insertions(+), 1 deletion(-) (limited to 'include/sway') diff --git a/include/sway/container.h b/include/sway/container.h index 0e1cc8a3..f13745ee 100644 --- a/include/sway/container.h +++ b/include/sway/container.h @@ -124,6 +124,10 @@ struct sway_container { * Marks applied to the container, list_t of char*. */ list_t *marks; + + struct { + struct wl_signal destroy; + } events; }; void swayc_descendants_of_type(swayc_t *root, enum swayc_types type, diff --git a/include/sway/input/input-manager.h b/include/sway/input/input-manager.h index 5dc75ba7..9548c170 100644 --- a/include/sway/input/input-manager.h +++ b/include/sway/input/input-manager.h @@ -19,4 +19,7 @@ char* libinput_dev_unique_id(struct libinput_device *dev); struct sway_input_manager *sway_input_manager_create( struct sway_server *server); +bool sway_input_manager_swayc_has_focus(struct sway_input_manager *input, + swayc_t *container); + #endif diff --git a/include/sway/input/seat.h b/include/sway/input/seat.h index f7f8a1bb..964c0f7b 100644 --- a/include/sway/input/seat.h +++ b/include/sway/input/seat.h @@ -7,9 +7,13 @@ struct sway_seat { struct wlr_seat *seat; struct sway_cursor *cursor; + struct sway_input_manager *input; + swayc_t *focus; + + struct wl_listener focus_destroy; }; -struct sway_seat *sway_seat_create(struct wl_display *display, +struct sway_seat *sway_seat_create(struct sway_input_manager *input, const char *seat_name); void sway_seat_add_device(struct sway_seat *seat, @@ -20,4 +24,6 @@ void sway_seat_remove_device(struct sway_seat *seat, void sway_seat_configure_xcursor(struct sway_seat *seat); +void sway_seat_set_focus(struct sway_seat *seat, swayc_t *container); + #endif -- cgit v1.2.3