diff options
author | Ryan Dwyer <ryandwyer1@gmail.com> | 2018-08-17 17:32:53 +1000 |
---|---|---|
committer | Ryan Dwyer <ryandwyer1@gmail.com> | 2018-08-17 17:32:53 +1000 |
commit | 3a888163a03e8fb6fbe91bfe8e2fe4f3d2f03cec (patch) | |
tree | 56dff4af22bf816ab5ec024f694d41ef3275d48e /include/sway | |
parent | 32193c7e4def7c0ba9cf8a7fcff02b1840d2b279 (diff) |
Refactor seat_get_focus functions
Fixes #2467.
This commit introduces seat_get_focus_inactive_floating to supplement
seat_get_focus_inactive_tiling, and uses it during `focus mode_toggle`
which fixes a focus bug.
This also refactors the seat_get_focus_inactive functions so that they
do their selection logic themselves rather than offloading it to
seat_get_focus_by_type which was getting bloated. seat_get_focus_by_type
is now removed.
Lastly, this commit changes seat_get_focus to just return the first
container in the focus stack rather than looping and calling
seat_get_focus_by_type.
Diffstat (limited to 'include/sway')
-rw-r--r-- | include/sway/input/seat.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/sway/input/seat.h b/include/sway/input/seat.h index eb4202f3..9dfb0714 100644 --- a/include/sway/input/seat.h +++ b/include/sway/input/seat.h @@ -166,6 +166,9 @@ void seat_begin_resize_floating(struct sway_seat *seat, void seat_begin_resize_tiling(struct sway_seat *seat, struct sway_container *con, uint32_t button, enum wlr_edges edge); +struct sway_container *seat_get_focus_inactive_floating(struct sway_seat *seat, + struct sway_container *container); + void seat_end_mouse_operation(struct sway_seat *seat); void seat_pointer_notify_button(struct sway_seat *seat, uint32_t time_msec, |