moved focus{next,prev} and nexttiled from client.c to layout.c (because those are not client-specific), moved toggleversatile() from layout.c to client.c (because those are client-specific)
This commit is contained in:
		
							parent
							
								
									f196b71e4d
								
							
						
					
					
						commit
						29c26b88e7
					
				
							
								
								
									
										46
									
								
								client.c
									
									
									
									
									
								
							
							
						
						
									
										46
									
								
								client.c
									
									
									
									
									
								
							| @ -170,38 +170,6 @@ focus(Client *c) { | ||||
| 		XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime); | ||||
| } | ||||
| 
 | ||||
| void | ||||
| focusnext(Arg *arg) { | ||||
| 	Client *c; | ||||
|     | ||||
| 	if(!sel) | ||||
| 		return; | ||||
| 	for(c = sel->next; c && !isvisible(c); c = c->next); | ||||
| 	if(!c) | ||||
| 		for(c = clients; c && !isvisible(c); c = c->next); | ||||
| 	if(c) { | ||||
| 		focus(c); | ||||
| 		restack(); | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| void | ||||
| focusprev(Arg *arg) { | ||||
| 	Client *c; | ||||
| 
 | ||||
| 	if(!sel) | ||||
| 		return; | ||||
| 	for(c = sel->prev; c && !isvisible(c); c = c->prev); | ||||
| 	if(!c) { | ||||
| 		for(c = clients; c && c->next; c = c->next); | ||||
| 		for(; c && !isvisible(c); c = c->prev); | ||||
| 	} | ||||
| 	if(c) { | ||||
| 		focus(c); | ||||
| 		restack(); | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| void | ||||
| killclient(Arg *arg) { | ||||
| 	if(!sel) | ||||
| @ -266,12 +234,6 @@ manage(Window w, XWindowAttributes *wa) { | ||||
| 	lt->arrange(); | ||||
| } | ||||
| 
 | ||||
| Client * | ||||
| nexttiled(Client *c) { | ||||
| 	for(; c && (c->isversatile || !isvisible(c)); c = c->next); | ||||
| 	return c; | ||||
| } | ||||
| 
 | ||||
| void | ||||
| resize(Client *c, int x, int y, int w, int h, Bool sizehints) { | ||||
| 	float actual, dx, dy, max, min; | ||||
| @ -340,6 +302,14 @@ resize(Client *c, int x, int y, int w, int h, Bool sizehints) { | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| void | ||||
| toggleversatile(Arg *arg) { | ||||
| 	if(!sel || lt->arrange == versatile) | ||||
| 		return; | ||||
| 	sel->isversatile = !sel->isversatile; | ||||
| 	lt->arrange(); | ||||
| } | ||||
| 
 | ||||
| void | ||||
| updatesizehints(Client *c) { | ||||
| 	long msize; | ||||
|  | ||||
							
								
								
									
										8
									
								
								dwm.h
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								dwm.h
									
									
									
									
									
								
							| @ -105,13 +105,11 @@ extern Window root, barwin; | ||||
| /* client.c */ | ||||
| extern void configure(Client *c);		/* send synthetic configure event */ | ||||
| extern void focus(Client *c);			/* focus c, c may be NULL */ | ||||
| extern void focusnext(Arg *arg);		/* focuses next visible client, arg is ignored  */ | ||||
| extern void focusprev(Arg *arg);		/* focuses previous visible client, arg is ignored */ | ||||
| extern void killclient(Arg *arg);		/* kill c nicely */ | ||||
| extern void manage(Window w, XWindowAttributes *wa);	/* manage new client */ | ||||
| extern Client *nexttiled(Client *c);		/* returns tiled successor of c */ | ||||
| extern void resize(Client *c, int x, int y, | ||||
| 		int w, int h, Bool sizehints);	/* resize with given coordinates c*/ | ||||
| extern void toggleversatile(Arg *arg);		/* toggles focused client between versatile/and non-versatile state */ | ||||
| extern void updatesizehints(Client *c);		/* update the size hint variables of c */ | ||||
| extern void updatetitle(Client *c);		/* update the name of c */ | ||||
| extern void unmanage(Client *c);		/* destroy c */ | ||||
| @ -127,12 +125,14 @@ extern unsigned int textw(const char *text);	/* return the width of text in px*/ | ||||
| extern void grabkeys(void);			/* grab all keys defined in config.h */ | ||||
| 
 | ||||
| /* layout.c */ | ||||
| extern void focusnext(Arg *arg);		/* focuses next visible client, arg is ignored  */ | ||||
| extern void focusprev(Arg *arg);		/* focuses previous visible client, arg is ignored */ | ||||
| extern void incnmaster(Arg *arg);		/* increments nmaster with arg's index value */ | ||||
| extern void initlayouts(void);			/* initialize layout array */ | ||||
| extern Client *nexttiled(Client *c);		/* returns tiled successor of c */ | ||||
| extern void resizemaster(Arg *arg);		/* resizes the master percent with arg's index value */ | ||||
| extern void restack(void);			/* restores z layers of all clients */ | ||||
| extern void setlayout(Arg *arg);		/* sets layout, -1 toggles */ | ||||
| extern void toggleversatile(Arg *arg);		/* toggles focusesd client between versatile/and non-versatile state */ | ||||
| extern void versatile(void);			/* arranges all windows versatile */ | ||||
| 
 | ||||
| /* main.c */ | ||||
|  | ||||
							
								
								
									
										46
									
								
								layout.c
									
									
									
									
									
								
							
							
						
						
									
										46
									
								
								layout.c
									
									
									
									
									
								
							| @ -68,6 +68,38 @@ LAYOUTS | ||||
| 
 | ||||
| /* extern */ | ||||
| 
 | ||||
| void | ||||
| focusnext(Arg *arg) { | ||||
| 	Client *c; | ||||
|     | ||||
| 	if(!sel) | ||||
| 		return; | ||||
| 	for(c = sel->next; c && !isvisible(c); c = c->next); | ||||
| 	if(!c) | ||||
| 		for(c = clients; c && !isvisible(c); c = c->next); | ||||
| 	if(c) { | ||||
| 		focus(c); | ||||
| 		restack(); | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| void | ||||
| focusprev(Arg *arg) { | ||||
| 	Client *c; | ||||
| 
 | ||||
| 	if(!sel) | ||||
| 		return; | ||||
| 	for(c = sel->prev; c && !isvisible(c); c = c->prev); | ||||
| 	if(!c) { | ||||
| 		for(c = clients; c && c->next; c = c->next); | ||||
| 		for(; c && !isvisible(c); c = c->prev); | ||||
| 	} | ||||
| 	if(c) { | ||||
| 		focus(c); | ||||
| 		restack(); | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| void | ||||
| incnmaster(Arg *arg) { | ||||
| 	if((lt->arrange != tile) || (nmaster + arg->i < 1) | ||||
| @ -93,6 +125,12 @@ initlayouts(void) { | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| Client * | ||||
| nexttiled(Client *c) { | ||||
| 	for(; c && (c->isversatile || !isvisible(c)); c = c->next); | ||||
| 	return c; | ||||
| } | ||||
| 
 | ||||
| void | ||||
| resizemaster(Arg *arg) { | ||||
| 	if(lt->arrange != tile) | ||||
| @ -153,14 +191,6 @@ setlayout(Arg *arg) { | ||||
| 		drawstatus(); | ||||
| } | ||||
| 
 | ||||
| void | ||||
| toggleversatile(Arg *arg) { | ||||
| 	if(!sel || lt->arrange == versatile) | ||||
| 		return; | ||||
| 	sel->isversatile = !sel->isversatile; | ||||
| 	lt->arrange(); | ||||
| } | ||||
| 
 | ||||
| void | ||||
| versatile(void) { | ||||
| 	Client *c; | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Anselm R. Garbe
						Anselm R. Garbe