| 
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -143,6 +143,7 @@ setup(void) { | 
															
														
														
													
														
															
																 | 
																 | 
																	dwmprops = XInternAtom(dpy, "_DWM_PROPERTIES", False); | 
																 | 
																 | 
																	dwmprops = XInternAtom(dpy, "_DWM_PROPERTIES", False); | 
															
														
														
													
														
															
																 | 
																 | 
																	wmatom[WMProtocols] = XInternAtom(dpy, "WM_PROTOCOLS", False); | 
																 | 
																 | 
																	wmatom[WMProtocols] = XInternAtom(dpy, "WM_PROTOCOLS", False); | 
															
														
														
													
														
															
																 | 
																 | 
																	wmatom[WMDelete] = XInternAtom(dpy, "WM_DELETE_WINDOW", False); | 
																 | 
																 | 
																	wmatom[WMDelete] = XInternAtom(dpy, "WM_DELETE_WINDOW", False); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	wmatom[WMName] = XInternAtom(dpy, "WM_NAME", False); | 
															
														
														
													
														
															
																 | 
																 | 
																	wmatom[WMState] = XInternAtom(dpy, "WM_STATE", False); | 
																 | 
																 | 
																	wmatom[WMState] = XInternAtom(dpy, "WM_STATE", False); | 
															
														
														
													
														
															
																 | 
																 | 
																	netatom[NetSupported] = XInternAtom(dpy, "_NET_SUPPORTED", False); | 
																 | 
																 | 
																	netatom[NetSupported] = XInternAtom(dpy, "_NET_SUPPORTED", False); | 
															
														
														
													
														
															
																 | 
																 | 
																	netatom[NetWMName] = XInternAtom(dpy, "_NET_WM_NAME", False); | 
																 | 
																 | 
																	netatom[NetWMName] = XInternAtom(dpy, "_NET_WM_NAME", False); | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -220,6 +221,33 @@ xerrorstart(Display *dsply, XErrorEvent *ee) { | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																/* extern */ | 
																 | 
																 | 
																/* extern */ | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																Bool | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																gettextprop(Window w, Atom atom, char *text, unsigned int size) { | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	char **list = NULL; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	int n; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XTextProperty name; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	if(!text || size == 0) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		return False; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	text[0] = '\0'; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XGetTextProperty(dpy, w, &name, atom); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	if(!name.nitems) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		return False; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	if(name.encoding == XA_STRING) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		strncpy(text, (char *)name.value, size - 1); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	else { | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		if(XmbTextPropertyToTextList(dpy, &name, &list, &n) >= Success | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		&& n > 0 && *list) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		{ | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			strncpy(text, *list, size - 1); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			XFreeStringList(list); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		} | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	} | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	text[size - 1] = '\0'; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XFree(name.value); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	return True; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																} | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																void | 
																 | 
																 | 
																void | 
															
														
														
													
														
															
																 | 
																 | 
																quit(const char *arg) { | 
																 | 
																 | 
																quit(const char *arg) { | 
															
														
														
													
														
															
																 | 
																 | 
																	readin = running = False; | 
																 | 
																 | 
																	readin = running = False; | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																	
																 | 
																
  |