--- a/src/eric7/WebBrowser/WebBrowserView.py Sun Nov 06 11:22:39 2022 +0100 +++ b/src/eric7/WebBrowser/WebBrowserView.py Mon Nov 07 17:19:58 2022 +0100 @@ -46,6 +46,7 @@ from eric7.EricWidgets.EricApplication import ericApp from eric7.Globals import qVersionTuple from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow +from eric7.WebBrowser.ZoomManager import ZoomManager from . import WebInspector from .Tools import Scripts @@ -466,8 +467,6 @@ self.setZoomFactor(value / 100.0) self.__currentZoom = value if saveValue and not self.__mw.isPrivate(): - from eric7.WebBrowser.ZoomManager import ZoomManager - ZoomManager.instance().setZoomValue(self.url(), value) self.zoomValueChanged.emit(value) @@ -863,6 +862,9 @@ @param hitTest reference to the hit test object @type WebHitTestResult """ + from .OpenSearch.OpenSearchEngineAction import OpenSearchEngineAction + from .WebBrowserLanguagesDialog import WebBrowserLanguagesDialog + if not menu.isEmpty(): menu.addSeparator() @@ -879,8 +881,6 @@ self.__searchDefaultRequested, ) - from .OpenSearch.OpenSearchEngineAction import OpenSearchEngineAction - self.__searchMenu = menu.addMenu(self.tr("Search with...")) engineNames = self.__mw.openSearchManager().allEnginesNames() for engineName in engineNames: @@ -892,8 +892,6 @@ menu.addSeparator() - from .WebBrowserLanguagesDialog import WebBrowserLanguagesDialog - languages = Preferences.toList( Preferences.getSettings().value( "WebBrowser/AcceptLanguages", @@ -938,6 +936,9 @@ @param menu reference to the menu to be populated @type QMenu """ + from .UserAgent.UserAgentMenu import UserAgentMenu + from .WebBrowserLanguagesDialog import WebBrowserLanguagesDialog + menu.addAction(self.__mw.newTabAct) menu.addAction(self.__mw.newAct) menu.addSeparator() @@ -988,8 +989,6 @@ act.triggered.connect(functools.partial(self.__sendLink, act)) menu.addSeparator() - from .UserAgent.UserAgentMenu import UserAgentMenu - self.__userAgentMenu = UserAgentMenu(self.tr("User Agent"), url=self.url()) menu.addMenu(self.__userAgentMenu) menu.addSeparator() @@ -1023,8 +1022,6 @@ act.setData(w3url) act.triggered.connect(functools.partial(self.__openLinkInNewTab, act)) - from .WebBrowserLanguagesDialog import WebBrowserLanguagesDialog - languages = Preferences.toList( Preferences.getSettings().value( "WebBrowser/AcceptLanguages", @@ -1055,9 +1052,9 @@ @param pos position to be tested @type QPoint """ - self.__clickedPos = self.mapToViewport(pos) + from .Tools import Scripts - from .Tools import Scripts + self.__clickedPos = self.mapToViewport(pos) script = Scripts.getFormData(self.__clickedPos) self.page().runJavaScript( @@ -1159,12 +1156,12 @@ @param act reference to the action that triggered @type QAction """ + from .Bookmarks.AddBookmarkDialog import AddBookmarkDialog + url = act.data() if url.isEmpty(): return - from .Bookmarks.AddBookmarkDialog import AddBookmarkDialog - dlg = AddBookmarkDialog() dlg.setUrl(bytes(url.toEncoded()).decode()) dlg.exec() @@ -1360,13 +1357,13 @@ meta attributes @type list """ + from .Bookmarks.AddBookmarkDialog import AddBookmarkDialog + description = "" for meta in res: if meta["name"] == "description": description = meta["content"] - from .Bookmarks.AddBookmarkDialog import AddBookmarkDialog - dlg = AddBookmarkDialog() dlg.setUrl(bytes(self.url().toEncoded()).decode()) dlg.setTitle(self.title()) @@ -1711,9 +1708,9 @@ @param icon web site icon @type QIcon """ - self.__siteIcon = icon + from eric7.WebBrowser.Tools import WebIconProvider - from eric7.WebBrowser.Tools import WebIconProvider + self.__siteIcon = icon WebIconProvider.instance().saveIcon(self) @@ -1726,11 +1723,11 @@ @return web site icon @rtype QIcon """ + from eric7.WebBrowser.Tools import WebIconProvider + if not self.__siteIcon.isNull(): return QIcon(self.__siteIcon) - from eric7.WebBrowser.Tools import WebIconProvider - return WebIconProvider.instance().iconForUrl(self.url()) def title(self): @@ -1867,8 +1864,6 @@ QApplication.processEvents() QTimer.singleShot(200, self.__renderPreview) - from eric7.WebBrowser.ZoomManager import ZoomManager - zoomValue = ZoomManager.instance().zoomValue(self.url()) self.setZoomValue(zoomValue) @@ -1890,12 +1885,10 @@ @param lastModified last modified value @type str """ + from .Bookmarks.BookmarkNode import BookmarkNode + modified = QDateTime.fromString(lastModified, "MM/dd/yyyy hh:mm:ss") if modified.isValid(): - from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow - - from .Bookmarks.BookmarkNode import BookmarkNode - manager = WebBrowserWindow.bookmarksManager() for bookmark in manager.bookmarksForUrl(self.url()): manager.setTimestamp(bookmark, BookmarkNode.TsModified, modified) @@ -2263,6 +2256,8 @@ @return tuple containing the title, URL and web icon @rtype tuple of (str, str, QIcon) """ + from eric7.WebBrowser.Tools import WebIconProvider + title = sessionData.get("Title", "") urlStr = sessionData.get("Url", "") @@ -2272,8 +2267,6 @@ icon = QIcon() stream >> icon else: - from eric7.WebBrowser.Tools import WebIconProvider - icon = WebIconProvider.instance().iconForUrl(QUrl.fromUserInput(urlStr)) return title, urlStr, icon @@ -2317,6 +2310,8 @@ @param quotaRequest reference to the quota request object @type QWebEngineQuotaRequest """ + from .Download.DownloadUtilities import dataString + acceptRequest = Preferences.getWebBrowser("AcceptQuotaRequest") # map yes/no/ask from (0, 1, 2) if acceptRequest == 0: @@ -2327,8 +2322,6 @@ ok = False else: # ask user - from .Download.DownloadUtilities import dataString - sizeStr = dataString(quotaRequest.requestedSize()) ok = EricMessageBox.yesNo( @@ -2358,6 +2351,10 @@ found in system's client certificate store @type QWebEngineClientCertificateSelection """ + from eric7.EricNetwork.EricSslCertificateSelectionDialog import ( + EricSslCertificateSelectionDialog, + ) + certificates = clientCertificateSelection.certificates() if len(certificates) == 0: clientCertificateSelection.selectNone() @@ -2365,10 +2362,6 @@ clientCertificateSelection.select(certificates[0]) else: certificate = None - from eric7.EricNetwork.EricSslCertificateSelectionDialog import ( - EricSslCertificateSelectionDialog, - ) - dlg = EricSslCertificateSelectionDialog(certificates, self) if dlg.exec() == QDialog.DialogCode.Accepted: certificate = dlg.getSelectedCertificate() @@ -2392,7 +2385,9 @@ @param accessRequest reference to the file system access request object @type QWebEngineFileSystemAccessRequest """ - from PyQt6.QtWebEngineCore import QWebEngineFileSystemAccessRequest + from PyQt6.QtWebEngineCore import ( # __IGNORE_WARNING_I102__ + QWebEngineFileSystemAccessRequest, + ) acceptRequest = Preferences.getWebBrowser("AcceptFileSystemAccessRequest") # map yes/no/ask from (0, 1, 2)