--- a/src/eric7/WebBrowser/WebBrowserWindow.py Wed Dec 18 16:52:16 2024 +0100 +++ b/src/eric7/WebBrowser/WebBrowserWindow.py Wed Dec 18 17:20:28 2024 +0100 @@ -4176,6 +4176,7 @@ """ from .WebBrowserClearPrivateDataDialog import WebBrowserClearPrivateDataDialog + # TODO: add entry "Website Permissions" dlg = WebBrowserClearPrivateDataDialog(parent=self) if dlg.exec() == QDialog.DialogCode.Accepted: # browsing history, search history, favicons, disk cache, cookies, @@ -4220,6 +4221,7 @@ ZoomManager.instance().clear() if sslExceptions: self.networkManager().clearSslExceptions() + # TODO: add entry "Website Permissions" @pyqtSlot() def __showEnginesConfigurationDialog(self): @@ -5439,6 +5441,13 @@ cls._webProfile.setPushServiceEnabled( Preferences.getWebBrowser("PushServiceEnabled") ) + with contextlib.suppress(AttributeError): + # Qt 6.8+ + cls._webProfile.setPersistentPermissionsPolicy( + QWebEngineProfile.PersistentPermissionsPolicy.StoreInMemory + if Preferences.getWebBrowser("NoPersistentPermissions") + else QWebEngineProfile.PersistentPermissionsPolicy.StoreOnDisk + ) with contextlib.suppress(AttributeError): cls._webProfile.setSpellCheckEnabled( @@ -5448,9 +5457,6 @@ Preferences.getWebBrowser("SpellCheckLanguages") ) - # TODO: setPersistentPermissionPolicy for Qt 6.8+ - # setting key: "NoPersistentPermissions" for non-private only - # configure notifications cls._webProfile.setNotificationPresenter(cls.__showWebNotification)