t* dwm + patches
       
   URI git clone git://git.codevoid.de/dwm-sdk
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit 57416beefec4db451a75a1d25434b69cf50badad
   DIR parent 1b63f832c528958042d72fddc318af5aefdcb68a
   URI Author: arg@10ksloc.org <unknown>
       Date:   Tue,  1 Aug 2006 12:41:38 +0200
       
       applied Cedric's NumLock patch
       
       Diffstat:
         M event.c                             |      18 +++++++++++++++++-
       
       1 file changed, 17 insertions(+), 1 deletion(-)
       ---
   DIR diff --git a/event.c b/event.c
       t@@ -57,6 +57,9 @@ static Key key[] = {
                { MODKEY|ShiftMask,        XK_w,                spawn,                { .argv = browse } },
        };
        
       +#define NumLockMask Mod2Mask
       +unsigned int valid_mask =  255 &  ~( NumLockMask | LockMask);
       +
        /* END CUSTOMIZE */
        
        /* static */
       t@@ -271,10 +274,11 @@ keypress(XEvent *e)
                unsigned int i;
                KeySym keysym;
                XKeyEvent *ev = &e->xkey;
       +        ev->state &= valid_mask;
        
                keysym = XKeycodeToKeysym(dpy, (KeyCode)ev->keycode, 0);
                for(i = 0; i < len; i++)
       -                if((keysym == key[i].keysym) && (key[i].mod == ev->state)) {
       +                if((keysym == key[i].keysym) && ((key[i].mod & valid_mask) == ev->state)) {
                                if(key[i].func)
                                        key[i].func(&key[i].arg);
                                return;
       t@@ -377,7 +381,19 @@ grabkeys()
                for(i = 0; i < len; i++) {
                        code = XKeysymToKeycode(dpy, key[i].keysym);
                        XUngrabKey(dpy, code, key[i].mod, root);
       +                if (NumLockMask)
       +                {
       +                        XUngrabKey(dpy, code, key[i].mod | NumLockMask, root);
       +                        XUngrabKey(dpy, code, key[i].mod | NumLockMask | LockMask, root);
       +                }
                        XGrabKey(dpy, code, key[i].mod, root, True,
                                        GrabModeAsync, GrabModeAsync);
       +                if (NumLockMask)
       +                {
       +                        XGrabKey(dpy, code, key[i].mod | NumLockMask, root, True,
       +                                        GrabModeAsync, GrabModeAsync);
       +                        XGrabKey(dpy, code, key[i].mod | NumLockMask | LockMask, root, True,
       +                                        GrabModeAsync, GrabModeAsync);
       +                }
                }
        }