52 lines
		
	
	
		
			774 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			774 B
		
	
	
	
		
			C
		
	
	
	
	
	
void
 | 
						|
enqueue(Client *c)
 | 
						|
{
 | 
						|
	Client *l;
 | 
						|
	for (l = c->mon->clients; l && l->next; l = l->next);
 | 
						|
	if (l) {
 | 
						|
		l->next = c;
 | 
						|
		c->next = NULL;
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
enqueuestack(Client *c)
 | 
						|
{
 | 
						|
	Client *l;
 | 
						|
	for (l = c->mon->stack; l && l->snext; l = l->snext);
 | 
						|
	if (l) {
 | 
						|
		l->snext = c;
 | 
						|
		c->snext = NULL;
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
rotatestack(const Arg *arg)
 | 
						|
{
 | 
						|
	Client *c = NULL, *f;
 | 
						|
 | 
						|
	if (!selmon->sel)
 | 
						|
		return;
 | 
						|
	f = selmon->sel;
 | 
						|
	if (arg->i > 0) {
 | 
						|
		for (c = nexttiled(selmon->clients); c && nexttiled(c->next); c = nexttiled(c->next));
 | 
						|
		if (c){
 | 
						|
			detach(c);
 | 
						|
			attach(c);
 | 
						|
			detachstack(c);
 | 
						|
			attachstack(c);
 | 
						|
		}
 | 
						|
	} else {
 | 
						|
		if ((c = nexttiled(selmon->clients))){
 | 
						|
			detach(c);
 | 
						|
			enqueue(c);
 | 
						|
			detachstack(c);
 | 
						|
			enqueuestack(c);
 | 
						|
		}
 | 
						|
	}
 | 
						|
	if (c){
 | 
						|
		arrange(selmon);
 | 
						|
		focus(f);
 | 
						|
		restack(selmon);
 | 
						|
	}
 | 
						|
} |