diff options
author | minus <minus@mnus.de> | 2015-08-25 18:25:36 +0200 |
---|---|---|
committer | minus <minus@mnus.de> | 2015-08-25 18:25:36 +0200 |
commit | 03e4a97dbe5391cfaa7e9d3f1da86fa0a5fa4b4f (patch) | |
tree | b7d17c06a4f0cc689e267fd993a96ee3b4209c93 /sway/layout.c | |
parent | f22c9379530ebaacefcc337714cc2a5fe0db8902 (diff) |
added "move container to workspace"
makes the previous commit actually testable
Diffstat (limited to 'sway/layout.c')
-rw-r--r-- | sway/layout.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/sway/layout.c b/sway/layout.c index a37e137c..cd47037b 100644 --- a/sway/layout.c +++ b/sway/layout.c @@ -203,6 +203,21 @@ void move_container(swayc_t *container,swayc_t* root,enum movement_direction dir } +void move_container_to(swayc_t* container, swayc_t* destination) { + if (container->parent == destination) { + return; + } + destroy_container(remove_child(container)); + set_focused_container(get_focused_view(&root_container)); + if (container->is_floating) { + add_floating(destination, container); + } else { + add_child(destination, container); + } + update_visibility(container); + arrange_windows(&root_container, -1, -1); +} + void update_geometry(swayc_t *container) { if (container->type != C_VIEW) { return; |