Merge branch 'dwm-gaps-6.0.diff' into patched
authorDaniel <thefekete@gmail.com>
Sat, 29 Dec 2018 01:14:04 +0000 (02:14 +0100)
committerDaniel <thefekete@gmail.com>
Sat, 29 Dec 2018 01:14:04 +0000 (02:14 +0100)
1  2 
config.def.h
dwm.c

diff --cc config.def.h
@@@ -1,26 -1,18 +1,27 @@@
  /* See LICENSE file for copyright and license details. */
  
  /* appearance */
 -static const char font[]            = "-*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*";
 -static const char normbordercolor[] = "#444444";
 -static const char normbgcolor[]     = "#222222";
 -static const char normfgcolor[]     = "#bbbbbb";
 -static const char selbordercolor[]  = "#005577";
 -static const char selbgcolor[]      = "#005577";
 -static const char selfgcolor[]      = "#eeeeee";
  static const unsigned int borderpx  = 1;        /* border pixel of windows */
+ static const unsigned int gappx     = 1;        /* gap pixel between windows */
  static const unsigned int snap      = 32;       /* snap pixel */
 -static const Bool showbar           = True;     /* False means no bar */
 -static const Bool topbar            = True;     /* False means bottom bar */
 +static const unsigned int systraypinning = 0;   /* 0: sloppy systray follows selected monitor, >0: pin systray to monitor X */
 +static const unsigned int systrayspacing = 2;   /* systray spacing */
 +static const int systraypinningfailfirst = 1;   /* 1: if pinning fails, display systray on the first monitor, False: display systray on the last monitor*/
 +static const int showsystray        = 1;     /* 0 means no systray */
 +static const int showbar            = 1;        /* 0 means no bar */
 +static const int topbar             = 1;        /* 0 means bottom bar */
 +static const char *fonts[]          = { "monospace:size=10" };
 +static const char dmenufont[]       = "monospace:size=10";
 +static const char col_gray1[]       = "#222222";
 +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[][3]      = {
 +      /*               fg         bg         border   */
 +      [SchemeNorm] = { col_gray3, col_gray1, col_gray2 },
 +      [SchemeSel]  = { col_gray4, col_cyan,  col_cyan  },
 +};
  
  /* tagging */
  static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
diff --cc dwm.c
--- 1/dwm.c
--- 2/dwm.c
+++ b/dwm.c
@@@ -1891,29 -1690,42 +1891,31 @@@ tagmon(const Arg *arg
        sendmon(selmon->sel, dirtomon(arg->i));
  }
  
 -int
 -textnw(const char *text, unsigned int len) {
 -      XRectangle r;
 -
 -      if(dc.font.set) {
 -              XmbTextExtents(dc.font.set, text, len, NULL, &r);
 -              return r.width;
 -      }
 -      return XTextWidth(dc.font.xfont, text, len);
 -}
 -
  void
- tile(Monitor *m)
- {
-       unsigned int i, n, h, mw, my, ty;
+ tile(Monitor *m) {
+       unsigned int i, n, h, r, g = 0, mw, my, ty;
        Client *c;
  
 -      for(n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), n++);
 -      if(n == 0)
 +      for (n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), n++);
 +      if (n == 0)
                return;
  
-       if (n > m->nmaster)
-               mw = m->nmaster ? m->ww * m->mfact : 0;
+       if(n > m->nmaster)
+               mw = m->nmaster ? (m->ww - (g = gappx)) * m->mfact : 0;
        else
                mw = m->ww;
-       for (i = my = ty = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), i++)
-               if (i < m->nmaster) {
-                       h = (m->wh - my) / (MIN(n, m->nmaster) - i);
-                       resize(c, m->wx, m->wy + my, mw - (2*c->bw), h - (2*c->bw), 0);
-                       my += HEIGHT(c);
-               } else {
-                       h = (m->wh - ty) / (n - i);
-                       resize(c, m->wx + mw, m->wy + ty, m->ww - mw - (2*c->bw), h - (2*c->bw), 0);
-                       ty += HEIGHT(c);
+       for(i = my = ty = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), i++)
+               if(i < m->nmaster) {
+                       r = MIN(n, m->nmaster) - i;
+                       h = (m->wh - my - gappx * (r - 1)) / r;
+                       resize(c, m->wx, m->wy + my, mw - (2*c->bw), h - (2*c->bw), False);
+                       my += HEIGHT(c) + gappx;
+               }
+               else {
+                       r = n - i;
+                       h = (m->wh - ty - gappx * (r - 1)) / r;
+                       resize(c, m->wx + mw + g, m->wy + ty, m->ww - mw - g - (2*c->bw), h - (2*c->bw), False);
+                       ty += HEIGHT(c) + gappx;
                }
  }