Change hard-coded escape to leave-mode binding
This commit is contained in:
parent
75c996c13e
commit
f0d215e07a
@ -267,7 +267,7 @@ class CaretKeyParser(keyparser.CommandKeyParser):
|
||||
self.read_config('caret')
|
||||
|
||||
|
||||
class RegisterKeyParser(keyparser.BaseKeyParser):
|
||||
class RegisterKeyParser(keyparser.CommandKeyParser):
|
||||
|
||||
"""KeyParser for modes that record a register key.
|
||||
|
||||
@ -280,6 +280,7 @@ class RegisterKeyParser(keyparser.BaseKeyParser):
|
||||
super().__init__(win_id, parent, supports_count=False,
|
||||
supports_chains=False)
|
||||
self._mode = mode
|
||||
self.read_config('register')
|
||||
|
||||
def handle(self, e):
|
||||
"""Override handle to always match the next key and use the register.
|
||||
@ -290,8 +291,8 @@ class RegisterKeyParser(keyparser.BaseKeyParser):
|
||||
Return:
|
||||
True if event has been handled, False otherwise.
|
||||
"""
|
||||
if e.key() == Qt.Key_Escape:
|
||||
self.request_leave.emit(self._mode, "register key cancelled", True)
|
||||
|
||||
if super().handle(e):
|
||||
return True
|
||||
|
||||
if utils.keyevent_to_string(e) is None:
|
||||
@ -327,7 +328,3 @@ class RegisterKeyParser(keyparser.BaseKeyParser):
|
||||
def on_keyconfig_changed(self, mode):
|
||||
"""RegisterKeyParser has no config section (no bindable keys)."""
|
||||
pass
|
||||
|
||||
def execute(self, cmdstr, _keytype, count=None):
|
||||
"""Should never be called on RegisterKeyParser."""
|
||||
assert False
|
||||
|
@ -259,4 +259,4 @@ Feature: Keyboard input
|
||||
Scenario: Cancelling key input
|
||||
When I run :record-macro
|
||||
And I press the key "<Escape>"
|
||||
Then "Leaving mode KeyMode.record_macro (reason: register key cancelled)" should be logged
|
||||
Then "Leaving mode KeyMode.record_macro (reason: leave current)" should be logged
|
||||
|
Loading…
Reference in New Issue
Block a user