Ejemplo n.º 1
0
 def grab_button(self, mouse: config.Mouse) -> int:
     """Configure the backend to grab the mouse event"""
     keysym = wlrq.buttons.get(mouse.button_code)
     assert keysym is not None
     mask_key = wlrq.translate_masks(mouse.modifiers)
     self.grabbed_buttons.append((keysym, mask_key))
     return mask_key
Ejemplo n.º 2
0
 def grab_key(self, key: Union[config.Key,
                               config.KeyChord]) -> Tuple[int, int]:
     """Configure the backend to grab the key event"""
     keysym = xkb.keysym_from_name(key.key, case_insensitive=True)
     mask_key = wlrq.translate_masks(key.modifiers)
     self.grabbed_keys.append((keysym, mask_key))
     return keysym, mask_key
Ejemplo n.º 3
0
 def ungrab_key(self, key: Union[config.Key,
                                 config.KeyChord]) -> Tuple[int, int]:
     """Release the given key event"""
     keysym = xkb.keysym_from_name(key.key, case_insensitive=True)
     mask_key = wlrq.translate_masks(key.modifiers)
     self.grabbed_keys.remove((keysym, mask_key))
     return keysym, mask_key
Ejemplo n.º 4
0
    def simulate_keypress(self, modifiers: List[str], key: str) -> None:
        """Simulates a keypress on the focused window."""
        keysym = xkb.keysym_from_name(key, case_insensitive=True)
        mods = wlrq.translate_masks(modifiers)

        if (keysym, mods) in self.grabbed_keys:
            self.qtile.process_key_event(keysym, mods)
            return

        if self.focused_internal:
            self.focused_internal.process_key_press(keysym)