swayfx/include/sway/tree
Ronan Pigott 8eb0c54693 introduce workspace_squash
workspace_squash is container_flatten in the reverse
direction. Instead of eliminating redundant splits that are
parents of the target container, it eliminates pairs of
redundant H/V splits that are children of the workspace.

Splits are redundant if a con and its grandchild have the
same layout, and the immediate child has the opposite split.

For example, layouts are transformed like:

    H[V[H[app1 app2]] app3] -> H[app1 app2 app3]

i3 uses this operation to simplify the tree after moving
heavily nested containers to a higher level in the tree via
an orthogonal move.
2020-12-20 00:58:42 -05:00
..
arrange.h Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
container.h introduce workspace_squash 2020-12-20 00:58:42 -05:00
node.h Sanity check gaps between tiled containers 2019-07-15 23:46:27 -04:00
root.h view: remove workspace pid mapping for assigns 2020-01-09 09:52:37 +01:00
view.h xwayland: listen to set_geometry event 2020-10-18 15:18:53 +02:00
workspace.h introduce workspace_squash 2020-12-20 00:58:42 -05:00