diff options
author | Ryan Dwyer <ryandwyer1@gmail.com> | 2018-07-11 19:50:02 +1000 |
---|---|---|
committer | Ryan Dwyer <ryandwyer1@gmail.com> | 2018-07-11 19:50:02 +1000 |
commit | 15dc5286e280ddd06e845dc57115243e72f2339e (patch) | |
tree | c24efe7dbbc93098dd4c2273ebc2dc809c576901 /sway/input/seat.c | |
parent | 0f14abf5120db02ee80df4cc931e2abcd05af396 (diff) |
Move floating windows to front when focused
Diffstat (limited to 'sway/input/seat.c')
-rw-r--r-- | sway/input/seat.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sway/input/seat.c b/sway/input/seat.c index 5dadb31d..bf4e8876 100644 --- a/sway/input/seat.c +++ b/sway/input/seat.c @@ -666,6 +666,14 @@ void seat_set_focus_warp(struct sway_seat *seat, container_damage_whole(container->parent); } + // If we've focused a floating container, bring it to the front. + // We do this by putting it at the end of the floating list. + // This must happen for both the pending and current children lists. + if (container_is_floating(container)) { + list_move_to_end(container->parent->children, container); + list_move_to_end(container->parent->current.children, container); + } + // clean up unfocused empty workspace on new output if (new_output_last_ws) { if (!workspace_is_visible(new_output_last_ws) |