| 
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -111,6 +111,24 @@ initfont(const char *fontstr) { | 
															
														
														
													
														
															
																 | 
																 | 
																	dc.font.height = dc.font.ascent + dc.font.descent; | 
																 | 
																 | 
																	dc.font.height = dc.font.ascent + dc.font.descent; | 
															
														
														
													
														
															
																 | 
																 | 
																} | 
																 | 
																 | 
																} | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																static long | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																getstate(Window w) { | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	int format, status; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	long result = -1; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	unsigned char *p = NULL; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	unsigned long n, extra; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	Atom real; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	status = XGetWindowProperty(dpy, w, wmatom[WMState], 0L, 2L, False, wmatom[WMState], | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			&real, &format, &n, &extra, (unsigned char **)&p); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	if(status != Success) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		return -1; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	if(n != 0) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		result = *p; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	XFree(p); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	return result; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																} | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																static void | 
																 | 
																 | 
																static void | 
															
														
														
													
														
															
																 | 
																 | 
																scan(void) { | 
																 | 
																 | 
																scan(void) { | 
															
														
														
													
														
															
																 | 
																 | 
																	unsigned int i, num; | 
																 | 
																 | 
																	unsigned int i, num; | 
															
														
														
													
												
													
														
															
																| 
																	
																	
																	
																		
																			
																		
																	
																 | 
																@ -123,7 +141,14 @@ scan(void) { | 
															
														
														
													
														
															
																 | 
																 | 
																			if(!XGetWindowAttributes(dpy, wins[i], &wa) | 
																 | 
																 | 
																			if(!XGetWindowAttributes(dpy, wins[i], &wa) | 
															
														
														
													
														
															
																 | 
																 | 
																			|| wa.override_redirect || XGetTransientForHint(dpy, wins[i], &d1)) | 
																 | 
																 | 
																			|| wa.override_redirect || XGetTransientForHint(dpy, wins[i], &d1)) | 
															
														
														
													
														
															
																 | 
																 | 
																				continue; | 
																 | 
																 | 
																				continue; | 
															
														
														
													
														
															
																 | 
																 | 
																			if(wa.map_state == IsViewable) | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			if(wa.map_state == IsViewable || getstate(wins[i]) == IconicState) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																				manage(wins[i], &wa); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		} | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		for(i = 0; i < num; i++) { /* now the transients */ | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			if(!XGetWindowAttributes(dpy, wins[i], &wa)) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																				continue; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			if(XGetTransientForHint(dpy, wins[i], &d1) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			&& (wa.map_state == IsViewable || getstate(wins[i]) == IconicState)) | 
															
														
														
													
														
															
																 | 
																 | 
																				manage(wins[i], &wa); | 
																 | 
																 | 
																				manage(wins[i], &wa); | 
															
														
														
													
														
															
																 | 
																 | 
																		} | 
																 | 
																 | 
																		} | 
															
														
														
													
														
															
																 | 
																 | 
																	} | 
																 | 
																 | 
																	} | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																	
																 | 
																
  |