#ifndef _SWAY_LAYOUT_H #define _SWAY_LAYOUT_H #include #include #include "sway/tree/container.h" #include "sway/tree/root.h" #include "config.h" enum movement_direction { MOVE_LEFT, MOVE_RIGHT, MOVE_UP, MOVE_DOWN, MOVE_PARENT, MOVE_CHILD, }; enum wlr_edges; struct sway_container; void container_handle_fullscreen_reparent(struct sway_container *con, struct sway_container *old_parent); void container_add_child(struct sway_container *parent, struct sway_container *child); void container_insert_child(struct sway_container *parent, struct sway_container *child, int i); struct sway_container *container_add_sibling(struct sway_container *parent, struct sway_container *child); struct sway_container *container_remove_child(struct sway_container *child); struct sway_container *container_replace_child(struct sway_container *child, struct sway_container *new_child); bool sway_dir_to_wlr(enum movement_direction dir, enum wlr_direction *out); enum sway_container_layout container_get_default_layout( struct sway_container *con); struct sway_container *container_split(struct sway_container *child, enum sway_container_layout layout); void container_recursive_resize(struct sway_container *container, double amount, enum wlr_edges edge); void container_swap(struct sway_container *con1, struct sway_container *con2); #endif