JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
implemented ungrabkeys() which is called in cleanup()
[dwm.git] / event.c
diff --git a/event.c b/event.c
index e5ca166..4357eae 100644 (file)
--- a/event.c
+++ b/event.c
@@ -370,3 +370,19 @@ grabkeys()
                                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);
+       }
+}