dwm

my fork of dwm
Index Commits Files Refs README LICENSE
commit 975c8983762246b50026d43079c60a78b341f81c
parent a137a86a234476bc3c7128fecbf845e6fc1de995
Author: Anselm R Garbe <garbeam@gmail.com>
Date:   Mon,  5 Dec 2016 10:01:33 +0100

applied Markus' decouple color-scheme patch

Diffstat:
Mconfig.def.h | 2+-
Mdwm.c | 12+++++++-----
2 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/config.def.h b/config.def.h
@@ -12,7 +12,7 @@ static const char col_gray2[]       = "#444444";
 static const char col_gray3[]       = "#bbbbbb";
 static const char col_gray4[]       = "#eeeeee";
 static const char col_cyan[]        = "#005577";
-static const char *colors[SchemeLast][3]      = {
+static const char *colors[][3]      = {
     /*               fg         bg         border   */
     [SchemeNorm] = { col_gray3, col_gray1, col_gray2 },
     [SchemeSel] =  { col_gray4, col_cyan,  col_cyan  },
diff --git a/dwm.c b/dwm.c
@@ -60,7 +60,7 @@
 
 /* enums */
 enum { CurNormal, CurResize, CurMove, CurLast }; /* cursor */
-enum { SchemeNorm, SchemeSel, SchemeLast }; /* color schemes */
+enum { SchemeNorm, SchemeSel }; /* color schemes */
 enum { NetSupported, NetWMName, NetWMState,
        NetWMFullscreen, NetActiveWindow, NetWMWindowType,
        NetWMWindowTypeDialog, NetClientList, NetLast }; /* EWMH atoms */
@@ -263,7 +263,7 @@ static void (*handler[LASTEvent]) (XEvent *) = {
 static Atom wmatom[WMLast], netatom[NetLast];
 static int running = 1;
 static Cur *cursor[CurLast];
-static Scm scheme[SchemeLast];
+static Scm *scheme;
 static Display *dpy;
 static Drw *drw;
 static Monitor *mons, *selmon;
@@ -483,7 +483,7 @@ cleanup(void)
         cleanupmon(mons);
     for (i = 0; i < CurLast; i++)
         drw_cur_free(drw, cursor[i]);
-    for (i = 0; i < SchemeLast; i++)
+    for (i = 0; i < LENGTH(colors); i++)
         free(scheme[i]);
     drw_free(drw);
     XSync(dpy, False);
@@ -1549,6 +1549,7 @@ setmfact(const Arg *arg)
 void
 setup(void)
 {
+    int i;
     XSetWindowAttributes wa;
 
     /* clean up any zombies immediately */
@@ -1583,8 +1584,9 @@ setup(void)
     cursor[CurResize] = drw_cur_create(drw, XC_sizing);
     cursor[CurMove] = drw_cur_create(drw, XC_fleur);
     /* init appearance */
-    scheme[SchemeNorm] = drw_scm_create(drw, colors[SchemeNorm], 3);
-    scheme[SchemeSel] = drw_scm_create(drw, colors[SchemeSel], 3);
+    scheme = ecalloc(LENGTH(colors), sizeof(Scm));
+    for (i = 0; i < LENGTH(colors); i++)
+        scheme[i] = drw_scm_create(drw, colors[i], 3);
     /* init bars */
     updatebars();
     updatestatus();