all repos — dwm @ de5b294edce70dae164855fb06e0472441ae28ee

my dwm build

some other fixes, resize contains a minor bug
Anselm R Garbe garbeam@gmail.com
Fri, 22 Feb 2008 10:34:12 +0000
commit

de5b294edce70dae164855fb06e0472441ae28ee

parent

8e0f8ffcc63f27bd2e2c666b4e889a3056b3b70b

1 files changed, 9 insertions(+), 7 deletions(-)

jump to
M dwm.cdwm.c

@@ -1276,7 +1276,6 @@ Monitor *m;

XWindowChanges wc; m = c->monitor; - if(sizehints) { /* set minimum possible */ if (w < 1)

@@ -1325,6 +1324,7 @@ if(x + w + 2 * c->border < m->sx)

x = m->sx; if(y + h + 2 * c->border < m->sy) y = m->sy; + fprintf(stderr, "resize %d %d %d %d (%d %d %d %d)\n", x, y , w, h, m->sx, m->sy, m->sw, m->sh); if(c->x != x || c->y != y || c->w != w || c->h != h) { c->x = wc.x = x; c->y = wc.y = y;

@@ -1605,7 +1605,7 @@ /* init geometry */

m = &monitors[i]; m->id = i; - if (mcount != 1 && isxinerama) { + if(mcount != 1 && isxinerama) { m->sx = info[i].x_org; m->sy = info[i].y_org; m->sw = info[i].width;

@@ -1727,9 +1727,9 @@ unsigned int i, n, nx, ny, nw, nh, mw, th;

Client *c, *mc; domwfact = dozoom = True; - - nx = ny = nw = 0; /* gcc stupidity requires this */ - + nx = m->wax; + ny = m->way; + nw = 0; for(n = 0, c = nexttiled(clients, m); c; c = nexttiled(c->next, m)) n++;

@@ -1757,16 +1757,17 @@ nh = (m->way + m->wah) - ny - 2 * c->border;

else nh = th - 2 * c->border; } + fprintf(stderr, "tile %d %d %d %d\n", nx, ny, nw, nh); resize(c, nx, ny, nw, nh, RESIZEHINTS); if((RESIZEHINTS) && ((c->h < bh) || (c->h > nh) || (c->w < bh) || (c->w > nw))) /* client doesn't accept size constraints */ resize(c, nx, ny, nw, nh, False); if(n > 1 && th != m->wah) ny = c->y + c->h + 2 * c->border; - i++; } } + void togglebar(const char *arg) { if(bpos == BarOff)

@@ -1824,6 +1825,7 @@ }

void unmanage(Client *c) { + Monitor *m = c->monitor; XWindowChanges wc; wc.border_width = c->oldborder;

@@ -1842,7 +1844,7 @@ free(c);

XSync(dpy, False); XSetErrorHandler(xerror); XUngrabServer(dpy); - arrange(NULL); + arrange(m); } void