]> git.lizzy.rs Git - bspwm.git/blob - bspwm.h
Cosmetic improvements
[bspwm.git] / bspwm.h
1 #ifndef _BSPWM_H
2 #define _BSPWM_H
3
4 #include "types.h"
5
6 #define ROOT_EVENT_MASK        (XCB_EVENT_MASK_SUBSTRUCTURE_REDIRECT | XCB_EVENT_MASK_SUBSTRUCTURE_NOTIFY)
7 #define CLIENT_EVENT_MASK      (XCB_EVENT_MASK_PROPERTY_CHANGE | XCB_EVENT_MASK_FOCUS_CHANGE)
8 #define CLIENT_EVENT_MASK_FFP  (CLIENT_EVENT_MASK | XCB_EVENT_MASK_ENTER_WINDOW)
9
10 xcb_connection_t *dpy;
11 int default_screen, screen_width, screen_height;
12 uint32_t num_clients;
13 uint32_t num_desktops;
14 unsigned int num_monitors;
15 unsigned int monitor_uid;
16 unsigned int desktop_uid;
17 unsigned int rule_uid;
18 xcb_screen_t *screen;
19 xcb_window_t root;
20 uint8_t root_depth;
21 FILE *status_fifo;
22 char *status_prefix;
23 char config_path[MAXLEN];
24
25 monitor_t *mon;
26 monitor_t *last_mon;
27 monitor_t *mon_head;
28 monitor_t *mon_tail;
29 rule_t *rule_head;
30 rule_t *rule_tail;
31
32 pointer_state_t *frozen_pointer;
33 xcb_window_t motion_recorder;
34 xcb_atom_t compton_shadow;
35
36 int exit_status;
37
38 bool visible;
39 bool auto_raise;
40 bool running;
41 bool randr;
42
43 void register_events(void);
44 bool import_monitors(void);
45 void init(void);
46 void setup(void);
47 void put_status(void);
48 void cleanup(void);
49 void quit(void);
50
51 #endif