def mask_to_names(self, mask): names = KeyboardBase.mask_to_names(self, mask) if self.swap_keys and self.meta_modifier is not None and self.control_modifier is not None: meta_on = bool(mask & META_MASK) meta_set = self.meta_modifier in names control_set = self.control_modifier in names log("mask_to_names names=%s, meta_on=%s, meta_set=%s, control_set=%s", names, meta_on, meta_set, control_set) if meta_on and not control_set: log("mask_to_names swapping meta for control: %s for %s", self.meta_modifier, self.control_modifier) names.append(self.control_modifier) if meta_set: names.remove(self.meta_modifier) elif control_set and not meta_on: log("mask_to_names swapping control for meta: %s for %s", self.control_modifier, self.meta_modifier) names.remove(self.control_modifier) if not meta_set: names.append(self.meta_modifier) #deal with numlock: if self.num_lock_modifier is not None: if self.num_lock_state and self.num_lock_modifier not in names: names.append(self.num_lock_modifier) elif not self.num_lock_state and self.num_lock_modifier in names: names.remove(self.num_lock_modifier) log("mask_to_names(%s)=%s", mask, names) return names
def mask_to_names(self, mask): names = KeyboardBase.mask_to_names(self, mask) if self.swap_keys and self.meta_modifier is not None and self.control_modifier is not None: meta_on = bool(mask & META_MASK) meta_set = self.meta_modifier in names control_set = self.control_modifier in names log( "mask_to_names names=%s, meta_on=%s, meta_set=%s, control_set=%s", names, meta_on, meta_set, control_set) if meta_on and not control_set: log("mask_to_names swapping meta for control: %s for %s", self.meta_modifier, self.control_modifier) names.append(self.control_modifier) if meta_set: names.remove(self.meta_modifier) elif control_set and not meta_on: log("mask_to_names swapping control for meta: %s for %s", self.control_modifier, self.meta_modifier) names.remove(self.control_modifier) if not meta_set: names.append(self.meta_modifier) #deal with numlock: if self.num_lock_modifier is not None: if self.num_lock_state and self.num_lock_modifier not in names: names.append(self.num_lock_modifier) elif not self.num_lock_state and self.num_lock_modifier in names: names.remove(self.num_lock_modifier) log("mask_to_names(%s)=%s", mask, names) return names
def mask_to_names(self, mask): names = KeyboardBase.mask_to_names(self, mask) if self.num_lock_modifier is not None: if self.num_lock_state and self.num_lock_modifier not in names: names.append(self.num_lock_modifier) elif not self.num_lock_state and self.num_lock_modifier in names: names.remove(self.num_lock_modifier) log("mask_to_names(%s)=%s", mask, names) return names
def mask_to_names(self, mask): names = KeyboardBase.mask_to_names(self, mask) if self.num_lock_modifier is not None: if self.num_lock_state and self.num_lock_modifier not in names: names.append(self.num_lock_modifier) elif not self.num_lock_state and self.num_lock_modifier in names: names.remove(self.num_lock_modifier) log("mask_to_names(%s)=%s", mask, names) return names
def mask_to_names(self, mask): """ Patch NUMLOCK and AltGr """ names = KeyboardBase.mask_to_names(self, mask) altgr = win32api.GetKeyState(win32con.VK_RMENU) not in (0, 1) if altgr: self.AltGr_modifiers(names) if self.num_lock_modifier: try: numlock = win32api.GetKeyState(win32con.VK_NUMLOCK) if numlock and self.num_lock_modifier not in names: names.append(self.num_lock_modifier) elif not numlock and self.num_lock_modifier in names: names.remove(self.num_lock_modifier) log("mask_to_names(%s) GetKeyState(VK_NUMLOCK)=%s, names=%s", mask, numlock, names) except: pass else: log("mask_to_names(%s)=%s", mask, names) return names
def mask_to_names(self, mask): """ Patch NUMLOCK and AltGr """ names = KeyboardBase.mask_to_names(self, mask) if self.emulate_altgr: self.AltGr_modifiers(names) if self.num_lock_modifier: try: import win32api #@UnresolvedImport import win32con #@UnresolvedImport numlock = win32api.GetKeyState(win32con.VK_NUMLOCK) log("mask_to_names(%s) GetKeyState(VK_NUMLOCK)=%s", mask, numlock) if numlock and self.num_lock_modifier not in names: names.append(self.num_lock_modifier) elif not numlock and self.num_lock_modifier in names: names.remove(self.num_lock_modifier) except: pass log("mask_to_names(%s)=%s", mask, names) return names
def mask_to_names(self, mask): """ Patch NUMLOCK and AltGr """ names = KeyboardBase.mask_to_names(self, mask) if self.emulate_altgr: self.AltGr_modifiers(names) if self.num_lock_modifier: try: import win32api #@UnresolvedImport import win32con #@UnresolvedImport numlock = win32api.GetKeyState(win32con.VK_NUMLOCK) if numlock and self.num_lock_modifier not in names: names.append(self.num_lock_modifier) elif not numlock and self.num_lock_modifier in names: names.remove(self.num_lock_modifier) log("mask_to_names(%s) GetKeyState(VK_NUMLOCK)=%s, names=%s", mask, numlock, names) except: pass else: log("mask_to_names(%s)=%s", mask, names) return names
def mask_to_names(self, mask): """ Patch NUMLOCK and AltGr """ names = KeyboardBase.mask_to_names(self, mask) if EMULATE_ALTGR: rmenu = GetKeyState(win32con.VK_RMENU) #log("GetKeyState(VK_RMENU)=%s", rmenu) if rmenu not in (0, 1): self.AltGr_modifiers(names) if self.num_lock_modifier: try: numlock = GetKeyState(win32con.VK_NUMLOCK) if numlock and self.num_lock_modifier not in names: names.append(self.num_lock_modifier) elif not numlock and self.num_lock_modifier in names: names.remove(self.num_lock_modifier) log("mask_to_names(%s) GetKeyState(VK_NUMLOCK)=%s, names=%s", mask, numlock, names) except: pass else: log("mask_to_names(%s)=%s", mask, names) return names
def mask_to_names(self, mask): names = KeyboardBase.mask_to_names(self, mask) log("mask_to_names names=%s, meta mod=%s, control mod=%s, num lock mod=%s, num lock state=%s", names, self.meta_modifier, self.control_modifier, self.num_lock_modifier, self.num_lock_state) if self.swap_keys and self.meta_modifier is not None and self.control_modifier is not None: #clear both: for x in (self.control_modifier, self.meta_modifier): if x in names: names.remove(x) #re-add as needed: if mask & META_MASK: names.append(self.control_modifier) if mask & CONTROL_MASK: names.append(self.meta_modifier) #deal with numlock: if self.num_lock_modifier is not None: if self.num_lock_state and self.num_lock_modifier not in names: names.append(self.num_lock_modifier) elif not self.num_lock_state and self.num_lock_modifier in names: names.remove(self.num_lock_modifier) log("mask_to_names(%s)=%s", mask, names) return names