applied Jukkas patch - dwm - dynamic window manager HTML git clone https://git.parazyd.org/dwm DIR Log DIR Files DIR Refs DIR README DIR LICENSE --- DIR commit 1c2d673ded697f4b131f8700ce98392fbb383b2e DIR parent c34df2c1b656fcdd2be2b4f9f827d88872dd2717 HTML Author: Anselm R. Garbe <arg@10kloc.org> Date: Thu, 28 Sep 2006 14:03:39 +0200 applied Jukkas patch Diffstat: M client.c | 12 ++++++------ M dwm.h | 2 ++ M view.c | 22 +++++++++++----------- 3 files changed, 19 insertions(+), 17 deletions(-) --- DIR diff --git a/client.c b/client.c @@ -214,11 +214,11 @@ manage(Window w, XWindowAttributes *wa) { c->border = 0; updatesize(c); - if(c->x + c->w + 2 > sw) - c->x = sw - c->w - 2; + if(c->x + c->w + 2 * BORDERPX > sw) + c->x = sw - c->w - 2 * BORDERPX; if(c->x < 0) c->x = 0; - if(c->y + c->h + 2 > sh) + if(c->y + c->h + 2 * BORDERPX > sh) c->y = sh - c->h - 2; if(c->h != sh && c->y < bh) c->y = bh; @@ -302,7 +302,7 @@ resize(Client *c, Bool sizehints, Corner sticky) { if(c->w == sw && c->h == sh) wc.border_width = 0; else - wc.border_width = 1; + wc.border_width = BORDERPX; XConfigureWindow(dpy, c->win, CWX | CWY | CWWidth | CWHeight | CWBorderWidth, &wc); configure(c); XSync(dpy, False); @@ -312,8 +312,8 @@ void resizetitle(Client *c) { c->tw = textw(c->name); if(c->tw > c->w) - c->tw = c->w + 2; - c->tx = c->x + c->w - c->tw + 2; + c->tw = c->w + 2 * BORDERPX; + c->tx = c->x + c->w - c->tw + 2 * BORDERPX; c->ty = c->y; if(isvisible(c)) XMoveResizeWindow(dpy, c->twin, c->tx, c->ty, c->tw, c->th); DIR diff --git a/dwm.h b/dwm.h @@ -38,6 +38,8 @@ /* mask shorthands, used in event.c and client.c */ #define BUTTONMASK (ButtonPressMask | ButtonReleaseMask) #define MOUSEMASK (BUTTONMASK | PointerMotionMask) +/* other stuff used in different places */ +#define BORDERPX 1 #define PROTODELWIN 1 enum { NetSupported, NetWMName, NetLast }; /* EWMH atoms */ DIR diff --git a/view.c b/view.c @@ -49,8 +49,8 @@ togglemax(Client *c) if((c->ismax = !c->ismax)) { c->rx = c->x; c->x = sx; c->ry = c->y; c->y = bh; - c->rw = c->w; c->w = sw; - c->rh = c->h; c->h = sh - bh - 2; + c->rw = c->w; c->w = sw - 2 * BORDERPX; + c->rh = c->h; c->h = sh - bh - 2 * BORDERPX; } else { c->x = c->rx; @@ -119,29 +119,29 @@ dotile(Arg *arg) { if(n == 1) { c->x = sx; c->y = sy + bh; - c->w = sw - 2; - c->h = sh - 2 - bh; + c->w = sw - 2 * BORDERPX; + c->h = sh - 2 * BORDERPX - bh; } else if(i == 0) { c->x = sx; c->y = sy + bh; - c->w = mw - 2; - c->h = sh - 2 - bh; + c->w = mw - 2 * BORDERPX; + c->h = sh - 2 * BORDERPX - bh; } else if(h > bh) { c->x = sx + mw; c->y = sy + (i - 1) * h + bh; - c->w = w - 2; + c->w = w - 2 * BORDERPX; if(i + 1 == n) - c->h = sh - c->y - 2; + c->h = sh - c->y - 2 * BORDERPX; else - c->h = h - 2; + c->h = h - 2 * BORDERPX; } else { /* fallback if h < bh */ c->x = sx + mw; c->y = sy + bh; - c->w = w - 2; - c->h = sh - 2 - bh; + c->w = w - 2 * BORDERPX; + c->h = sh - 2 * BORDERPX - bh; } resize(c, False, TopLeft); i++;