diff options
author | Florian Bruhin <git@the-compiler.org> | 2018-03-04 21:43:24 +0100 |
---|---|---|
committer | Florian Bruhin <git@the-compiler.org> | 2018-03-04 21:45:46 +0100 |
commit | e2f17c4be10c94331e1b37cc11bf7f10861c1e81 (patch) | |
tree | 2036e4d736560a6b9a02acd918e308d6a726eb2f /qutebrowser/keyinput/basekeyparser.py | |
parent | 40c3295cd1d6e980d46dc4080b0356e67ee921b2 (diff) | |
download | qutebrowser-e2f17c4be10c94331e1b37cc11bf7f10861c1e81.tar.gz qutebrowser-e2f17c4be10c94331e1b37cc11bf7f10861c1e81.zip |
Always prefer exact over partial matches
Diffstat (limited to 'qutebrowser/keyinput/basekeyparser.py')
-rw-r--r-- | qutebrowser/keyinput/basekeyparser.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/qutebrowser/keyinput/basekeyparser.py b/qutebrowser/keyinput/basekeyparser.py index e9347fa7b..901e96b55 100644 --- a/qutebrowser/keyinput/basekeyparser.py +++ b/qutebrowser/keyinput/basekeyparser.py @@ -102,14 +102,17 @@ class BaseKeyParser(QObject): """ assert sequence assert not isinstance(sequence, str) + result = QKeySequence.NoMatch for seq, cmd in self.bindings.items(): assert not isinstance(seq, str), seq match = sequence.matches(seq) - if match != QKeySequence.NoMatch: + if match == QKeySequence.ExactMatch: return (match, cmd) + elif match == QKeySequence.PartialMatch: + result = QKeySequence.PartialMatch - return (QKeySequence.NoMatch, None) + return (result, None) def handle(self, e): """Handle a new keypress. |