Ignore numlock (Mod2Mask) for button events too. - st - Personal fork of st
 (HTM) git clone git://git.drkhsh.at/st.git
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 297c886b72f4e9093973aaa14b66d392f6196634
 (DIR) parent 0f6942cdf6f8220f1ecd06e4b398e95c43833d44
 (HTM) Author: Mark Edgar <medgar123@gmail.com>
       Date:   Sun, 22 Sep 2013 00:07:49 +0200
       
       Ignore numlock (Mod2Mask) for button events too.
       
       Conflicts:
               config.def.h
               st.c
       
       Diffstat:
         M config.def.h                        |       6 +++---
         M st.c                                |       1 -
       
       2 files changed, 3 insertions(+), 4 deletions(-)
       ---
 (DIR) diff --git a/config.def.h b/config.def.h
       @@ -146,10 +146,10 @@ static Shortcut shortcuts[] = {
        static KeySym mappedkeys[] = { -1 };
        
        /*
       - * Which bits of the state should be ignored. By default the state bit for the
       - * keyboard layout (XK_SWITCH_MOD) is ignored.
       + * State bits to ignore when matching key or button events.  By default,
       + * numlock (Mod2Mask) and keyboard layout (XK_SWITCH_MOD) are ignored.
         */
       -uint ignoremod = XK_SWITCH_MOD;
       +static uint ignoremod = Mod2Mask|XK_SWITCH_MOD;
        
        /* key, mask, output, keypad, cursor, crlf */
        static Key key[] = {
 (DIR) diff --git a/st.c b/st.c
       @@ -3579,7 +3579,6 @@ kpress(XEvent *ev) {
                        return;
        
                len = XmbLookupString(xw.xic, e, buf, sizeof buf, &ksym, &status);
       -        e->state &= ~Mod2Mask;
                /* 1. shortcuts */
                for(bp = shortcuts; bp < shortcuts + LEN(shortcuts); bp++) {
                        if(ksym == bp->keysym && match(bp->mod, e->state)) {