From 99acdb4e62685ae618d79c6d4e735eee890947e6 Mon Sep 17 00:00:00 2001 From: Ferdinand Schober Date: Sat, 8 Oct 2022 19:11:45 +0200 Subject: [PATCH] Use keyboard_state.focused_surface directly --- include/sway/input/seat.h | 2 -- sway/input/cursor.c | 2 +- sway/input/seat.c | 11 ----------- 3 files changed, 1 insertion(+), 14 deletions(-) diff --git a/include/sway/input/seat.h b/include/sway/input/seat.h index e795ad5e..c2041742 100644 --- a/include/sway/input/seat.h +++ b/include/sway/input/seat.h @@ -192,8 +192,6 @@ void seat_set_exclusive_client(struct sway_seat *seat, struct sway_node *seat_get_focus(struct sway_seat *seat); -struct wlr_surface *seat_get_focused_surface(struct sway_seat *seat); - struct sway_workspace *seat_get_focused_workspace(struct sway_seat *seat); // If a scratchpad container is fullscreen global, this can be used to try to diff --git a/sway/input/cursor.c b/sway/input/cursor.c index bf9c9b6b..449aa430 100644 --- a/sway/input/cursor.c +++ b/sway/input/cursor.c @@ -1372,7 +1372,7 @@ void handle_pointer_constraint(struct wl_listener *listener, void *data) { sway_constraint->destroy.notify = handle_constraint_destroy; wl_signal_add(&constraint->events.destroy, &sway_constraint->destroy); - struct wlr_surface *surface = seat_get_focused_surface(seat); + struct wlr_surface *surface = seat->wlr_seat->keyboard_state.focused_surface; if (surface && surface == constraint->surface) { sway_cursor_constrain(seat->cursor, constraint); } diff --git a/sway/input/seat.c b/sway/input/seat.c index 5b5741d1..b21e1b86 100644 --- a/sway/input/seat.c +++ b/sway/input/seat.c @@ -1462,17 +1462,6 @@ struct sway_node *seat_get_focus(struct sway_seat *seat) { return current->node; } -struct wlr_surface *seat_get_focused_surface(struct sway_seat *seat) { - struct sway_node *focus = seat_get_focus(seat); - if (focus && node_is_view(focus)) { - return focus->sway_container->view->surface; - } - struct wlr_layer_surface_v1 *layer = seat->focused_layer; - if (layer && layer->surface) - return layer->surface; - return NULL; -} - struct sway_workspace *seat_get_focused_workspace(struct sway_seat *seat) { struct sway_node *focus = seat_get_focus_inactive(seat, &root->node); if (!focus) {