i3
include/x.h
Go to the documentation of this file.
00001 /*
00002  * vim:ts=4:sw=4:expandtab
00003  *
00004  * i3 - an improved dynamic tiling window manager
00005  * © 2009-2011 Michael Stapelberg and contributors (see also: LICENSE)
00006  *
00007  * x.c: Interface to X11, transfers our in-memory state to X11 (see also
00008  *      render.c). Basically a big state machine.
00009  *
00010  */
00011 #ifndef _X_H
00012 #define _X_H
00013 
00015 extern xcb_window_t focused_id;
00016 
00022 void x_con_init(Con *con);
00023 
00028 void x_move_win(Con *src, Con *dest);
00029 
00035 void x_reparent_child(Con *con, Con *old);
00036 
00043 void x_reinit(Con *con);
00044 
00049 void x_con_kill(Con *con);
00050 
00055 bool window_supports_protocol(xcb_window_t window, xcb_atom_t atom);
00056 
00061 void x_window_kill(xcb_window_t window, kill_window_t kill_window);
00062 
00067 void x_draw_decoration(Con *con);
00068 
00075 void x_deco_recurse(Con *con);
00076 
00083 void x_push_node(Con *con);
00084 
00090 void x_push_changes(Con *con);
00091 
00097 void x_raise_con(Con *con);
00098 
00105 void x_set_name(Con *con, const char *name);
00106 
00111 void x_set_i3_atoms();
00112 
00118 void x_set_warp_to(Rect *rect);
00119 
00126 void x_mask_event_mask(uint32_t mask);
00127 
00128 #endif