]> git.sur5r.net Git - i3/i3/blob - include/manage.h
Merge branch 'next' (3.β is stable now)
[i3/i3] / include / manage.h
1 /*
2  * vim:ts=8:expandtab
3  *
4  * i3 - an improved dynamic tiling window manager
5  *
6  * (c) 2009 Michael Stapelberg and contributors
7  *
8  * See file LICENSE for license information.
9  *
10  */
11 #include <xcb/xcb.h>
12
13 #include "data.h"
14
15 #ifndef _MANAGE_H
16 #define _MANAGE_H
17
18 /**
19  * Go through all existing windows (if the window manager is restarted) and manage them
20  *
21  */
22 void manage_existing_windows(xcb_connection_t *conn, xcb_property_handlers_t *prophs, xcb_window_t root);
23
24 /**
25  * Do some sanity checks and then reparent the window.
26  *
27  */
28 void manage_window(xcb_property_handlers_t *prophs, xcb_connection_t *conn,
29                    xcb_window_t window, window_attributes_t wa);
30
31 /**
32  * reparent_window() gets called when a new window was opened and becomes a child of the root
33  * window, or it gets called by us when we manage the already existing windows at startup.
34  *
35  * Essentially, this is the point where we take over control.
36  *
37  */
38 void reparent_window(xcb_connection_t *conn, xcb_window_t child,
39                      xcb_visualid_t visual, xcb_window_t root, uint8_t depth,
40                      int16_t x, int16_t y, uint16_t width, uint16_t height);
41
42 #endif