Refactoring forwarding widget syntax (in order to appease pylint)

This commit is contained in:
brightonanc 2023-11-24 13:58:27 -05:00
parent 907fa53806
commit ddb2d4ffb2
4 changed files with 21 additions and 16 deletions

View File

@ -192,8 +192,7 @@ class BaseKeyParser(QObject):
passthrough: bool = False,
supports_count: bool = True,
allow_partial_timeout: bool = False,
allow_forward: bool = True,
forward_widget_name: str = None) -> None:
allow_forward: bool = True) -> None:
super().__init__(parent)
self._win_id = win_id
self._pure_sequence = keyutils.KeySequence()
@ -206,7 +205,7 @@ class BaseKeyParser(QObject):
self._supports_count = supports_count
self.allow_partial_timeout = allow_partial_timeout
self.allow_forward = allow_forward
self.forward_widget_name = forward_widget_name
self.forward_widget_name = None
self.bindings = BindingTrie()
self._read_config()
config.instance.changed.connect(self._on_config_changed)
@ -230,6 +229,17 @@ class BaseKeyParser(QObject):
self._mode.name)
log.keyboard.debug(prefix + msg)
def set_forward_widget_name(self,
forward_widget_name: str) -> 'BaseKeyParser':
"""Set forward_widget_name.
Args:
forward_widget_name: Name of the widget to which partial keys are
forwarded.
"""
self.forward_widget_name = forward_widget_name
return self
def get_do_log(self) -> bool:
return self._do_log

View File

@ -103,8 +103,8 @@ def init(win_id: int, parent: QObject) -> 'ModeManager':
do_log=log_sensitive_keys,
supports_count=False,
allow_partial_timeout=True,
allow_forward=True,
forward_widget_name='status-command'),
allow_forward=True)
.set_forward_widget_name('status-command'),
usertypes.KeyMode.prompt:
modeparsers.CommandKeyParser(
@ -118,8 +118,8 @@ def init(win_id: int, parent: QObject) -> 'ModeManager':
# Maybe in the future implement this, but for the time being its
# infeasible as 'prompt-container' is registered as command-only.
# Plus, I imagine the use case for such a thing is quite rare.
# (The forward_widget_name would be 'prompt-container')
allow_forward=False,
forward_widget_name=None, # 'prompt-container'
allow_partial_timeout=False),
usertypes.KeyMode.yesno:
@ -131,7 +131,6 @@ def init(win_id: int, parent: QObject) -> 'ModeManager':
supports_count=False,
# Similar story to prompt mode
allow_forward=False,
forward_widget_name=None,
allow_partial_timeout=False),
usertypes.KeyMode.caret:

View File

@ -54,14 +54,12 @@ class CommandKeyParser(basekeyparser.BaseKeyParser):
passthrough: bool = False,
supports_count: bool = True,
allow_partial_timeout: bool = True,
allow_forward: bool = True,
forward_widget_name: str = None) -> None:
allow_forward: bool = True) -> None:
super().__init__(mode=mode, win_id=win_id, parent=parent,
do_log=do_log, passthrough=passthrough,
supports_count=supports_count,
allow_partial_timeout=allow_partial_timeout,
allow_forward=allow_forward,
forward_widget_name=forward_widget_name)
allow_forward=allow_forward)
self._commandrunner = commandrunner
def execute(self, cmdstr: str, count: int = None) -> None:

View File

@ -182,11 +182,9 @@ def modeman_with_basekeyparser(mode_manager, config_stub):
}
config_stub.val.bindings.key_mappings = {}
mode = usertypes.KeyMode.normal
mode_manager.register(mode,
basekeyparser.BaseKeyParser(mode=mode,
win_id=0,
passthrough=True,
forward_widget_name='fake-event-filter'))
kp = basekeyparser.BaseKeyParser(mode=mode, win_id=0, passthrough=True)
kp.set_forward_widget_name('fake-event-filter')
mode_manager.register(mode, kp)
yield mode_manager
objreg.delete('fake-event-filter', scope='window', window=0)