aewl
changeset 104:3a708f113f55
implemented fallback for too many clients in stacked mode
author | arg@10ksloc.org |
---|---|
date | Wed, 19 Jul 2006 13:36:04 +0200 |
parents | 130d49140341 |
children | 3e74cc981e9b |
files | client.c tag.c |
diffstat | 2 files changed, 10 insertions(+), 3 deletions(-) [+] |
line diff
1.1 --- a/client.c Wed Jul 19 13:30:18 2006 +0200 1.2 +++ b/client.c Wed Jul 19 13:36:04 2006 +0200 1.3 @@ -201,8 +201,6 @@ 1.4 c->win = w; 1.5 c->bx = c->fx = c->tx = wa->x; 1.6 c->by = c->fy = c->ty = wa->y; 1.7 - if(c->fy < bh) 1.8 - c->by = c->fy = c->ty += bh; 1.9 c->bw = c->fw = c->tw = wa->width; 1.10 c->fh = c->th = wa->height; 1.11 c->bh = bh; 1.12 @@ -212,6 +210,9 @@ 1.13 diff = sh - c->fh - bh; 1.14 c->fy = random() % (diff ? diff : 1); 1.15 1.16 + if(c->fy < bh) 1.17 + c->by = c->fy = c->ty = bh; 1.18 + 1.19 c->border = 1; 1.20 c->proto = getproto(c->win); 1.21 setsize(c);
2.1 --- a/tag.c Wed Jul 19 13:30:18 2006 +0200 2.2 +++ b/tag.c Wed Jul 19 13:36:04 2006 +0200 2.3 @@ -96,12 +96,18 @@ 2.4 *c->w = mw - 2 * c->border; 2.5 *c->h = sh - 2 * c->border - bh; 2.6 } 2.7 - else { 2.8 + else if(h > bh) { 2.9 *c->x = sx + mw; 2.10 *c->y = sy + (i - 1) * h + bh; 2.11 *c->w = w - 2 * c->border; 2.12 *c->h = h - 2 * c->border; 2.13 } 2.14 + else { /* fallback if h < bh */ 2.15 + *c->x = sx + mw; 2.16 + *c->y = sy + bh; 2.17 + *c->w = w - 2 * c->border; 2.18 + *c->h = sh - 2 * c->border - bh; 2.19 + } 2.20 resize(c, False, TopLeft); 2.21 i++; 2.22 }