Preferences/__init__.py

branch
maintenance
changeset 6455
22a6fc33ab6d
parent 6395
613e37fabd96
parent 6424
5e74c4e22e9a
child 6525
ca6d66fee883
--- a/Preferences/__init__.py	Sat Jul 07 12:01:23 2018 +0200
+++ b/Preferences/__init__.py	Wed Aug 01 19:43:34 2018 +0200
@@ -167,6 +167,13 @@
         "ShowFilePreview": True,
         "ShowFilePreviewJS": True,
         "ShowFilePreviewSSI": True,
+        "ShowTemplateViewer": True,             # left side
+        "ShowFileBrowser": True,                # left side
+        "ShowSymbolsViewer": True,              # left side
+        "ShowCodeDocumentationViewer": True,    # right side
+        "ShowCooperation": True,                # right side
+        "ShowIrc": True,                        # right side
+        "ShowNumbersViewer": True,              # bottom side
         "ViewProfiles2": {
             "edit": [
                 # saved state main window with toolbox windows (0)
@@ -1119,6 +1126,8 @@
         "FilterTrackingCookies": True,
         "SaveUrlColor": QColor(184, 248, 169),
         "UserAgent": "",
+        "AcceptQuotaRequest": 2,            # yes/no/ask (0, 1, 2)
+        "AcceptProtocolHandlerRequest": 2,  # yes/no/ask (0, 1, 2)
         # Auto Scroller
         "AutoScrollEnabled": True,
         "AutoScrollDivider": 8.0,
@@ -1291,6 +1300,21 @@
             })
         except AttributeError:
             pass
+        try:
+            # Qt 5.11+
+            cls.webBrowserDefaults.update({
+                "PlaybackRequiresUserGesture":
+                    webEngineSettings.testAttribute(
+                        QWebEngineSettings.PlaybackRequiresUserGesture),
+                "JavaScriptCanPaste":
+                    webEngineSettings.testAttribute(
+                        QWebEngineSettings.JavascriptCanPaste),
+                "WebRTCPublicInterfacesOnly":
+                    webEngineSettings.testAttribute(
+                        QWebEngineSettings.WebRTCPublicInterfacesOnly),
+            })
+        except AttributeError:
+            pass
         
         cls.webEngineSettingsIntitialized = True
     
@@ -1901,40 +1925,6 @@
         prefClass.settings.setValue("UI/Language", lang)
 
 
-def getUILayout(prefClass=Prefs):
-    """
-    Module function to retrieve the layout for the user interface.
-    
-    @param prefClass preferences class used as the storage area
-    @return the UI layout as a tuple of main layout, flag for
-        an embedded shell and a value for an embedded file browser
-    """
-    layoutType = prefClass.settings.value(
-        "UI/LayoutType", prefClass.uiDefaults["LayoutType"])
-    if layoutType in ["DockWindows", "FloatingWindows"]:
-        # change old fashioned layouts to the modern default
-        layoutType = prefClass.uiDefaults["LayoutType"]
-    layout = (layoutType,
-              int(prefClass.settings.value("UI/LayoutShellEmbedded",
-                  prefClass.uiDefaults["LayoutShellEmbedded"])),
-              int(prefClass.settings.value("UI/LayoutFileBrowserEmbedded",
-                  prefClass.uiDefaults["LayoutFileBrowserEmbedded"])),
-              )
-    return layout
-    
-
-def setUILayout(layout, prefClass=Prefs):
-    """
-    Module function to store the layout for the user interface.
-    
-    @param layout the layout type
-    @param prefClass preferences class used as the storage area
-    """
-    prefClass.settings.setValue("UI/LayoutType", layout[0])
-    prefClass.settings.setValue("UI/LayoutShellEmbedded", layout[1])
-    prefClass.settings.setValue("UI/LayoutFileBrowserEmbedded", layout[2])
-
-
 def getViewManager(prefClass=Prefs):
     """
     Module function to retrieve the selected viewmanager type.
@@ -1978,7 +1968,9 @@
                "LayoutShellEmbedded", "LayoutFileBrowserEmbedded",
                "CheckErrorLog", "NotificationsEnabled", "DynamicOnlineCheck",
                "OpenCrashSessionOnStartup", "CrashSessionEnabled",
-               "UseNativeMenuBar"]:
+               "ShowCodeDocumentationViewer", "ShowCooperation", "ShowIrc",
+               "ShowTemplateViewer", "ShowFileBrowser", "ShowSymbolsViewer",
+               "ShowNumbersViewer", "UseNativeMenuBar"]:
         return toBool(prefClass.settings.value(
             "UI/" + key, prefClass.uiDefaults[key]))
     elif key in ["TabViewManagerFilenameLength", "CaptionFilenameLength",
@@ -2810,7 +2802,8 @@
                  "OfflineWebApplicationCacheQuota", "CachePolicy",
                  "DownloadManagerRemovePolicy", "AdBlockUpdatePeriod",
                  "SearchLanguage", "SyncType", "SyncFtpPort",
-                 "SyncFtpIdleTimeout", "SyncEncryptionKeyLength"]:
+                 "SyncFtpIdleTimeout", "SyncEncryptionKeyLength",
+                 ]:
         return int(prefClass.settings.value(
             "Help/" + key, prefClass.helpDefaults[key]))
     elif key in ["SingleHelpWindow", "SaveGeometry", "WebSearchSuggestions",
@@ -3013,7 +3006,8 @@
                  "AdBlockUpdatePeriod", "TabManagerGroupByType",
                  "SessionAutoSaveInterval", "NewTabBehavior",
                  "RefererSendReferer", "RefererDefaultPolicy",
-                 "RefererTrimmingPolicy",
+                 "RefererTrimmingPolicy", "AcceptQuotaRequest",
+                 "AcceptProtocolHandlerRequest",
                  ]:
         return int(prefClass.settings.value(
             "WebBrowser/" + key, prefClass.webBrowserDefaults[key]))
@@ -3044,6 +3038,8 @@
                  "AllowGeolocationOnInsecureOrigins",
                  "AllowWindowActivationFromJavaScript", "ShowScrollBars",
                  "DownloadManagerAutoOpen", "DownloadManagerAutoClose",
+                 "PlaybackRequiresUserGesture", "JavaScriptCanPaste",
+                 "WebRTCPublicInterfacesOnly",
                  ]:
         return toBool(prefClass.settings.value(
             "WebBrowser/" + key, prefClass.webBrowserDefaults[key]))

eric ide

mercurial