--- a/src/eric7/WebBrowser/WebBrowserTabWidget.py Sun Nov 06 11:22:39 2022 +0100 +++ b/src/eric7/WebBrowser/WebBrowserTabWidget.py Mon Nov 07 17:19:58 2022 +0100 @@ -11,7 +11,12 @@ from PyQt6.QtCore import QMarginsF, Qt, QUrl, pyqtSignal, pyqtSlot from PyQt6.QtGui import QIcon, QPageLayout, QPainter, QPixmap -from PyQt6.QtPrintSupport import QAbstractPrintDialog, QPrintDialog, QPrinter +from PyQt6.QtPrintSupport import ( + QAbstractPrintDialog, + QPrintDialog, + QPrinter, + QPrintPreviewDialog, +) from PyQt6.QtWidgets import QDialog, QHBoxLayout, QMenu, QToolButton, QWidget from eric7 import Globals, Preferences, Utilities @@ -20,10 +25,14 @@ from eric7.EricWidgets import EricMessageBox from eric7.EricWidgets.EricApplication import ericApp from eric7.EricWidgets.EricTabWidget import EricTabWidget +from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow from . import WebInspector +from .ClosedTabsManager import ClosedTabsManager from .Tools import WebBrowserTools +from .UrlBar.StackedUrlBar import StackedUrlBar from .WebBrowserPage import WebBrowserPage +from .WebBrowserTabBar import WebBrowserTabBar from .WebBrowserView import WebBrowserView @@ -78,8 +87,6 @@ """ super().__init__(parent, dnd=True) - from .WebBrowserTabBar import WebBrowserTabBar - self.__tabBar = WebBrowserTabBar(self) self.setCustomTabBar(True, self.__tabBar) @@ -89,13 +96,9 @@ self.setDocumentMode(True) self.setElideMode(Qt.TextElideMode.ElideNone) - from .ClosedTabsManager import ClosedTabsManager - self.__closedTabsManager = ClosedTabsManager(self) self.__closedTabsManager.closedTabAvailable.connect(self.__closedTabAvailable) - from .UrlBar.StackedUrlBar import StackedUrlBar - self.__stackedUrlBar = StackedUrlBar(self) self.__tabBar.tabMoved.connect(self.__stackedUrlBar.moveBar) @@ -401,6 +404,9 @@ @return reference to the new browser @rtype WebBrowserView """ + from .History.HistoryCompleter import HistoryCompleter, HistoryCompletionModel + from .UrlBar.UrlBar import UrlBar + if link is None: linkName = "" elif isinstance(link, QUrl): @@ -408,17 +414,8 @@ else: linkName = link - from .UrlBar.UrlBar import UrlBar - urlbar = UrlBar(self.__mainWindow, self) if self.__historyCompleter is None: - from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow - - from .History.HistoryCompleter import ( - HistoryCompleter, - HistoryCompletionModel, - ) - histMgr = WebBrowserWindow.historyManager() self.__historyCompletionModel = HistoryCompletionModel(self) self.__historyCompletionModel.setSourceModel(histMgr.historyFilterModel()) @@ -698,6 +695,8 @@ @param browser reference to the browser to be printed (HelpBrowser) """ + from .Tools.PrintToPdfDialog import PrintToPdfDialog + if browser is None: browser = self.currentBrowser() @@ -706,8 +705,6 @@ name = name.rsplit(".", 1)[0] name += ".pdf" if hasattr(browser.page(), "printToPdf"): - from .Tools.PrintToPdfDialog import PrintToPdfDialog - if not name: name = "printout.pdf" dlg = PrintToPdfDialog(name, self) @@ -783,8 +780,6 @@ @param browser reference to the browser to be printed (WebBrowserView) """ - from PyQt6.QtPrintSupport import QPrintPreviewDialog - if browser is None: browser = self.currentBrowser() @@ -933,8 +928,6 @@ self.__mainWindow.setLoadingActions(True) elif progress == 100: - from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow - self.resetAnimation(index) self.setTabIcon(index, WebBrowserWindow.icon(browser.url())) self.showMessage.emit(self.tr("Finished loading")) @@ -1147,10 +1140,7 @@ Private slot to populate the closed tabs menu. """ fm = self.__closedTabsMenu.fontMetrics() - try: - maxWidth = fm.horizontalAdvance("m") * 40 - except AttributeError: - maxWidth = fm.width("m") * 40 + maxWidth = fm.horizontalAdvance("m") * 40 self.__closedTabsMenu.clear() for index, tab in enumerate(self.__closedTabsManager.allClosedTabs()):