4 * i3 - an improved dynamic tiling window manager
6 * © 2009 Michael Stapelberg and contributors
8 * See file LICENSE for license information.
19 * Go through all existing windows (if the window manager is restarted) and
23 void manage_existing_windows(xcb_connection_t *conn, xcb_property_handlers_t
24 *prophs, xcb_window_t root);
27 * Restores the geometry of each window by reparenting it to the root window
28 * at the position of its frame.
30 * This is to be called *only* before exiting/restarting i3 because of evil
31 * side-effects which are to be expected when continuing to run i3.
34 void restore_geometry(xcb_connection_t *conn);
37 * Do some sanity checks and then reparent the window.
40 void manage_window(xcb_property_handlers_t *prophs, xcb_connection_t *conn,
42 xcb_get_window_attributes_cookie_t cookie,
43 bool needs_to_be_mapped);
46 * reparent_window() gets called when a new window was opened and becomes a
47 * child of the root window, or it gets called by us when we manage the
48 * already existing windows at startup.
50 * Essentially, this is the point where we take over control.
53 void reparent_window(xcb_connection_t *conn, xcb_window_t child,
54 xcb_visualid_t visual, xcb_window_t root, uint8_t depth,
55 int16_t x, int16_t y, uint16_t width, uint16_t height,
56 uint32_t border_width);