357 unsigned int i; |
357 unsigned int i; |
358 KeyCode code; |
358 KeyCode code; |
359 |
359 |
360 for(i = 0; i < len; i++) { |
360 for(i = 0; i < len; i++) { |
361 code = XKeysymToKeycode(dpy, key[i].keysym); |
361 code = XKeysymToKeycode(dpy, key[i].keysym); |
362 /* normal */ |
|
363 XUngrabKey(dpy, code, key[i].mod, root); |
|
364 XGrabKey(dpy, code, key[i].mod, root, True, |
362 XGrabKey(dpy, code, key[i].mod, root, True, |
365 GrabModeAsync, GrabModeAsync); |
363 GrabModeAsync, GrabModeAsync); |
366 /* capslock */ |
|
367 XUngrabKey(dpy, code, key[i].mod | LockMask, root); |
|
368 XGrabKey(dpy, code, key[i].mod | LockMask, root, True, |
364 XGrabKey(dpy, code, key[i].mod | LockMask, root, True, |
369 GrabModeAsync, GrabModeAsync); |
365 GrabModeAsync, GrabModeAsync); |
370 /* numlock */ |
|
371 XUngrabKey(dpy, code, key[i].mod | NUMLOCKMASK, root); |
|
372 XGrabKey(dpy, code, key[i].mod | NUMLOCKMASK, root, True, |
366 XGrabKey(dpy, code, key[i].mod | NUMLOCKMASK, root, True, |
373 GrabModeAsync, GrabModeAsync); |
367 GrabModeAsync, GrabModeAsync); |
374 /* capslock & numlock */ |
|
375 XUngrabKey(dpy, code, key[i].mod | NUMLOCKMASK | LockMask, root); |
|
376 XGrabKey(dpy, code, key[i].mod | NUMLOCKMASK | LockMask, root, True, |
368 XGrabKey(dpy, code, key[i].mod | NUMLOCKMASK | LockMask, root, True, |
377 GrabModeAsync, GrabModeAsync); |
369 GrabModeAsync, GrabModeAsync); |
378 } |
370 } |
379 } |
371 } |