layout.c
changeset 871 75aa81011594
parent 870 21632814ba18
child 875 73cd10af065a
equal deleted inserted replaced
870:21632814ba18 871:75aa81011594
    13 static unsigned int masterw = MASTERWIDTH;
    13 static unsigned int masterw = MASTERWIDTH;
    14 static unsigned int nmaster = NMASTER;
    14 static unsigned int nmaster = NMASTER;
    15 
    15 
    16 static void
    16 static void
    17 tile(void) {
    17 tile(void) {
    18 	unsigned int i, n, nx, ny, nw, nh, mw, mh, tw, th, remain;
    18 	unsigned int i, n, nx, ny, nw, nh, mw, mh, tw, th, remainder;
    19 	Client *c;
    19 	Client *c;
    20 
    20 
    21 	for(n = 0, c = nexttiled(clients); c; c = nexttiled(c->next))
    21 	for(n = 0, c = nexttiled(clients); c; c = nexttiled(c->next))
    22 		n++;
    22 		n++;
    23 	/* window geoms */
    23 	/* window geoms */
    24 	mh = (n > nmaster) ? wah / nmaster : wah / (n > 0 ? n : 1);
    24 	mh = (n > nmaster) ? wah / nmaster : wah / (n > 0 ? n : 1);
    25 	mw = (n > nmaster) ? (waw * masterw) / 1000 : waw;
    25 	mw = (n > nmaster) ? (waw * masterw) / 1000 : waw;
    26 	th = (n > nmaster) ? wah / (n - nmaster) : 0;
    26 	th = (n > nmaster) ? wah / (n - nmaster) : 0;
    27 	remain = (n > nmaster) ? wah - th * (n - nmaster) : 0;
    27 	remainder = (n > nmaster) ? wah - th * (n - nmaster) : 0;
    28 	tw = waw - mw;
    28 	tw = waw - mw;
    29 
    29 
    30 	for(i = 0, c = clients; c; c = c->next)
    30 	for(i = 0, c = clients; c; c = c->next)
    31 		if(isvisible(c)) {
    31 		if(isvisible(c)) {
    32 			if(c->isbanned)
    32 			if(c->isbanned)
    47 				nw = tw - 2 * c->border;
    47 				nw = tw - 2 * c->border;
    48 				if(th > 2 * c->border) {
    48 				if(th > 2 * c->border) {
    49 					ny += (i - nmaster) * th;
    49 					ny += (i - nmaster) * th;
    50 					nh = th - 2 * c->border;
    50 					nh = th - 2 * c->border;
    51 					if (i == n - 1)
    51 					if (i == n - 1)
    52 						nh += remain;
    52 						nh += remainder;
    53 				}
    53 				}
    54 				else /* fallback if th <= 2 * c->border */
    54 				else /* fallback if th <= 2 * c->border */
    55 					nh = wah - 2 * c->border;
    55 					nh = wah - 2 * c->border;
    56 			}
    56 			}
    57 			resize(c, nx, ny, nw, nh, False);
    57 			resize(c, nx, ny, nw, nh, False);