From f8a78a0962835c149463d81601ecf2ac402e705c Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Thu, 17 May 2018 14:21:14 +0200 Subject: Add workaround for the "split page" Qt bug (QTBUG-68224) Fixes #3920 (cherry picked from commit 44d26f77a5007177a4a7df4c811b0b2cf084dbc6) --- qutebrowser/browser/webengine/webenginetab.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py index 623ccc196..3b6bdf102 100644 --- a/qutebrowser/browser/webengine/webenginetab.py +++ b/qutebrowser/browser/webengine/webenginetab.py @@ -1048,6 +1048,22 @@ class WebEngineTab(browsertab.AbstractTab): @pyqtSlot(usertypes.NavigationRequest) def _on_navigation_request(self, navigation): super()._on_navigation_request(navigation) + + if qtutils.version_check('5.11.0', exact=True, compiled=False): + # WORKAROUND for https://bugreports.qt.io/browse/QTBUG-68224 + layout = self._widget.layout() + count = layout.count() + if count > 1: + for i in range(count): + item = layout.itemAt(i) + if item is None: + continue + widget = item.widget() + if widget is not self._widget.focusProxy(): + log.webview.debug("Removing widget {} (QTBUG-68224)" + .format(widget)) + layout.removeWidget(widget) + if not navigation.accepted or not navigation.is_main_frame: return -- cgit v1.2.3-54-g00ecf