#define MOUSEMASK (BUTTONMASK | PointerMotionMask)
#define PROTODELWIN 1
-typedef union Arg Arg;
-typedef struct Client Client;
-typedef struct DC DC;
-typedef struct Fnt Fnt;
-
-union Arg {
+typedef union {
const char *cmd;
int i;
-};
+} Arg;
/* atoms */
enum { NetSupported, NetWMName, NetLast };
/* cursor */
enum { CurNormal, CurResize, CurMove, CurLast };
-/* windowcorners */
+/* color */
+enum { ColFG, ColBG, ColLast };
+
+/* window corners */
typedef enum { TopLeft, TopRight, BotLeft, BotRight } Corner;
-struct Fnt {
+typedef struct {
int ascent;
int descent;
int height;
XFontSet set;
XFontStruct *xfont;
-};
+} Fnt;
-struct DC { /* draw context */
+typedef struct { /* draw context */
int x, y, w, h;
- unsigned long bg;
- unsigned long fg;
- unsigned long border;
+ unsigned long norm[ColLast];
+ unsigned long sel[ColLast];
+ unsigned long status[ColLast];
Drawable drawable;
Fnt font;
GC gc;
-};
+} DC;
+typedef struct Client Client;
struct Client {
char name[256];
int proto;
Client *next;
Client *prev;
Window win;
- Window title;
+ Window twin;
};
extern const char *tags[];
extern char stext[1024];
-extern int screen, sx, sy, sw, sh, bx, by, bw, bh, mw;
+extern int bx, by, bw, bh, bmw, mw, screen, sx, sy, sw, sh;
extern unsigned int ntags, numlockmask;
extern void (*handler[LASTEvent])(XEvent *);
extern void (*arrange)(Arg *);