7 #include <xcb/xcb_event.h>
10 #define MISSING_VALUE "N/A"
46 CLIENT_MODE_AUTOMATIC,
60 client_urgency_t urgency;
121 DESKTOP_STATUS_OCCUPIED
131 desktop_status_t status;
132 desktop_urgency_t urgency;
137 char class_name[SMALEN];
138 unsigned int border_width;
140 bool transient; /* transient window are always floating */
142 bool locked; /* protects window from being closed */
145 xcb_rectangle_t floating_rectangle;
146 xcb_rectangle_t tiled_rectangle;
149 typedef struct node_t node_t;
151 split_type_t split_type;
153 split_mode_t split_mode;
154 direction_t split_dir;
156 xcb_rectangle_t rectangle;
157 bool vacant; /* vacant nodes only hold floating clients */
159 node_t *second_child;
161 client_t *client; /* NULL except for leaves */
164 typedef struct desktop_t desktop_t;
173 unsigned int border_width;
176 typedef struct monitor_t monitor_t;
179 xcb_randr_output_t id;
180 xcb_rectangle_t rectangle;
188 desktop_t *desk_head;
189 desktop_t *desk_tail;
200 typedef struct history_t history_t;
208 typedef struct stack_t stack_t;
229 typedef struct rule_t rule_t;
234 rule_effect_t effect;
240 xcb_point_t position;
241 pointer_action_t action;
242 xcb_rectangle_t rectangle;
243 node_t *vertical_fence;
244 node_t *horizontal_fence;
251 double vertical_ratio;
252 double horizontal_ratio;
259 unsigned int distance;