handle properly XKeysymToKeycode's return
This commit is contained in:
parent
a84e558d82
commit
cf1d868666
27
dunst.c
27
dunst.c
@ -899,12 +899,14 @@ void hide_win()
|
|||||||
|
|
||||||
if (key != NoSymbol) {
|
if (key != NoSymbol) {
|
||||||
code = XKeysymToKeycode(dc->dpy, key);
|
code = XKeysymToKeycode(dc->dpy, key);
|
||||||
XUngrabKey(dc->dpy, code, mask, root);
|
if (code != NoSymbol)
|
||||||
|
XUngrabKey(dc->dpy, code, mask, root);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (all_key != NoSymbol) {
|
if (all_key != NoSymbol) {
|
||||||
code = XKeysymToKeycode(dc->dpy, all_key);
|
code = XKeysymToKeycode(dc->dpy, all_key);
|
||||||
XUngrabKey(dc->dpy, code, mask, root);
|
if (code != NoSymbol)
|
||||||
|
XUngrabKey(dc->dpy, code, mask, root);
|
||||||
}
|
}
|
||||||
|
|
||||||
XUngrabButton(dc->dpy, AnyButton, AnyModifier, win);
|
XUngrabButton(dc->dpy, AnyButton, AnyModifier, win);
|
||||||
@ -978,8 +980,11 @@ void setup(void)
|
|||||||
/* grab keys */
|
/* grab keys */
|
||||||
if (history_key != NoSymbol) {
|
if (history_key != NoSymbol) {
|
||||||
code = XKeysymToKeycode(dc->dpy, history_key);
|
code = XKeysymToKeycode(dc->dpy, history_key);
|
||||||
XGrabKey(dc->dpy, code, mask, root, True, GrabModeAsync,
|
if (code == NoSymbol)
|
||||||
GrabModeAsync);
|
fprintf(stderr, "no keycode for keysym '%s'\n", history_key_string);
|
||||||
|
else
|
||||||
|
XGrabKey(dc->dpy, code, mask, root, True, GrabModeAsync,
|
||||||
|
GrabModeAsync);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -996,14 +1001,20 @@ void map_win(void)
|
|||||||
root = RootWindow(dc->dpy, DefaultScreen(dc->dpy));
|
root = RootWindow(dc->dpy, DefaultScreen(dc->dpy));
|
||||||
if (key != NoSymbol) {
|
if (key != NoSymbol) {
|
||||||
code = XKeysymToKeycode(dc->dpy, key);
|
code = XKeysymToKeycode(dc->dpy, key);
|
||||||
XGrabKey(dc->dpy, code, mask, root, True, GrabModeAsync,
|
if (code == NoSymbol)
|
||||||
GrabModeAsync);
|
fprintf(stderr, "no keycode for keysym '%s'\n", key_string);
|
||||||
|
else
|
||||||
|
XGrabKey(dc->dpy, code, mask, root, True, GrabModeAsync,
|
||||||
|
GrabModeAsync);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (all_key != NoSymbol) {
|
if (all_key != NoSymbol) {
|
||||||
code = XKeysymToKeycode(dc->dpy, all_key);
|
code = XKeysymToKeycode(dc->dpy, all_key);
|
||||||
XGrabKey(dc->dpy, code, mask, root, True, GrabModeAsync,
|
if (code == NoSymbol)
|
||||||
GrabModeAsync);
|
fprintf(stderr, "no keycode for keysym '%s'\n", all_key_string);
|
||||||
|
else
|
||||||
|
XGrabKey(dc->dpy, code, mask, root, True, GrabModeAsync,
|
||||||
|
GrabModeAsync);
|
||||||
}
|
}
|
||||||
|
|
||||||
update_screen_info();
|
update_screen_info();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user