about summary refs log tree commit diff stats
path: root/main.c
diff options
context:
space:
mode:
authorAnselm R. Garbe <arg@suckless.org>2007-02-19 15:23:35 +0100
committerAnselm R. Garbe <arg@suckless.org>2007-02-19 15:23:35 +0100
commite9c49ddd7a021e99dc2e7518736211ab5bc8cf2c (patch)
tree53a1e310410111719d254fc84b3461bf9f83e80a /main.c
parentf8415019d4edc1cd4f310adb256e6656e85bfe75 (diff)
downloaddwm-e9c49ddd7a021e99dc2e7518736211ab5bc8cf2c.tar.gz
removed procevent, more refactoring
Diffstat (limited to 'main.c')
-rw-r--r--main.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/main.c b/main.c
index 77ce0df..3453b59 100644
--- a/main.c
+++ b/main.c
@@ -379,6 +379,7 @@ main(int argc, char *argv[]) {
 	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(int argc, char *argv[]) {
 
 	/* main event loop, also reads status text from stdin */
 	XSync(dpy, False);
-	procevent();
 	readin = True;
 	while(running) {
 		FD_ZERO(&rd);
@@ -443,7 +443,11 @@ main(int argc, char *argv[]) {
 			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);