16 lines
		
	
	
		
			418 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			16 lines
		
	
	
		
			418 B
		
	
	
	
		
			C
		
	
	
	
	
	
void
 | 
						|
cyclelayout(const Arg *arg) {
 | 
						|
	Layout *l;
 | 
						|
	for(l = (Layout *)layouts; l != selmon->lt[selmon->sellt]; l++);
 | 
						|
	if(arg->i > 0) {
 | 
						|
		if(l->symbol && (l + 1)->symbol)
 | 
						|
			setlayout(&((Arg) { .v = (l + 1) }));
 | 
						|
		else
 | 
						|
			setlayout(&((Arg) { .v = layouts }));
 | 
						|
	} else {
 | 
						|
		if(l != layouts && (l - 1)->symbol)
 | 
						|
			setlayout(&((Arg) { .v = (l - 1) }));
 | 
						|
		else
 | 
						|
			setlayout(&((Arg) { .v = &layouts[LENGTH(layouts) - 2] }));
 | 
						|
	}
 | 
						|
} |