Refactor arrange_windows()

Replaces arrange_windows() with arrange_root(), arrange_output(),
arrange_workspace() and arrange_children_of().

Also makes fullscreen views save and restore their dimensions, which
allows it to preserve any custom resize and is also a requirement for
floating views once they are implemented.
This commit is contained in:
Ryan Dwyer 2018-04-28 11:26:14 +10:00
parent 85ec700206
commit 167c2e1aa9
17 changed files with 328 additions and 283 deletions

View file

@ -13,6 +13,7 @@
#include "sway/ipc-server.h"
#include "sway/output.h"
#include "sway/server.h"
#include "sway/tree/arrange.h"
#include "sway/tree/layout.h"
#include "sway/tree/view.h"
#include "sway/tree/workspace.h"
@ -143,8 +144,7 @@ static struct sway_container *container_output_destroy(
container_add_child(root_container.children->items[p], child);
}
container_sort_workspaces(root_container.children->items[p]);
arrange_windows(root_container.children->items[p],
-1, -1);
arrange_output(root_container.children->items[p]);
}
}