emit keystring_updated iff necessary
This commit is contained in:
parent
bf0fe3c43b
commit
55a00ab2cf
@ -193,7 +193,7 @@ class BaseKeyParser(QObject):
|
|||||||
if match == self.Match.definitive:
|
if match == self.Match.definitive:
|
||||||
self._debug_log("Definitive match for '{}'.".format(
|
self._debug_log("Definitive match for '{}'.".format(
|
||||||
self._keystring))
|
self._keystring))
|
||||||
self._keystring = ''
|
self.clear_keystring()
|
||||||
self.execute(binding, self.Type.chain, count)
|
self.execute(binding, self.Type.chain, count)
|
||||||
elif match == self.Match.ambiguous:
|
elif match == self.Match.ambiguous:
|
||||||
self._debug_log("Ambiguous match for '{}'.".format(
|
self._debug_log("Ambiguous match for '{}'.".format(
|
||||||
@ -205,7 +205,7 @@ class BaseKeyParser(QObject):
|
|||||||
elif match == self.Match.none:
|
elif match == self.Match.none:
|
||||||
self._debug_log("Giving up with '{}', no matches".format(
|
self._debug_log("Giving up with '{}', no matches".format(
|
||||||
self._keystring))
|
self._keystring))
|
||||||
self._keystring = ''
|
self.clear_keystring()
|
||||||
else:
|
else:
|
||||||
raise AssertionError("Invalid match value {!r}".format(match))
|
raise AssertionError("Invalid match value {!r}".format(match))
|
||||||
return match
|
return match
|
||||||
@ -271,7 +271,7 @@ class BaseKeyParser(QObject):
|
|||||||
time = config.get('input', 'timeout')
|
time = config.get('input', 'timeout')
|
||||||
if time == 0:
|
if time == 0:
|
||||||
# execute immediately
|
# execute immediately
|
||||||
self._keystring = ''
|
self.clear_keystring()
|
||||||
self.execute(binding, self.Type.chain, count)
|
self.execute(binding, self.Type.chain, count)
|
||||||
else:
|
else:
|
||||||
# execute in `time' ms
|
# execute in `time' ms
|
||||||
@ -289,8 +289,7 @@ class BaseKeyParser(QObject):
|
|||||||
command/count: As if passed to self.execute()
|
command/count: As if passed to self.execute()
|
||||||
"""
|
"""
|
||||||
self._debug_log("Executing delayed command now!")
|
self._debug_log("Executing delayed command now!")
|
||||||
self._keystring = ''
|
self.clear_keystring()
|
||||||
self.keystring_updated.emit(self._keystring)
|
|
||||||
self.execute(command, self.Type.chain, count)
|
self.execute(command, self.Type.chain, count)
|
||||||
|
|
||||||
def handle(self, e):
|
def handle(self, e):
|
||||||
@ -366,6 +365,7 @@ class BaseKeyParser(QObject):
|
|||||||
|
|
||||||
def clear_keystring(self):
|
def clear_keystring(self):
|
||||||
"""Clear the currently entered key sequence."""
|
"""Clear the currently entered key sequence."""
|
||||||
self._debug_log("discarding keystring '{}'.".format(self._keystring))
|
if self._keystring:
|
||||||
self._keystring = ''
|
self._debug_log("discarding keystring '{}'.".format(self._keystring))
|
||||||
self.keystring_updated.emit(self._keystring)
|
self._keystring = ''
|
||||||
|
self.keystring_updated.emit(self._keystring)
|
||||||
|
Loading…
Reference in New Issue
Block a user