--- a/eric7/WebBrowser/QtHelp/HelpTocWidget.py Tue Oct 12 21:55:56 2021 +0200 +++ b/eric7/WebBrowser/QtHelp/HelpTocWidget.py Wed Oct 13 18:15:30 2021 +0200 @@ -28,18 +28,24 @@ newBackgroundTab = pyqtSignal(QUrl) newWindow = pyqtSignal(QUrl) - def __init__(self, engine, parent=None): + def __init__(self, engine, internal=False, parent=None): """ Constructor - @param engine reference to the help engine (QHelpEngine) - @param parent reference to the parent widget (QWidget) + @param engine reference to the help engine + @type QHelpEngine + @param internal flag indicating the internal help viewer + @type bool + @param parent reference to the parent widget + @type QWidget """ super().__init__(parent) self.__engine = engine self.__expandDepth = -2 + self.__internal = internal + self.__tocWidget = self.__engine.contentWidget() self.__tocWidget.setContextMenuPolicy( Qt.ContextMenuPolicy.CustomContextMenu) @@ -47,6 +53,7 @@ self.__layout = QVBoxLayout(self) self.__layout.addWidget(self.__tocWidget) + self.__layout.setContentsMargins(0, 0, 0, 0) self.__tocWidget.customContextMenuRequested.connect( self.__showContextMenu) @@ -82,7 +89,10 @@ self.newBackgroundTab.emit(url) elif modifiers & Qt.KeyboardModifier.ControlModifier: self.newTab.emit(url) - elif modifiers & Qt.KeyboardModifier.ShiftModifier: + elif ( + modifiers & Qt.KeyboardModifier.ShiftModifier and + not self.__internal + ): self.newWindow.emit(url) else: self.openUrl.emit(url) @@ -162,10 +172,15 @@ menu = QMenu() curTab = menu.addAction(self.tr("Open Link")) - newTab = menu.addAction(self.tr("Open Link in New Tab")) - newBackgroundTab = menu.addAction( - self.tr("Open Link in Background Tab")) - newWindow = menu.addAction(self.tr("Open Link in New Window")) + if self.__internal: + newTab = menu.addAction(self.tr("Open Link in New Page")) + newBackgroundTab = menu.addAction( + self.tr("Open Link in Background Page")) + else: + newTab = menu.addAction(self.tr("Open Link in New Tab")) + newBackgroundTab = menu.addAction( + self.tr("Open Link in Background Tab")) + newWindow = menu.addAction(self.tr("Open Link in New Window")) menu.move(self.__tocWidget.mapToGlobal(pos)) act = menu.exec() @@ -175,5 +190,5 @@ self.newTab.emit(link) elif act == newBackgroundTab: self.newBackgroundTab.emit(link) - elif act == newWindow: + elif not self.__internal and act == newWindow: self.newWindow.emit(link)