summaryrefslogtreecommitdiffstats
path: root/sway/tree/container.c
diff options
context:
space:
mode:
Diffstat (limited to 'sway/tree/container.c')
-rw-r--r--sway/tree/container.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sway/tree/container.c b/sway/tree/container.c
index 566432b1..b8ff87e1 100644
--- a/sway/tree/container.c
+++ b/sway/tree/container.c
@@ -1015,6 +1015,7 @@ void container_set_floating(struct sway_container *container, bool enable) {
1015 return; 1015 return;
1016 } 1016 }
1017 1017
1018 struct sway_seat *seat = input_manager_current_seat(input_manager);
1018 struct sway_container *workspace = container_parent(container, C_WORKSPACE); 1019 struct sway_container *workspace = container_parent(container, C_WORKSPACE);
1019 1020
1020 if (enable) { 1021 if (enable) {
@@ -1029,8 +1030,10 @@ void container_set_floating(struct sway_container *container, bool enable) {
1029 if (container->scratchpad) { 1030 if (container->scratchpad) {
1030 scratchpad_remove_container(container); 1031 scratchpad_remove_container(container);
1031 } 1032 }
1033 struct sway_container *sibling =
1034 seat_get_focus_inactive_tiling(seat, workspace);
1032 container_remove_child(container); 1035 container_remove_child(container);
1033 container_add_child(workspace, container); 1036 container_add_child(sibling, container);
1034 container->width = container->parent->width; 1037 container->width = container->parent->width;
1035 container->height = container->parent->height; 1038 container->height = container->parent->height;
1036 if (container->type == C_VIEW) { 1039 if (container->type == C_VIEW) {