diff options
author | Anselm R Garbe <garbeam@gmail.com> | 2008-05-19 14:44:53 +0100 |
---|---|---|
committer | Anselm R Garbe <garbeam@gmail.com> | 2008-05-19 14:44:53 +0100 |
commit | 4a5c8d84dbf410b8b9aa4dc81954568f10ca104f (patch) | |
tree | 81566dbab92ca5487e5ce84fa340a0f31bd2b0a9 | |
parent | 71365a524f67235024de7db277c63f8ac4f46569 (diff) | |
download | dwm-4a5c8d84dbf410b8b9aa4dc81954568f10ca104f.tar.gz |
improving space usage if master is left of stack (default)
-rw-r--r-- | tile.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/tile.c b/tile.c index 6a58282..8269676 100644 --- a/tile.c +++ b/tile.c @@ -26,7 +26,7 @@ setmfact(const char *arg) { void tile(void) { - int y, h; + int x, y, h, w; unsigned int i, n; Client *c; @@ -46,16 +46,18 @@ tile(void) { return; /* tile stack */ + x = (tx > c->x + c->w) ? c->x + c->w + 2 * c->bw : tw; y = ty; + w = (tx > c->x + c->w) ? wx + ww - x : tw; h = th / n; if(h < bh) h = th; for(i = 0, c = nextunfloating(c->next); c; c = nextunfloating(c->next), i++) { if(i + 1 == n) /* remainder */ - tileresize(c, tx, y, tw - 2 * c->bw, (ty + th) - y - 2 * c->bw); + tileresize(c, x, y, w - 2 * c->bw, (ty + th) - y - 2 * c->bw); else - tileresize(c, tx, y, tw - 2 * c->bw, h - 2 * c->bw); + tileresize(c, x, y, w - 2 * c->bw, h - 2 * c->bw); if(h != th) y = c->y + c->h + 2 * c->bw; } |