27void tree_init(xcb_get_geometry_reply_t *geometry);
88bool tree_restore(
const char *path, xcb_get_geometry_reply_t *geometry);
kill_window_t
parameter to specify whether tree_close_internal() and x_window_kill() should kill only this specific...
#define TAILQ_HEAD(name, type)
bool tree_restore(const char *path, xcb_get_geometry_reply_t *geometry)
Loads tree from ~/.i3/_restart.json (used for in-place restarts).
void tree_flatten(Con *child)
tree_flatten() removes pairs of redundant split containers, e.g.: [workspace, horizontal] [v-split] [...
void tree_next(Con *con, direction_t direction)
Changes focus in the given direction.
bool level_up(void)
Moves focus one level up.
bool level_down(void)
Moves focus one level down.
Con * tree_open_con(Con *con, i3Window *window)
Opens an empty container in the current container.
bool tree_close_internal(Con *con, kill_window_t kill_window, bool dont_kill_parent)
Closes the given container including all children.
void tree_init(xcb_get_geometry_reply_t *geometry)
Initializes the tree by creating the root node, adding all RandR outputs to the tree (that means rand...
struct all_cons_head all_cons
void tree_render(void)
Renders the tree, that is rendering all outputs using render_con() and pushing the changes to X11 usi...
void tree_split(Con *con, orientation_t orientation)
Splits (horizontally or vertically) the given container by creating a new container which contains th...
Con * get_tree_next_sibling(Con *con, position_t direction)
Get the previous / next sibling.
A 'Window' is a type which contains an xcb_window_t and all the related information (hints like _NET_...
A 'Con' represents everything from the X11 root window down to a single X11 window.