diff --git a/kitty/keys.py b/kitty/keys.py index 554f2178f..c2f924d01 100644 --- a/kitty/keys.py +++ b/kitty/keys.py @@ -22,7 +22,7 @@ def get_shortcut(keymap: KeyMap, ev: KeyEvent) -> Optional[List[KeyDefinition]]: @overload def get_shortcut(keymap: SequenceMap, ev: KeyEvent) -> Optional[SubSequenceMap]: ... -def get_shortcut(keymap: Union[KeyMap | SequenceMap], ev: KeyEvent) -> Union[List[KeyDefinition] | SubSequenceMap | None]: +def get_shortcut(keymap: Union[KeyMap, SequenceMap], ev: KeyEvent) -> Union[List[KeyDefinition], SubSequenceMap, None]: mods = ev.mods & mod_mask ans = keymap.get(SingleKey(mods, False, ev.key)) if ans is None and ev.shifted_key and mods & GLFW_MOD_SHIFT: diff --git a/kitty_tests/options.py b/kitty_tests/options.py index 952f1c883..998fdf210 100644 --- a/kitty_tests/options.py +++ b/kitty_tests/options.py @@ -38,8 +38,8 @@ class TestConfParsing(BaseTest): return ans def keys_for_func(opts, name): - for key, defn in opts.keymap.items(): - for action in opts.alias_map.resolve_aliases(defn): + for key, defns in opts.keymap.items(): + for action in opts.alias_map.resolve_aliases(defns[0].definition): if action.func == name: yield key @@ -69,8 +69,8 @@ class TestConfParsing(BaseTest): self.ae(opts.env, {'A': '1', 'B': 'x1', 'C': '', 'D': DELETE_ENV_VAR}) def ac(which=0): - ka = tuple(opts.keymap.values())[0] - acs = opts.alias_map.resolve_aliases(ka) + ka = tuple(opts.keymap.values())[0][0] + acs = opts.alias_map.resolve_aliases(ka.definition) return acs[which] ka = ac()