i3
|
00001 /* 00002 * vim:ts=4:sw=4:expandtab 00003 * 00004 * i3 - an improved dynamic tiling window manager 00005 * © 2009-2012 Michael Stapelberg and contributors (see also: LICENSE) 00006 * 00007 * i3.h: global variables that are used all over i3. 00008 * 00009 */ 00010 #ifndef _I3_H 00011 #define _I3_H 00012 00013 #include <sys/time.h> 00014 #include <sys/resource.h> 00015 00016 #include <xcb/xcb_keysyms.h> 00017 00018 #include <X11/XKBlib.h> 00019 00020 #define SN_API_NOT_YET_FROZEN 1 00021 #include <libsn/sn-launcher.h> 00022 00023 #include "queue.h" 00024 #include "data.h" 00025 #include "xcb.h" 00026 00030 extern struct rlimit original_rlimit_core; 00032 extern bool debug_build; 00034 extern int listen_fds; 00035 extern xcb_connection_t *conn; 00036 extern int conn_screen; 00040 extern xcb_timestamp_t last_timestamp; 00041 extern SnDisplay *sndisplay; 00042 extern xcb_key_symbols_t *keysyms; 00043 extern char **start_argv; 00044 extern Display *xlibdpy, *xkbdpy; 00045 extern int xkb_current_group; 00046 extern TAILQ_HEAD(bindings_head, Binding) *bindings; 00047 extern TAILQ_HEAD(autostarts_head, Autostart) autostarts; 00048 extern TAILQ_HEAD(autostarts_always_head, Autostart) autostarts_always; 00049 extern TAILQ_HEAD(ws_assignments_head, Workspace_Assignment) ws_assignments; 00050 extern TAILQ_HEAD(assignments_head, Assignment) assignments; 00051 extern SLIST_HEAD(stack_wins_head, Stack_Window) stack_wins; 00052 extern xcb_screen_t *root_screen; 00053 00054 /* Color depth, visual id and colormap to use when creating windows and 00055 * pixmaps. Will use 32 bit depth and an appropriate visual, if available, 00056 * otherwise the root window’s default (usually 24 bit TrueColor). */ 00057 extern uint8_t root_depth; 00058 extern xcb_visualid_t visual_id; 00059 extern xcb_colormap_t colormap; 00060 00061 extern bool xcursor_supported, xkb_supported; 00062 extern xcb_window_t root; 00063 extern struct ev_loop *main_loop; 00064 extern bool only_check_config; 00065 00066 #endif