summaryrefslogtreecommitdiff
path: root/sway/tree/container.c
diff options
context:
space:
mode:
authorDrew DeVault <[email protected]>2018-03-31 21:21:26 -0400
committerDrew DeVault <[email protected]>2018-04-02 11:12:18 -0400
commitb2d871cfe215a82266d01847f4787bbcf8c721c9 (patch)
tree87dbae47c65d56730c816d7e6e2123e5e851dec2 /sway/tree/container.c
parent122b96abed9955f78e3f157167d34312f5bb551d (diff)
Partially implement move command
Works: - move [container|window] to workspace <name> - Note, this should be able to move C_CONTAINER but this is untested - move [workspace] to output [left|right|up|down|<name>] Not implemented yet: - move [left|right|up|down] - move scratchpad - move position
Diffstat (limited to 'sway/tree/container.c')
-rw-r--r--sway/tree/container.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/sway/tree/container.c b/sway/tree/container.c
index 746dbf1f..21fe3fb0 100644
--- a/sway/tree/container.c
+++ b/sway/tree/container.c
@@ -33,6 +33,23 @@ static list_t *get_bfs_queue() {
return bfs_queue;
}
+const char *container_type_to_str(enum sway_container_type type) {
+ switch (type) {
+ case C_ROOT:
+ return "C_ROOT";
+ case C_OUTPUT:
+ return "C_OUTPUT";
+ case C_WORKSPACE:
+ return "C_WORKSPACE";
+ case C_CONTAINER:
+ return "C_CONTAINER";
+ case C_VIEW:
+ return "C_VIEW";
+ default:
+ return "C_UNKNOWN";
+ }
+}
+
static void notify_new_container(struct sway_container *container) {
wl_signal_emit(&root_container.sway_root->events.new_container, container);
ipc_event_window(container, "new");
@@ -54,6 +71,7 @@ static struct sway_container *container_create(enum sway_container_type type) {
}
wl_signal_init(&c->events.destroy);
+ wl_signal_init(&c->events.reparent);
return c;
}