diff options
author | Tony Crisci <tony@dubstepdish.com> | 2018-02-14 14:30:27 -0500 |
---|---|---|
committer | Tony Crisci <tony@dubstepdish.com> | 2018-02-14 14:30:27 -0500 |
commit | 946d9459c57fc38b2536d40a45b7d4c9186b6734 (patch) | |
tree | 0fe98d3382dccb56a09f90ddeb5938d880234d1c /sway/input | |
parent | 93084c9cf80901b160e0eb50b72a8e607289a678 (diff) | |
download | sway-946d9459c57fc38b2536d40a45b7d4c9186b6734.tar.xz |
get swayc in direction
Diffstat (limited to 'sway/input')
-rw-r--r-- | sway/input/seat.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sway/input/seat.c b/sway/input/seat.c index 2abe8a1f..648e7914 100644 --- a/sway/input/seat.c +++ b/sway/input/seat.c @@ -358,6 +358,16 @@ swayc_t *sway_seat_get_focus(struct sway_seat *seat) { return sway_seat_get_focus_inactive(seat, &root_container); } +swayc_t *sway_seat_get_focus_by_type(struct sway_seat *seat, + enum swayc_types type) { + swayc_t *focus = sway_seat_get_focus_inactive(seat, &root_container); + if (focus->type == type) { + return focus; + } + + return swayc_parent_by_type(focus, type); +} + void sway_seat_set_config(struct sway_seat *seat, struct seat_config *seat_config) { // clear configs |