main.c
changeset 778 2ec66bdbb8ad
parent 777 469dc170f833
child 782 92862ab407d5
--- a/main.c	Mon Feb 19 15:17:31 2007 +0100
+++ b/main.c	Mon Feb 19 15:23:35 2007 +0100
@@ -379,6 +379,7 @@
 	char *p;
 	int r, xfd;
 	fd_set rd;
+	XEvent ev;
 
 	if(argc == 2 && !strncmp("-v", argv[1], 3)) {
 		fputs("dwm-"VERSION", (C)opyright MMVI-MMVII Anselm R. Garbe\n", stdout);
@@ -411,7 +412,6 @@
 
 	/* main event loop, also reads status text from stdin */
 	XSync(dpy, False);
-	procevent();
 	readin = True;
 	while(running) {
 		FD_ZERO(&rd);
@@ -443,7 +443,11 @@
 			drawstatus();
 		}
 		if(FD_ISSET(xfd, &rd))
-			procevent();
+			while(XPending(dpy)) {
+				XNextEvent(dpy, &ev);
+				if(handler[ev.type])
+					(handler[ev.type])(&ev); /* call handler */
+			}
 	}
 	cleanup();
 	XCloseDisplay(dpy);