diff options
-rw-r--r-- | sway/input/seat.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sway/input/seat.c b/sway/input/seat.c index bf4e8876..be37258f 100644 --- a/sway/input/seat.c +++ b/sway/input/seat.c | |||
@@ -671,7 +671,9 @@ void seat_set_focus_warp(struct sway_seat *seat, | |||
671 | // This must happen for both the pending and current children lists. | 671 | // This must happen for both the pending and current children lists. |
672 | if (container_is_floating(container)) { | 672 | if (container_is_floating(container)) { |
673 | list_move_to_end(container->parent->children, container); | 673 | list_move_to_end(container->parent->children, container); |
674 | list_move_to_end(container->parent->current.children, container); | 674 | if (container_has_ancestor(container, container->current.parent)) { |
675 | list_move_to_end(container->parent->current.children, container); | ||
676 | } | ||
675 | } | 677 | } |
676 | 678 | ||
677 | // clean up unfocused empty workspace on new output | 679 | // clean up unfocused empty workspace on new output |