WebBrowser/WebBrowserPage.py

changeset 6268
eb6e49388114
parent 6234
fb1f9e681848
child 6397
473d410076e9
diff -r 350655a6c85f -r eb6e49388114 WebBrowser/WebBrowserPage.py
--- a/WebBrowser/WebBrowserPage.py	Sun Apr 22 19:21:44 2018 +0200
+++ b/WebBrowser/WebBrowserPage.py	Tue Apr 24 19:11:08 2018 +0200
@@ -86,6 +86,11 @@
         self.__printer = None
         self.__badSite = False
         
+        if qVersionTuple() >= (5, 10, 0):
+            # Workaround for broken load started/finished signals in
+            # QtWebEngine 5.10, 5.11
+            self.loadProgress.connect(self.__loadProgress)
+        
         # Workaround for changing webchannel world inside
         # acceptNavigationRequest not working
         self.__channelUrl = QUrl()
@@ -95,6 +100,17 @@
         self.__setupChannelTimer.setInterval(100)
         self.__setupChannelTimer.timeout.connect(self.__setupChannelTimeout)
     
+    @pyqtSlot(int)
+    def __loadProgress(self, progress):
+        """
+        Private slot to send the loadFinished signal for broken Qt versions.
+        
+        @param progress load progress in percent
+        @type int
+        """
+        if progress == 100:
+            self.loadFinished.emit(True)
+    
     @pyqtSlot()
     def __setupChannelTimeout(self):
         """

eric ide

mercurial