diff options
author | Jimmy <jimmy@spalge.com> | 2021-10-03 16:44:30 +1300 |
---|---|---|
committer | Jimmy <jimmy@spalge.com> | 2021-10-03 16:44:30 +1300 |
commit | ab447bd396b46247f6f12b8e2c697b0f7e01b95a (patch) | |
tree | 574250037fa3f0b24eb87bbb4870f0ed8a943cd5 /qutebrowser/keyinput/modeman.py | |
parent | 84ed0da180690419de357feadd57aa9233bb60a0 (diff) | |
download | qutebrowser-ab447bd396b46247f6f12b8e2c697b0f7e01b95a.tar.gz qutebrowser-ab447bd396b46247f6f12b8e2c697b0f7e01b95a.zip |
even more keypress related hacks
`QKeySequence.SequenceMatch` is one of the enums for which `Enum(0)` is
no-longer falsey, compare to NoMatch instead. Otherwise the conditional
is always false and forwarded keys don't work.
Eg
> from PyQt6.QtGui import QKeySequence, QKeyEvent
> bool(QKeySequence.SequenceMatch.NoMatch)
True
> bool(QKeySequence.SequenceMatch(0))
True
For `QKeySequence.SequenceMatch` and `QtCore.Qt.Key` and
`QtCore.Qt.KeyboardModifier` int(enum_value) no longer works, eg
> int(QtCore.Qt.KeyboardModifier(0))
TypeError: int() argument must be a string, a bytes-like object or a number, not 'KeyboardModifier'
Diffstat (limited to 'qutebrowser/keyinput/modeman.py')
-rw-r--r-- | qutebrowser/keyinput/modeman.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/qutebrowser/keyinput/modeman.py b/qutebrowser/keyinput/modeman.py index e59964432..53f7354c8 100644 --- a/qutebrowser/keyinput/modeman.py +++ b/qutebrowser/keyinput/modeman.py @@ -24,7 +24,7 @@ import dataclasses from typing import Mapping, Callable, MutableMapping, Union, Set, cast from PyQt6.QtCore import pyqtSlot, pyqtSignal, Qt, QObject, QEvent -from PyQt6.QtGui import QKeyEvent +from PyQt6.QtGui import QKeySequence, QKeyEvent from qutebrowser.commands import runners from qutebrowser.keyinput import modeparsers, basekeyparser @@ -296,7 +296,7 @@ class ModeManager(QObject): forward_unbound_keys = config.cache['input.forward_unbound_keys'] - if match: + if match != QKeySequence.SequenceMatch.NoMatch: filter_this = True elif (parser.passthrough or forward_unbound_keys == 'all' or (forward_unbound_keys == 'auto' and is_non_alnum)): |