summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Farley <ryan.farley@gmx.com>2017-12-21 21:22:20 -0600
committerRyan Farley <ryan.farley@gmx.com>2017-12-21 21:22:20 -0600
commit4a6c9ecc343ce86cf38a5189d7cab3e0fb6aa16b (patch)
treeb78f217d980f5e613e1a779d4c30bdba6b43c093
parentd6c56b83a83d5616109b17b581372782bd50f35e (diff)
downloadqutebrowser-4a6c9ecc343ce86cf38a5189d7cab3e0fb6aa16b.tar.gz
qutebrowser-4a6c9ecc343ce86cf38a5189d7cab3e0fb6aa16b.zip
only reroute load signals with Qt=5.10
This stops regressions on Qt<=5.9. It also reintroduces #3110, but fixing #3110 was just a nice side effect rather than the main goal here.
-rw-r--r--qutebrowser/browser/webengine/webenginetab.py24
1 files changed, 16 insertions, 8 deletions
diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py
index 0003dc1e6..e4b1c7d39 100644
--- a/qutebrowser/browser/webengine/webenginetab.py
+++ b/qutebrowser/browser/webengine/webenginetab.py
@@ -25,7 +25,7 @@ import html as html_utils
import sip
from PyQt5.QtCore import (pyqtSignal, pyqtSlot, Qt, QEvent, QPoint, QPointF,
- QUrl, QTimer)
+ QUrl, QTimer, QT_VERSION_STR)
from PyQt5.QtGui import QKeyEvent
from PyQt5.QtNetwork import QAuthenticator
from PyQt5.QtWidgets import QApplication
@@ -830,6 +830,7 @@ class WebEngineTab(browsertab.AbstractTab):
page.windowCloseRequested.connect(self.window_close_requested)
page.linkHovered.connect(self.link_hovered)
+ page.loadStarted.connect(self._on_load_started)
page.certificate_error.connect(self._on_ssl_errors)
page.authenticationRequired.connect(self._on_authentication_required)
page.proxyAuthenticationRequired.connect(
@@ -843,13 +844,20 @@ class WebEngineTab(browsertab.AbstractTab):
self._on_render_process_terminated)
view.iconChanged.connect(self.icon_changed)
#WORKAROUND for https://bugreports.qt.io/browse/QTBUG-65223
- page.loadProgress.connect(self._on_load_progress_fake)
- self.loadProgressFake.connect(self._on_load_progress)
- page.loadStarted.connect(self._on_load_started)
- self.loadFinishedFake.connect(self._on_history_trigger)
- self.loadFinishedFake.connect(self._restore_zoom)
- self.loadFinishedFake.connect(self._on_load_finished)
- page.loadFinished.connect(self._on_load_finished_fake)
+ if QT_VERSION_STR.startswith('5.10'):
+ page.loadProgress.connect(self._on_load_progress_fake)
+ self.loadProgressFake.connect(self._on_load_progress)
+ self.loadFinishedFake.connect(self._on_history_trigger)
+ self.loadFinishedFake.connect(self._restore_zoom)
+ self.loadFinishedFake.connect(self._on_load_finished)
+ page.loadFinished.connect(self._on_load_finished_fake)
+ else:
+ #for older Qt versions which break with the above
+ page.loadProgress.connect(self._on_load_progress)
+ page.loadStarted.connect(self._on_load_started)
+ page.loadFinished.connect(self._on_history_trigger)
+ page.loadFinished.connect(self._restore_zoom)
+ page.loadFinished.connect(self._on_load_finished)
def event_target(self):
return self._widget.focusProxy()