t* dwm + patches
       
   URI git clone git://git.codevoid.de/dwm-sdk
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit 2e0c767d74da024c3cd4dbd524e1364039704451
   DIR parent a5379e901c909407f991302499c9d7522cb6d00d
   URI Author: Anselm R. Garbe <arg@10kloc.org>
       Date:   Thu, 24 Aug 2006 12:04:56 +0200
       
       3->4 colors
       Diffstat:
         M config.arg.h                        |       7 ++++---
         M config.default.h                    |       7 ++++---
         M config.mk                           |       2 +-
         M draw.c                              |      20 +++++++-------------
         M dwm.h                               |       5 ++---
         M main.c                              |       7 ++++---
       
       6 files changed, 22 insertions(+), 26 deletions(-)
       ---
   DIR diff --git a/config.arg.h b/config.arg.h
       t@@ -8,9 +8,10 @@ const char *tags[] = { "work", "net", "fnord", NULL };
        
        #define DEFMODE                        dotile /* dofloat */
        #define FONT                        "-*-terminus-medium-*-*-*-12-*-*-*-*-*-iso10646-*"
       -#define BGCOLOR                        "#666699"
       -#define FGCOLOR                        "#eeeeee"
       -#define BORDERCOLOR                "#9999CC"
       +#define NORMBGCOLOR                "#666699"
       +#define NORMFGCOLOR                "#eeeeee"
       +#define SELBGCOLOR                "#eeeeee"
       +#define SELFGCOLOR                "#000088"
        #define MODKEY                        Mod1Mask
        #define MASTERW                        60 /* percent */
        
   DIR diff --git a/config.default.h b/config.default.h
       t@@ -8,9 +8,10 @@ const char *tags[] = { "1", "2", "3", "4", "5", NULL };
        
        #define DEFMODE                        dotile /* dofloat */
        #define FONT                        "fixed"
       -#define BGCOLOR                        "#666699"
       -#define FGCOLOR                        "#eeeeee"
       -#define BORDERCOLOR                "#9999CC"
       +#define NORMBGCOLOR                "#666699"
       +#define NORMFGCOLOR                "#eeeeee"
       +#define SELBGCOLOR                "#eeeeee"
       +#define SELFGCOLOR                "#666699"
        #define MODKEY                        Mod1Mask
        #define MASTERW                        60 /* percent */
        
   DIR diff --git a/config.mk b/config.mk
       t@@ -1,5 +1,5 @@
        # dwm version
       -VERSION = 1.0
       +VERSION = 1.1
        
        # Customize below to fit your system
        
   DIR diff --git a/draw.c b/draw.c
       t@@ -22,16 +22,15 @@ textnw(const char *text, unsigned int len)
        }
        
        static void
       -drawtext(const char *text, Bool invert, Bool highlight)
       +drawtext(const char *text, unsigned int colidx, Bool highlight)
        {
                int x, y, w, h;
                static char buf[256];
                unsigned int len, olen;
       -        XGCValues gcv;
                XPoint points[5];
                XRectangle r = { dc.x, dc.y, dc.w, dc.h };
        
       -        XSetForeground(dpy, dc.gc, invert ? dc.fg : dc.bg);
       +        XSetForeground(dpy, dc.gc, dc.bg[colidx]);
                XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
                points[0].x = dc.x;
                points[0].y = dc.y;
       t@@ -43,7 +42,7 @@ drawtext(const char *text, Bool invert, Bool highlight)
                points[3].y = 0;
                points[4].x = 0;
                points[4].y = -(dc.h - 1);
       -        XSetForeground(dpy, dc.gc, dc.border);
       +        XSetForeground(dpy, dc.gc, dc.fg[colidx]);
                XDrawLines(dpy, dc.drawable, dc.gc, points, 5, CoordModePrevious);
        
                if(!text)
       t@@ -74,15 +73,10 @@ drawtext(const char *text, Bool invert, Bool highlight)
        
                if(w > dc.w)
                        return; /* too long */
       -        gcv.foreground = invert ? dc.bg : dc.fg;
       -        gcv.background = invert ? dc.fg : dc.bg;
       -        if(dc.font.set) {
       -                XChangeGC(dpy, dc.gc, GCForeground | GCBackground, &gcv);
       +        if(dc.font.set)
                        XmbDrawString(dpy, dc.drawable, dc.font.set, dc.gc, x, y, buf, len);
       -        }
                else {
       -                gcv.font = dc.font.xfont->fid;
       -                XChangeGC(dpy, dc.gc, GCForeground | GCBackground | GCFont, &gcv);
       +                XSetFont(dpy, dc.gc, dc.font.xfont->fid);
                        XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len);
                }
                if(highlight) {
       t@@ -157,11 +151,11 @@ drawtitle(Client *c)
                if(c == sel && issel) {
                        drawstatus();
                        XUnmapWindow(dpy, c->twin);
       -                XSetWindowBorder(dpy, c->win, dc.fg);
       +                XSetWindowBorder(dpy, c->win, dc.fg[1]);
                        return;
                }
        
       -        XSetWindowBorder(dpy, c->win, dc.bg);
       +        XSetWindowBorder(dpy, c->win, dc.bg[0]);
                XMapWindow(dpy, c->twin);
                dc.x = dc.y = 0;
                dc.w = c->tw;
   DIR diff --git a/dwm.h b/dwm.h
       t@@ -36,9 +36,8 @@ typedef struct {
        
        typedef struct { /* draw context */
                int x, y, w, h;
       -        unsigned long bg;
       -        unsigned long fg;
       -        unsigned long border;
       +        unsigned long bg[2];
       +        unsigned long fg[2];
                Drawable drawable;
                Fnt font;
                GC gc;
   DIR diff --git a/main.c b/main.c
       t@@ -121,9 +121,10 @@ setup()
                seltag[0] = True;
        
                /* style */
       -        dc.bg = getcolor(BGCOLOR);
       -        dc.fg = getcolor(FGCOLOR);
       -        dc.border = getcolor(BORDERCOLOR);
       +        dc.bg[0] = getcolor(NORMBGCOLOR);
       +        dc.fg[0] = getcolor(NORMFGCOLOR);
       +        dc.bg[1] = getcolor(SELBGCOLOR);
       +        dc.fg[1] = getcolor(SELFGCOLOR);
                setfont(FONT);
        
                sx = sy = 0;