aboutsummaryrefslogtreecommitdiff
path: root/sway/tree/workspace.c
diff options
context:
space:
mode:
Diffstat (limited to 'sway/tree/workspace.c')
-rw-r--r--sway/tree/workspace.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sway/tree/workspace.c b/sway/tree/workspace.c
index 4e735064..c0da9c93 100644
--- a/sway/tree/workspace.c
+++ b/sway/tree/workspace.c
@@ -794,7 +794,11 @@ void workspace_detach(struct sway_workspace *workspace) {
struct sway_container *workspace_add_tiling(struct sway_workspace *workspace,
struct sway_container *con) {
if (con->pending.workspace) {
+ struct sway_container *old_parent = con->pending.parent;
container_detach(con);
+ if (old_parent) {
+ container_reap_empty(old_parent);
+ }
}
if (config->default_layout != L_NONE) {
con = container_split(con, config->default_layout);