summaryrefslogtreecommitdiff
path: root/qutebrowser/utils/debug.py
diff options
context:
space:
mode:
Diffstat (limited to 'qutebrowser/utils/debug.py')
-rw-r--r--qutebrowser/utils/debug.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/qutebrowser/utils/debug.py b/qutebrowser/utils/debug.py
index 47cbebb35..1373404ca 100644
--- a/qutebrowser/utils/debug.py
+++ b/qutebrowser/utils/debug.py
@@ -33,7 +33,7 @@ from qutebrowser.qt.core import Qt, QEvent, QMetaMethod, QObject, pyqtBoundSigna
from qutebrowser.utils import log, utils, qtutils, objreg
from qutebrowser.misc import objects
-from qutebrowser.qt import sip
+from qutebrowser.qt import sip, machinery
def log_events(klass: Type[QObject]) -> Type[QObject]:
@@ -99,7 +99,10 @@ def log_signals(obj: QObject) -> QObject:
return obj
-_EnumValueType = Union[sip.simplewrapper, int]
+if machinery.IS_QT6:
+ _EnumValueType = enum.Enum
+else:
+ _EnumValueType = Union[sip.simplewrapper, int]
def _qenum_key_python(
@@ -124,14 +127,14 @@ def _qenum_key_python(
def _qenum_key_qt(
- base: Type[_EnumValueType],
+ base: Type[sip.simplewrapper],
value: _EnumValueType,
klass: Type[_EnumValueType],
) -> Optional[str]:
# On PyQt5, or PyQt6 with int passed: Try to ask Qt's introspection.
# However, not every Qt enum value has a staticMetaObject
try:
- meta_obj = base.staticMetaObject # type: ignore[union-attr]
+ meta_obj = base.staticMetaObject # type: ignore[attr-defined]
idx = meta_obj.indexOfEnumerator(klass.__name__)
meta_enum = meta_obj.enumerator(idx)
key = meta_enum.valueToKey(int(value)) # type: ignore[arg-type]
@@ -149,7 +152,7 @@ def _qenum_key_qt(
def qenum_key(
- base: Type[_EnumValueType],
+ base: Type[sip.simplewrapper],
value: _EnumValueType,
klass: Type[_EnumValueType] = None,
) -> str:
@@ -183,7 +186,7 @@ def qenum_key(
return '0x{:04x}'.format(int(value)) # type: ignore[arg-type]
-def qflags_key(base: Type[_EnumValueType],
+def qflags_key(base: Type[sip.simplewrapper],
value: _EnumValueType,
klass: Type[_EnumValueType] = None) -> str:
"""Convert a Qt QFlags value to its keys as string.