Xinqi Bao's Git
b9ba8f787c09d008b4cd2595343ca0c2fee17fa5
2 * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
3 * See LICENSE file for license details.
10 #include <X11/Xutil.h>
12 #define WM_PROTOCOL_DELWIN 1
15 enum { WMProtocols
, WMDelete
, WMLast
};
16 enum { NetSupported
, NetWMName
, NetLast
};
19 enum { CurNormal
, CurResize
, CurMove
, CurInput
, CurLast
};
22 enum { RFloat
, RGrid
, RLast
};
24 typedef struct Client Client
;
25 typedef struct Key Key
;
45 void (*func
)(char *arg
);
50 extern Window root
, barwin
;
51 extern Atom wm_atom
[WMLast
], net_atom
[NetLast
];
52 extern Cursor cursor
[CurLast
];
53 extern XRectangle rect
, barrect
;
54 extern Bool running
, sel_screen
, grid
;
55 extern void (*handler
[LASTEvent
]) (XEvent
*);
58 extern char *bartext
, tag
[256];
61 extern Client
*clients
, *stack
;
64 extern void draw_bar();
67 extern void run(char *arg
);
68 extern void quit(char *arg
);
71 extern void manage(Window w
, XWindowAttributes
*wa
);
72 extern void unmanage(Client
*c
);
73 extern Client
*getclient(Window w
);
74 extern void focus(Client
*c
);
75 extern void update_name(Client
*c
);
78 extern unsigned int flush_events(long even_mask
);
81 extern void update_keys();
82 extern void keypress(XEvent
*e
);
85 extern int error_handler(Display
*dpy
, XErrorEvent
*error
);
86 extern void send_message(Window w
, Atom a
, long value
);
87 extern int win_proto(Window w
);