summaryrefslogtreecommitdiff
path: root/qutebrowser/keyinput/eventfilter.py
diff options
context:
space:
mode:
Diffstat (limited to 'qutebrowser/keyinput/eventfilter.py')
-rw-r--r--qutebrowser/keyinput/eventfilter.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/qutebrowser/keyinput/eventfilter.py b/qutebrowser/keyinput/eventfilter.py
index 24d49709e..306d4405b 100644
--- a/qutebrowser/keyinput/eventfilter.py
+++ b/qutebrowser/keyinput/eventfilter.py
@@ -6,7 +6,7 @@
from typing import cast, Optional
-from qutebrowser.qt.core import pyqtSlot, QObject, QEvent
+from qutebrowser.qt.core import pyqtSlot, QObject, QEvent, qVersion
from qutebrowser.qt.gui import QKeyEvent, QWindow
from qutebrowser.keyinput import modeman
@@ -84,6 +84,19 @@ class EventFilter(QObject):
ev_type_str = debug.qenum_key(QEvent, ev_type)
log.misc.debug(f"{source} got event: {ev_type_str}")
+ if (
+ ev_type == QEvent.Type.DragEnter and
+ objects.qapp.platformName() == "wayland" and
+ qVersion() == "6.5.2"
+ ):
+ # WORKAROUND for https://bugreports.qt.io/browse/QTBUG-115757
+ # Fixed in Qt 6.5.3
+ # Can't do this via self._handlers since handling it for QWindow
+ # seems to be too late.
+ log.mouse.warning("Ignoring drag event to prevent Qt crash")
+ event.ignore()
+ return True
+
if not isinstance(obj, QWindow):
# We already handled this same event at some point earlier, so
# we're not interested in it anymore.