WebBrowser/WebBrowserPage.py

changeset 6146
94a4e8d1ac4f
parent 6142
304a469455c8
child 6149
e611e45a17d6
diff -r dfe864318196 -r 94a4e8d1ac4f WebBrowser/WebBrowserPage.py
--- a/WebBrowser/WebBrowserPage.py	Tue Feb 13 19:52:13 2018 +0100
+++ b/WebBrowser/WebBrowserPage.py	Tue Feb 13 19:53:35 2018 +0100
@@ -55,6 +55,8 @@
     safeBrowsingBad = pyqtSignal(str, str)
     
     printRequested = pyqtSignal()
+    navigationRequestAccepted = pyqtSignal(QUrl, QWebEnginePage.NavigationType,
+                                           bool)
     
     def __init__(self, parent=None):
         """
@@ -82,7 +84,7 @@
         self.__printer = None
         self.__badSite = False
         
-        if qVersionTuple == (5, 10, 0):
+        if qVersionTuple() == (5, 10, 0):
             self.loadProgress.connect(self.__loadProgressSlot)
         
         # Workaround for changing webchannel world inside
@@ -181,19 +183,22 @@
         result = QWebEnginePage.acceptNavigationRequest(self, url, type_,
                                                         isMainFrame)
         
-        if result and isMainFrame:
-            isWeb = url.scheme() in ("http", "https", "ftp", "ftps", "file")
-            globalJsEnabled = WebBrowserWindow.webSettings().testAttribute(
-                QWebEngineSettings.JavascriptEnabled)
-            if isWeb:
-                enable = globalJsEnabled
-            else:
-                enable = True
-            self.settings().setAttribute(
-                QWebEngineSettings.JavascriptEnabled, enable)
-            
-            self.__channelUrl = url
-            self.__setupChannelTimer.start()
+        if result:
+            if isMainFrame:
+                isWeb = url.scheme() in ("http", "https", "ftp", "ftps",
+                                         "file")
+                globalJsEnabled = WebBrowserWindow.webSettings().testAttribute(
+                    QWebEngineSettings.JavascriptEnabled)
+                if isWeb:
+                    enable = globalJsEnabled
+                else:
+                    enable = True
+                self.settings().setAttribute(
+                    QWebEngineSettings.JavascriptEnabled, enable)
+                
+                self.__channelUrl = url
+                self.__setupChannelTimer.start()
+            self.navigationRequestAccepted.emit(url, type_, isMainFrame)
         
         return result
     

eric ide

mercurial