32 lines
		
	
	
		
			838 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			838 B
		
	
	
	
		
			C
		
	
	
	
	
	
void
 | 
						|
setborderpx(const Arg *arg)
 | 
						|
{
 | 
						|
	Client *c;
 | 
						|
	int prev_borderpx = selmon->borderpx;
 | 
						|
 | 
						|
	if (arg->i == 0)
 | 
						|
		selmon->borderpx = borderpx;
 | 
						|
	else if (selmon->borderpx + arg->i < 0)
 | 
						|
		selmon->borderpx = 0;
 | 
						|
	else
 | 
						|
		selmon->borderpx += arg->i;
 | 
						|
 | 
						|
	for (c = selmon->clients; c; c = c->next)
 | 
						|
	{
 | 
						|
		if (c->bw + arg->i < 0)
 | 
						|
			c->bw = selmon->borderpx = 0;
 | 
						|
		else
 | 
						|
			c->bw = selmon->borderpx;
 | 
						|
 | 
						|
		if (c->isfloating || !selmon->lt[selmon->sellt]->arrange)
 | 
						|
		{
 | 
						|
			if (arg->i != 0)
 | 
						|
				resize(c, c->x, c->y, c->w-(arg->i*2), c->h-(arg->i*2), 0);
 | 
						|
			else if (prev_borderpx > borderpx)
 | 
						|
				resize(c, c->x, c->y, c->w + 2*(prev_borderpx - borderpx), c->h + 2*(prev_borderpx - borderpx), 0);
 | 
						|
			else if (prev_borderpx < borderpx)
 | 
						|
				resize(c, c->x, c->y, c->w - 2*(borderpx - prev_borderpx), c->h - 2*(borderpx - prev_borderpx), 0);
 | 
						|
		}
 | 
						|
	}
 | 
						|
	arrange(selmon);
 | 
						|
} |