summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2022-03-31 12:02:24 +0200
committerFlorian Bruhin <me@the-compiler.org>2022-03-31 12:02:45 +0200
commitc9d76675eb197ab88ad3b88073cb11a3a3b9bb18 (patch)
tree5e97135de8569f9a4d72a069a4cead1357900d6c
parent145da8654b1affbe9348d578c3813c350ad20e8c (diff)
downloadqutebrowser-c9d76675eb197ab88ad3b88073cb11a3a3b9bb18.tar.gz
qutebrowser-c9d76675eb197ab88ad3b88073cb11a3a3b9bb18.zip
Ignore invalid keys
Workaround for #7047, supersedes #7045
-rw-r--r--qutebrowser/keyinput/basekeyparser.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/qutebrowser/keyinput/basekeyparser.py b/qutebrowser/keyinput/basekeyparser.py
index a174d0620..f0469512c 100644
--- a/qutebrowser/keyinput/basekeyparser.py
+++ b/qutebrowser/keyinput/basekeyparser.py
@@ -281,7 +281,14 @@ class BaseKeyParser(QObject):
Return:
A QKeySequence match.
"""
- key = Qt.Key(e.key())
+ try:
+ key = Qt.Key(e.key())
+ except ValueError:
+ # FIXME:qt6 What should we do in this case?
+ # See https://github.com/qutebrowser/qutebrowser/issues/7047
+ log.keyboard.exception("Got invalid key")
+ return QKeySequence.SequenceMatch.NoMatch
+
txt = str(keyutils.KeyInfo.from_event(e))
self._debug_log("Got key: 0x{:x} / modifiers: {} / text: '{}' / "
"dry_run {}".format(key, e.modifiers(), txt, dry_run))