Close when the embedding window is destroyed
This commit is contained in:
		
				
					committed by
					
						 Hiltjo Posthuma
						Hiltjo Posthuma
					
				
			
			
				
	
			
			
			
						parent
						
							65be875f5a
						
					
				
				
					commit
					153aaf88bf
				
			
							
								
								
									
										2
									
								
								LICENSE
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								LICENSE
									
									
									
									
									
								
							| @ -9,7 +9,7 @@ MIT/X Consortium License | ||||
| © 2009 Evan Gates <evan.gates@gmail.com> | ||||
| © 2010-2012 Connor Lane Smith <cls@lubutu.com> | ||||
| © 2014-2019 Hiltjo Posthuma <hiltjo@codemadness.org> | ||||
| © 2015-2018 Quentin Rameau <quinq@fifth.space> | ||||
| © 2015-2019 Quentin Rameau <quinq@fifth.space> | ||||
|  | ||||
| Permission is hereby granted, free of charge, to any person obtaining a | ||||
| copy of this software and associated documentation files (the "Software"), | ||||
|  | ||||
							
								
								
									
										7
									
								
								dmenu.c
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								dmenu.c
									
									
									
									
									
								
							| @ -556,6 +556,11 @@ run(void) | ||||
| 		if (XFilterEvent(&ev, None)) | ||||
| 			continue; | ||||
| 		switch(ev.type) { | ||||
| 		case DestroyNotify: | ||||
| 			if (ev.xdestroywindow.window != win) | ||||
| 				break; | ||||
| 			cleanup(); | ||||
| 			exit(1); | ||||
| 		case Expose: | ||||
| 			if (ev.xexpose.count == 0) | ||||
| 				drw_map(drw, win, 0, 0, mw, mh); | ||||
| @ -667,7 +672,7 @@ setup(void) | ||||
| 	XMapRaised(dpy, win); | ||||
| 	XSetInputFocus(dpy, win, RevertToParent, CurrentTime); | ||||
| 	if (embed) { | ||||
| 		XSelectInput(dpy, parentwin, FocusChangeMask); | ||||
| 		XSelectInput(dpy, parentwin, FocusChangeMask | SubstructureNotifyMask); | ||||
| 		if (XQueryTree(dpy, parentwin, &dw, &w, &dws, &du) && dws) { | ||||
| 			for (i = 0; i < du && dws[i] != win; ++i) | ||||
| 				XSelectInput(dpy, dws[i], FocusChangeMask); | ||||
|  | ||||
		Reference in New Issue
	
	Block a user