コード例 #1
0
ファイル: keys.py プロジェクト: Hammer2900/rama
 def __init__(self, conn, keys=None):
     if keys is None:
         keys = {}
     self.numlockmask = get_numlock_mask(conn)
     self.syms = Keysyms(conn)
     for keystr in keys:
         self.bind(keystr, keys[keystr])
コード例 #2
0
ファイル: keys.py プロジェクト: Hammer2900/rama
def get_numlock_mask(conn):
    syms = Keysyms(conn)
    numlock = syms.get_keycode(keysyms['Num_Lock'])
    modmap = conn.core.GetModifierMapping().reply()
    for i in range(8):
        for j in range(modmap.keycodes_per_modifier):
            keycode = modmap.keycodes[i * modmap.keycodes_per_modifier + j]
            if keycode == numlock:
                return MASKS[i]
    return 0