WebBrowser/WebBrowserWindow.py

changeset 5001
08eaee907686
parent 4993
ebb8eaa326ba
child 5015
ca1d44f0f6b2
diff -r 1a86b869d8a9 -r 08eaee907686 WebBrowser/WebBrowserWindow.py
--- a/WebBrowser/WebBrowserWindow.py	Fri Jun 17 19:38:14 2016 +0200
+++ b/WebBrowser/WebBrowserWindow.py	Sat Jun 18 17:17:05 2016 +0200
@@ -19,8 +19,7 @@
 
 from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QByteArray, QSize, QTimer, \
     QUrl, QTextCodec, QProcess, QEvent
-from PyQt5.QtGui import QDesktopServices, QKeySequence, QFont, QFontMetrics, \
-    QPalette
+from PyQt5.QtGui import QDesktopServices, QKeySequence, QFont, QFontMetrics
 from PyQt5.QtWidgets import QWidget, QVBoxLayout, QSizePolicy, QDockWidget, \
     QComboBox, QLabel, QSplitter, QMenu, QToolButton, QLineEdit, \
     QApplication, QWhatsThis, QDialog, QHBoxLayout, QProgressBar, QAction, \
@@ -2289,6 +2288,8 @@
         """
         Private slot called to add the displayed file to the bookmarks.
         """
+        from .WebBrowserPage import WebBrowserPage
+        
         view = self.currentBrowser()
         view.addBookmark()
         urlStr = bytes(view.url().toEncoded()).decode()
@@ -2297,6 +2298,7 @@
         script = Scripts.getAllMetaAttributes()
         view.page().runJavaScript(
             script,
+            WebBrowserPage.SafeJsWorld,
             lambda res: self.__addBookmarkCallback(urlStr, title, res))
     
     def __addBookmarkCallback(self, url, title, res):
@@ -2351,7 +2353,9 @@
         """
         Public slot to bookmark all open tabs.
         """
+        from .WebBrowserPage import WebBrowserPage
         from .Bookmarks.AddBookmarkDialog import AddBookmarkDialog
+        
         dlg = AddBookmarkDialog()
         dlg.setFolder(True)
         dlg.setTitle(self.tr("Saved Tabs"))
@@ -2368,6 +2372,7 @@
             script = Scripts.getAllMetaAttributes()
             view.page().runJavaScript(
                 script,
+                WebBrowserPage.SafeJsWorld,
                 lambda res: self.__bookmarkAllCallback(folder, urlStr,
                                                        title, res))
     
@@ -3998,10 +4003,12 @@
             self.webProfile().scripts().remove(oldScript)
         
         if userStyle:
+            from .WebBrowserPage import WebBrowserPage
+
             script = QWebEngineScript()
             script.setName(name)
             script.setInjectionPoint(QWebEngineScript.DocumentCreation)
-            script.setWorldId(QWebEngineScript.ApplicationWorld)
+            script.setWorldId(WebBrowserPage.SafeJsWorld)
             script.setRunsOnSubFrames(True)
             script.setSourceCode(Scripts.setStyleSheet(userStyle))
             self.webProfile().scripts().insert(script)
@@ -4108,10 +4115,12 @@
                     QWebEngineProfile.AllowPersistentCookies)
             
             # Setup QWebChannel user script
+            from .WebBrowserPage import WebBrowserPage
+
             script = QWebEngineScript()
             script.setName("_eric_webchannel")
             script.setInjectionPoint(QWebEngineScript.DocumentCreation)
-            script.setWorldId(QWebEngineScript.MainWorld)
+            script.setWorldId(WebBrowserPage.SafeJsWorld)
             script.setRunsOnSubFrames(True)
             script.setSourceCode(Scripts.setupWebChannel())
             cls._webProfile.scripts().insert(script)

eric ide

mercurial