358 { |
359 { |
359 static unsigned int len = sizeof(key) / sizeof(key[0]); |
360 static unsigned int len = sizeof(key) / sizeof(key[0]); |
360 unsigned int i; |
361 unsigned int i; |
361 KeyCode code; |
362 KeyCode code; |
362 |
363 |
|
364 while(XGrabKeyboard(dpy, root, True, GrabModeAsync, |
|
365 GrabModeAsync, CurrentTime) != GrabSuccess) |
|
366 usleep(1000); |
|
367 XUngrabKeyboard(dpy, CurrentTime); |
|
368 |
363 for(i = 0; i < len; i++) { |
369 for(i = 0; i < len; i++) { |
364 code = XKeysymToKeycode(dpy, key[i].keysym); |
370 code = XKeysymToKeycode(dpy, key[i].keysym); |
365 XGrabKey(dpy, code, key[i].mod, root, True, |
371 XGrabKey(dpy, code, key[i].mod, root, True, |
366 GrabModeAsync, GrabModeAsync); |
372 GrabModeAsync, GrabModeAsync); |
367 XGrabKey(dpy, code, key[i].mod | LockMask, root, True, |
373 XGrabKey(dpy, code, key[i].mod | LockMask, root, True, |