| 
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -10,6 +10,19 @@ | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																/* static functions */ | 
																 | 
																 | 
																/* static functions */ | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																static void | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																grabbutton(Client *c, unsigned int button, unsigned int modifier) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																{ | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XGrabButton(dpy, button, modifier, c->win, False, BUTTONMASK, | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XGrabButton(dpy, button, modifier | LockMask, c->win, False, BUTTONMASK, | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XGrabButton(dpy, button, modifier | numlockmask, c->win, False, BUTTONMASK, | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XGrabButton(dpy, button, modifier | numlockmask | LockMask, c->win, False, BUTTONMASK, | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																} | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																static void | 
																 | 
																 | 
																static void | 
															
														
														
													
														
															
																 | 
																 | 
																resizetitle(Client *c) | 
																 | 
																 | 
																resizetitle(Client *c) | 
															
														
														
													
														
															
																 | 
																 | 
																{ | 
																 | 
																 | 
																{ | 
															
														
														
													
												
													
														
															
																| 
																	
																	
																	
																		
																			
																		
																	
																 | 
																@ -31,6 +44,15 @@ resizetitle(Client *c) | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																} | 
																 | 
																 | 
																} | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																static void | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																ungrabbutton(Client *c, unsigned int button, unsigned int modifier) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																{ | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XUngrabButton(dpy, button, modifier, c->win); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XUngrabButton(dpy, button, modifier | LockMask, c->win); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XUngrabButton(dpy, button, modifier | numlockmask, c->win); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XUngrabButton(dpy, button, modifier | numlockmask | LockMask, c->win); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																} | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																static int | 
																 | 
																 | 
																static int | 
															
														
														
													
														
															
																 | 
																 | 
																xerrordummy(Display *dsply, XErrorEvent *ee) | 
																 | 
																 | 
																xerrordummy(Display *dsply, XErrorEvent *ee) | 
															
														
														
													
														
															
																 | 
																 | 
																{ | 
																 | 
																 | 
																{ | 
															
														
														
													
												
													
														
															
																| 
																	
																	
																	
																		
																			
																		
																	
																 | 
																@ -53,11 +75,14 @@ focus(Client *c) | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																	if (!issel) | 
																 | 
																 | 
																	if (!issel) | 
															
														
														
													
														
															
																 | 
																 | 
																		return; | 
																 | 
																 | 
																		return; | 
															
														
														
													
														
															
																 | 
																 | 
																	if(sel && sel->ismax) | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	if(sel && sel->ismax && sel != c) | 
															
														
														
													
														
															
																 | 
																 | 
																		togglemax(NULL); | 
																 | 
																 | 
																		togglemax(NULL); | 
															
														
														
													
														
															
																 | 
																 | 
																	sel = c; | 
																 | 
																 | 
																	sel = c; | 
															
														
														
													
														
															
																 | 
																 | 
																	if(old && old != c) | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	if(old && old != c) { | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		grabbutton(old, AnyButton, 0); | 
															
														
														
													
														
															
																 | 
																 | 
																		drawtitle(old); | 
																 | 
																 | 
																		drawtitle(old); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	} | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	ungrabbutton(c, AnyButton, 0); | 
															
														
														
													
														
															
																 | 
																 | 
																	drawtitle(c); | 
																 | 
																 | 
																	drawtitle(c); | 
															
														
														
													
														
															
																 | 
																 | 
																	XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime); | 
																 | 
																 | 
																	XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime); | 
															
														
														
													
														
															
																 | 
																 | 
																} | 
																 | 
																 | 
																} | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -230,32 +255,9 @@ manage(Window w, XWindowAttributes *wa) | 
															
														
														
													
														
															
																 | 
																 | 
																	c->next = clients; | 
																 | 
																 | 
																	c->next = clients; | 
															
														
														
													
														
															
																 | 
																 | 
																	clients = c; | 
																 | 
																 | 
																	clients = c; | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button1, MODKEY, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button1, MODKEY | LockMask, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button1, MODKEY | numlockmask, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button1, MODKEY | numlockmask | LockMask, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button2, MODKEY, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button2, MODKEY | LockMask, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button2, MODKEY | numlockmask, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button2, MODKEY | numlockmask | LockMask, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button3, MODKEY, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button3, MODKEY | LockMask, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button3, MODKEY | numlockmask, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	XGrabButton(dpy, Button3, MODKEY | numlockmask | LockMask, c->win, False, BUTTONMASK, | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																			GrabModeAsync, GrabModeSync, None, None); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	grabbutton(c, Button1, MODKEY); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	grabbutton(c, Button2, MODKEY); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	grabbutton(c, Button3, MODKEY); | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																	settags(c); | 
																 | 
																 | 
																	settags(c); | 
															
														
														
													
														
															
																 | 
																 | 
																	if(!c->isfloat) | 
																 | 
																 | 
																	if(!c->isfloat) | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																	
																 | 
																
  |