diff options
| author | Anselm R.Garbe <arg@10ksloc.org> | 2006-08-14 15:11:02 +0200 | 
|---|---|---|
| committer | Anselm R.Garbe <arg@10ksloc.org> | 2006-08-14 15:11:02 +0200 | 
| commit | 2ffdc1936cf13af5df0cc6d9415961dbe13b9cf8 (patch) | |
| tree | 4409e43ea13ef9540ad320cbfe61c53c6bd84a8b | |
| parent | 0fe52c63ea9382a940afa7573993218ead14c2cf (diff) | |
some other small fixes
| -rw-r--r-- | event.c | 6 | ||||
| -rw-r--r-- | main.c | 16 | 
2 files changed, 12 insertions, 10 deletions
| @@ -254,13 +254,15 @@ keypress(XEvent *e)  	XKeyEvent *ev = &e->xkey;  	keysym = XKeycodeToKeysym(dpy, (KeyCode)ev->keycode, 0); -	for(i = 0; i < len; i++) +	for(i = 0; i < len; i++) {  		if(keysym == key[i].keysym && -				CLEANMASK(key[i].mod) == CLEANMASK(ev->state)) { +				CLEANMASK(key[i].mod) == CLEANMASK(ev->state)) +		{  			if(key[i].func)  				key[i].func(&key[i].arg);  			return;  		} +	}  }  static void @@ -196,6 +196,7 @@ main(int argc, char *argv[])  	XSetErrorHandler(NULL);  	xerrorxlib = XSetErrorHandler(xerror); +	XSync(dpy, False);  	/* init atoms */  	wmatom[WMProtocols] = XInternAtom(dpy, "WM_PROTOCOLS", False); @@ -269,13 +270,6 @@ main(int argc, char *argv[])  		if(i < 0)  			eprint("select failed\n");  		else if(i > 0) { -			if(FD_ISSET(xfd, &rd)) { -				while(XPending(dpy)) { -					XNextEvent(dpy, &ev); -					if(handler[ev.type]) -						(handler[ev.type])(&ev); /* call handler */ -				} -			}  			if(readin && FD_ISSET(STDIN_FILENO, &rd)) {  				readin = NULL != fgets(stext, sizeof(stext), stdin);  				if(readin) @@ -284,9 +278,15 @@ main(int argc, char *argv[])  					strcpy(stext, "broken pipe");  				drawstatus();  			} +			if(FD_ISSET(xfd, &rd)) { +				while(XPending(dpy)) { +					XNextEvent(dpy, &ev); +					if(handler[ev.type]) +						(handler[ev.type])(&ev); /* call handler */ +				} +			}  		}  	} -  	cleanup();  	XCloseDisplay(dpy); | 
