diff --git a/qutebrowser/browser/browsertab.py b/qutebrowser/browser/browsertab.py index aea15a257..2a9662eef 100644 --- a/qutebrowser/browser/browsertab.py +++ b/qutebrowser/browser/browsertab.py @@ -724,7 +724,13 @@ class AbstractTab(QWidget): if getattr(evt, 'posted', False): raise utils.Unreachable("Can't re-use an event which was already " "posted!") + recipient = self.event_target() + if recipient is None: + # https://github.com/qutebrowser/qutebrowser/issues/3888 + log.webview.warning("Unable to find event target!") + return + evt.posted = True QApplication.postEvent(recipient, evt) diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py index 145bc9c44..33a394d3f 100644 --- a/qutebrowser/browser/webengine/webenginetab.py +++ b/qutebrowser/browser/webengine/webenginetab.py @@ -1104,6 +1104,4 @@ class WebEngineTab(browsertab.AbstractTab): self.predicted_navigation.connect(self._on_predicted_navigation) def event_target(self): - fp = self._widget.focusProxy() - assert fp is not None - return fp + return self._widget.focusProxy()