XUngrabKeyboard() instead of XUngrabKey()
XUngrabKey(), which is currently used in cleanup(), is not the right counterpart to XGrabKeyboard(), which is used in grabkeyboard(), called from main(). XUngrabKeyboard() is the function to use, as grabbing the whole keyboard is different to grabbing individual keys. With the current code the keyboard gets ungrabbed, as far as I can tell, only by the final XCloseDisplay() in cleanup(), as the XUngrabKey() there effectively does nothing.
This commit is contained in:

committed by
Hiltjo Posthuma

parent
86f0b5119e
commit
b1e217b29a
2
dmenu.c
2
dmenu.c
@ -100,7 +100,7 @@ cleanup(void)
|
|||||||
{
|
{
|
||||||
size_t i;
|
size_t i;
|
||||||
|
|
||||||
XUngrabKey(dpy, AnyKey, AnyModifier, root);
|
XUngrabKeyboard(dpy, CurrentTime);
|
||||||
for (i = 0; i < SchemeLast; i++)
|
for (i = 0; i < SchemeLast; i++)
|
||||||
free(scheme[i]);
|
free(scheme[i]);
|
||||||
for (i = 0; items && items[i].text; ++i)
|
for (i = 0; items && items[i].text; ++i)
|
||||||
|
Reference in New Issue
Block a user