--- a/dwm.c 2012-01-12 08:36:05.000000000 +0200
+++ b/dwm.c 2012-01-24 00:20:17.712230184 +0200
@@ -1350,12 +1350,22 @@ resize(Client *c, int x, int y, int w, i
void
resizeclient(Client *c, int x, int y, int w, int h) {
XWindowChanges wc;
+ Client *d;
+ unsigned int n;
c->oldx = c->x; c->x = wc.x = x;
c->oldy = c->y; c->y = wc.y = y;
c->oldw = c->w; c->w = wc.width = w;
c->oldh = c->h; c->h = wc.height = h;
wc.border_width = c->bw;
+ if(!c->mon->lt[c->mon->sellt]->arrange || !c->isfloating) {
+ for(n = 0, d = nexttiled(selmon->clients); d; d = nexttiled(d->next), n++);
+ if(n == 1) {
+ wc.border_width = 0;
+ c->w = wc.width += borderpx * 2;
+ c->h = wc.height += borderpx * 2;
+ }
+ }
XConfigureWindow(dpy, c->win, CWX|CWY|CWWidth|CWHeight|CWBorderWidth, &wc);
configure(c);
XSync(dpy, False);