eric6_browser: moved the scheme registration to the main file to fulfill a Qt requirement.

Sun, 27 Oct 2019 15:58:57 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 27 Oct 2019 15:58:57 +0100
changeset 7316
abe6dd39e4ee
parent 7315
41fdf2cd1c33
child 7317
cada9fd4ad3a

eric6_browser: moved the scheme registration to the main file to fulfill a Qt requirement.

eric6/WebBrowser/Network/NetworkManager.py file | annotate | diff | comparison | revisions
eric6/eric6_browser.py file | annotate | diff | comparison | revisions
--- a/eric6/WebBrowser/Network/NetworkManager.py	Fri Oct 25 20:19:51 2019 +0200
+++ b/eric6/WebBrowser/Network/NetworkManager.py	Sun Oct 27 15:58:57 2019 +0100
@@ -29,7 +29,6 @@
 from .NetworkUrlInterceptor import NetworkUrlInterceptor
 from ..Tools.WebBrowserTools import readAllFileContents, pixmapToDataUrl
 
-from Globals import qVersionTuple
 from Utilities.AutoSaver import AutoSaver
 import Preferences
 
@@ -79,25 +78,12 @@
         self.authenticationRequired.connect(
             lambda reply, auth: self.authentication(reply.url(), auth))
         
-        if qVersionTuple() >= (5, 12, 0):
-            from PyQt5.QtWebEngineCore import QWebEngineUrlScheme
-            scheme = QWebEngineUrlScheme(b"eric")
-            scheme.setSyntax(QWebEngineUrlScheme.Syntax.Path)
-            scheme.setFlags(QWebEngineUrlScheme.SecureScheme |
-                            QWebEngineUrlScheme.ContentSecurityPolicyIgnored)
-            QWebEngineUrlScheme.registerScheme(scheme)
         from .EricSchemeHandler import EricSchemeHandler
         self.__ericSchemeHandler = EricSchemeHandler()
         WebBrowserWindow.webProfile().installUrlSchemeHandler(
             QByteArray(b"eric"), self.__ericSchemeHandler)
         
         if engine:
-            if qVersionTuple() >= (5, 12, 0):
-                from PyQt5.QtWebEngineCore import QWebEngineUrlScheme
-                scheme = QWebEngineUrlScheme(b"qthelp")
-                scheme.setSyntax(QWebEngineUrlScheme.Syntax.Path)
-                scheme.setFlags(QWebEngineUrlScheme.SecureScheme)
-                QWebEngineUrlScheme.registerScheme(scheme)
             from .QtHelpSchemeHandler import QtHelpSchemeHandler
             self.__qtHelpSchemeHandler = QtHelpSchemeHandler(engine)
             WebBrowserWindow.webProfile().installUrlSchemeHandler(
--- a/eric6/eric6_browser.py	Fri Oct 25 20:19:51 2019 +0200
+++ b/eric6/eric6_browser.py	Sun Oct 27 15:58:57 2019 +0100
@@ -20,7 +20,7 @@
 
 try:
     try:
-        from PyQt5 import sip
+        from PyQt5 import sip       # __IGNORE_EXCEPTION__
     except ImportError:
         import sip
     sip.setdestroyonexit(False)
@@ -68,7 +68,7 @@
     sys.exit(100)
 
 import Globals
-from Globals import AppInfo
+from Globals import AppInfo, qVersionTuple
 
 from E5Gui.E5Application import E5Application
 
@@ -159,6 +159,20 @@
     # set the library paths for plugins
     Startup.setLibraryPaths()
     
+    if qVersionTuple() >= (5, 12, 0):
+        from PyQt5.QtWebEngineCore import QWebEngineUrlScheme
+        scheme = QWebEngineUrlScheme(b"eric")
+        scheme.setSyntax(QWebEngineUrlScheme.Syntax.Path)
+        scheme.setFlags(QWebEngineUrlScheme.SecureScheme |
+                        QWebEngineUrlScheme.ContentSecurityPolicyIgnored)
+        QWebEngineUrlScheme.registerScheme(scheme)
+    if "--qthelp" in sys.argv and qVersionTuple() >= (5, 12, 0):
+        from PyQt5.QtWebEngineCore import QWebEngineUrlScheme
+        scheme = QWebEngineUrlScheme(b"qthelp")
+        scheme.setSyntax(QWebEngineUrlScheme.Syntax.Path)
+        scheme.setFlags(QWebEngineUrlScheme.SecureScheme)
+        QWebEngineUrlScheme.registerScheme(scheme)
+    
     app = E5Application(sys.argv)
     if "--private" not in sys.argv:
         client = WebBrowserSingleApplicationClient()

eric ide

mercurial