aboutsummaryrefslogtreecommitdiff
path: root/sway/tree
diff options
context:
space:
mode:
authorRyan Dwyer <ryandwyer1@gmail.com>2018-05-24 23:01:17 +1000
committerRyan Dwyer <ryandwyer1@gmail.com>2018-05-24 23:01:17 +1000
commitc9630975dae359ed7b42c205cac3c65252e38de5 (patch)
tree7b2353b71994b78a013d68cd1c60ac88012b4c39 /sway/tree
parent66b93c1c18df3e052bdc52c1b73cf174b5a56935 (diff)
Fix crash in move workspace to output command
Fixes #2026.
Diffstat (limited to 'sway/tree')
-rw-r--r--sway/tree/layout.c12
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) {