summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <git@the-compiler.org>2018-03-07 22:47:31 +0100
committerFlorian Bruhin <git@the-compiler.org>2018-03-07 22:47:31 +0100
commit9b9d7647a43fe93681f57cede691cf71f335508d (patch)
tree4f6a99dad0024d0432d716d2f112321a0477e7ee
parent514138aad23851955503a5e912dc45f278796bda (diff)
downloadqutebrowser-9b9d7647a43fe93681f57cede691cf71f335508d.tar.gz
qutebrowser-9b9d7647a43fe93681f57cede691cf71f335508d.zip
Show the keystring correctly when entering a count
-rw-r--r--qutebrowser/keyinput/basekeyparser.py1
-rw-r--r--tests/unit/keyinput/test_basekeyparser.py8
2 files changed, 9 insertions, 0 deletions
diff --git a/qutebrowser/keyinput/basekeyparser.py b/qutebrowser/keyinput/basekeyparser.py
index c527b3cde..1582a5485 100644
--- a/qutebrowser/keyinput/basekeyparser.py
+++ b/qutebrowser/keyinput/basekeyparser.py
@@ -166,6 +166,7 @@ class BaseKeyParser(QObject):
assert len(txt) == 1, txt
if not dry_run:
self._count += txt
+ self.keystring_updated.emit(self._count + str(self._sequence))
return QKeySequence.ExactMatch
if dry_run:
diff --git a/tests/unit/keyinput/test_basekeyparser.py b/tests/unit/keyinput/test_basekeyparser.py
index 947c50592..460d322c3 100644
--- a/tests/unit/keyinput/test_basekeyparser.py
+++ b/tests/unit/keyinput/test_basekeyparser.py
@@ -281,6 +281,14 @@ class TestCount:
keyparser.execute.assert_called_once_with('message-info ccc', 23)
assert not keyparser._sequence
+ def test_count_keystring_update(self, qtbot, handle_text, keyparser):
+ """Make sure the keystring is updated correctly when entering count."""
+ with qtbot.waitSignals([keyparser.keystring_updated, keyparser.keystring_updated]) as blocker:
+ handle_text(Qt.Key_4, Qt.Key_2)
+ sig1, sig2 = blocker.all_signals_and_args
+ assert sig1.args == ('4',)
+ assert sig2.args == ('42',)
+
def test_clear_keystring(qtbot, keyparser):
"""Test that the keystring is cleared and the signal is emitted."""