all repos — dwm @ 375a251d16de567b6c62cce208f388cd16e0ce0f

my dwm build

implemented ungrabkeys() which is called in cleanup()
Anselm R.Garbe arg@10ksloc.org
Mon, 14 Aug 2006 10:24:38 +0200
commit

375a251d16de567b6c62cce208f388cd16e0ce0f

parent

d4b7a9a3735deeab639f28b5bb2f568e0dc49616

3 files changed, 18 insertions(+), 0 deletions(-)

jump to
M dwm.hdwm.h

@@ -108,6 +108,7 @@ extern unsigned int textw(const char *text);

/* event.c */ extern void grabkeys(); +extern void ungrabkeys(); /* main.c */ extern int getproto(Window w);
M event.cevent.c

@@ -370,3 +370,19 @@ XGrabKey(dpy, code, key[i].mod | NUMLOCKMASK | LockMask, root, True,

GrabModeAsync, GrabModeAsync); } } + +void +ungrabkeys() +{ + static unsigned int len = sizeof(key) / sizeof(key[0]); + unsigned int i; + KeyCode code; + + for(i = 0; i < len; i++) { + code = XKeysymToKeycode(dpy, key[i].keysym); + XUngrabKey(dpy, code, key[i].mod, root); + XUngrabKey(dpy, code, key[i].mod | LockMask, root); + XUngrabKey(dpy, code, key[i].mod | NUMLOCKMASK, root); + XUngrabKey(dpy, code, key[i].mod | NUMLOCKMASK | LockMask, root); + } +}
M main.cmain.c

@@ -22,6 +22,7 @@

static void cleanup() { + ungrabkeys(); while(sel) { resize(sel, True, TopLeft); unmanage(sel);