WebBrowser/WebBrowserWindow.py

changeset 5530
93f95c4b3153
parent 5526
11337e4fba52
child 5534
f9368ecf153a
diff -r 4fdbb36fe794 -r 93f95c4b3153 WebBrowser/WebBrowserWindow.py
--- a/WebBrowser/WebBrowserWindow.py	Sat Feb 18 12:23:35 2017 +0100
+++ b/WebBrowser/WebBrowserWindow.py	Sat Feb 18 19:59:14 2017 +0100
@@ -62,7 +62,6 @@
 from eric6config import getConfig
 
 
-# TODO: Qt 5.8 - support spell checking through out
 class WebBrowserWindow(E5MainWindow):
     """
     Class implementing the web browser main window.
@@ -529,6 +528,20 @@
                 Preferences.getWebBrowser("WebGLEnabled"))
         except (AttributeError, KeyError):
             pass
+        
+        try:
+            # Qt 5.8
+            settings.setAttribute(
+                QWebEngineSettings.FocusOnNavigationEnabled,
+                Preferences.getWebBrowser("FocusOnNavigationEnabled"))
+            settings.setAttribute(
+                QWebEngineSettings.PrintElementBackgrounds,
+                Preferences.getWebBrowser("PrintElementBackgrounds"))
+            settings.setAttribute(
+                QWebEngineSettings.AllowRunningInsecureContent,
+                Preferences.getWebBrowser("AllowRunningInsecureContent"))
+        except (AttributeError, KeyError):
+            pass
     
     def __initActions(self):
         """
@@ -2817,8 +2830,8 @@
         
         self.autoScroller().preferencesChanged()
         
+        profile = self.webProfile()
         if not self.isPrivate():
-            profile = self.webProfile()
             if Preferences.getWebBrowser("DiskCacheEnabled"):
                 profile.setHttpCacheType(QWebEngineProfile.DiskHttpCache)
                 profile.setHttpCacheMaximumSize(
@@ -2826,7 +2839,13 @@
             else:
                 profile.setHttpCacheType(QWebEngineProfile.MemoryHttpCache)
                 profile.setHttpCacheMaximumSize(0)
-            
+        
+        if qVersion() >= "5.8.0":
+            profile.setSpellCheckEnabled(
+                Preferences.getWebBrowser("SpellCheckEnabled"))
+            profile.setSpellCheckLanguages(
+                Preferences.getWebBrowser("SpellCheckLanguages"))
+        
         self.__virusTotal.preferencesChanged()
         if not Preferences.getWebBrowser("VirusTotalEnabled") or \
            Preferences.getWebBrowser("VirusTotalServiceKey") == "":
@@ -4225,6 +4244,13 @@
                 cls._webProfile.setPersistentCookiesPolicy(
                     QWebEngineProfile.AllowPersistentCookies)
             
+            # TODO: Qt 5.8 - add support for spell checking
+            if qVersion() >= "5.8.0":
+                cls._webProfile.setSpellCheckEnabled(
+                    Preferences.getWebBrowser("SpellCheckEnabled"))
+                cls._webProfile.setSpellCheckLanguages(
+                    Preferences.getWebBrowser("SpellCheckLanguages"))
+            
             # Setup QWebChannel user script
             from .WebBrowserPage import WebBrowserPage
 

eric ide

mercurial