diff options
author | Ryan Dwyer <ryandwyer1@gmail.com> | 2018-05-24 23:01:17 +1000 |
---|---|---|
committer | Ryan Dwyer <ryandwyer1@gmail.com> | 2018-05-24 23:01:17 +1000 |
commit | c9630975dae359ed7b42c205cac3c65252e38de5 (patch) | |
tree | 7b2353b71994b78a013d68cd1c60ac88012b4c39 /sway/tree | |
parent | 66b93c1c18df3e052bdc52c1b73cf174b5a56935 (diff) |
Fix crash in move workspace to output command
Fixes #2026.
Diffstat (limited to 'sway/tree')
-rw-r--r-- | sway/tree/layout.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/sway/tree/layout.c b/sway/tree/layout.c index f8acdf6c..91759f7b 100644 --- a/sway/tree/layout.c +++ b/sway/tree/layout.c @@ -187,9 +187,17 @@ void container_move_to(struct sway_container *container, container_notify_child_title_changed(old_parent); container_notify_child_title_changed(new_parent); if (old_parent) { - arrange_children_of(old_parent); + if (old_parent->type == C_OUTPUT) { + arrange_output(old_parent); + } else { + arrange_children_of(old_parent); + } + } + if (new_parent->type == C_OUTPUT) { + arrange_output(new_parent); + } else { + arrange_children_of(new_parent); } - arrange_children_of(new_parent); // If view was moved to a fullscreen workspace, refocus the fullscreen view struct sway_container *new_workspace = container; if (new_workspace->type != C_WORKSPACE) { |