diff options
author | 2018-07-11 19:50:02 +1000 | |
---|---|---|
committer | 2018-07-11 19:50:02 +1000 | |
commit | 15dc5286e280ddd06e845dc57115243e72f2339e (patch) | |
tree | c24efe7dbbc93098dd4c2273ebc2dc809c576901 /sway/input | |
parent | Merge pull request #2241 from rustysec/master (diff) | |
download | sway-15dc5286e280ddd06e845dc57115243e72f2339e.tar.gz sway-15dc5286e280ddd06e845dc57115243e72f2339e.tar.zst sway-15dc5286e280ddd06e845dc57115243e72f2339e.zip |
Move floating windows to front when focused
Diffstat (limited to 'sway/input')
-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, | |||
666 | container_damage_whole(container->parent); | 666 | container_damage_whole(container->parent); |
667 | } | 667 | } |
668 | 668 | ||
669 | // If we've focused a floating container, bring it to the front. | ||
670 | // We do this by putting it at the end of the floating list. | ||
671 | // This must happen for both the pending and current children lists. | ||
672 | if (container_is_floating(container)) { | ||
673 | list_move_to_end(container->parent->children, container); | ||
674 | list_move_to_end(container->parent->current.children, container); | ||
675 | } | ||
676 | |||
669 | // clean up unfocused empty workspace on new output | 677 | // clean up unfocused empty workspace on new output |
670 | if (new_output_last_ws) { | 678 | if (new_output_last_ws) { |
671 | if (!workspace_is_visible(new_output_last_ws) | 679 | if (!workspace_is_visible(new_output_last_ws) |