Fix reference panel links (#1378)

This commit is contained in:
Veronica Berglyd Olsen
2023-02-26 10:30:25 +01:00
parent e92f2a9141
commit acd4d44a9e
2 changed files with 17 additions and 3 deletions
+4 -3
View File
@@ -1201,17 +1201,18 @@ class GuiDocViewDetails(QScrollArea):
return return
## ##
# Internal Functions # Private Slots
## ##
@pyqtSlot(str)
def _linkClicked(self, theLink): def _linkClicked(self, theLink):
"""Capture the link-click and forward it to the document viewer """Capture the link-click and forward it to the document viewer
class for handling. class for handling.
""" """
logger.debug("Clicked link: '%s'", theLink) logger.debug("Clicked link: '%s'", theLink)
if len(theLink) == 21: if len(theLink) >= 13:
tHandle = theLink[:13] tHandle = theLink[:13]
tAnchor = theLink[13:] tAnchor = theLink[13:] or None
self.mainGui.viewDocument(tHandle, tAnchor) self.mainGui.viewDocument(tHandle, tAnchor)
return return
+13
View File
@@ -171,6 +171,19 @@ def testGuiViewer_Main(qtbot, monkeypatch, nwGUI, nwLipsum):
assert nwGUI.docViewer.loadText("846352075de7d") is False assert nwGUI.docViewer.loadText("846352075de7d") is False
assert nwGUI.docViewer.toPlainText() == "An error occurred while generating the preview." assert nwGUI.docViewer.toPlainText() == "An error occurred while generating the preview."
# Check reference panel (issue #1378)
assert nwGUI.viewDocument("4c4f28287af27") is True
assert nwGUI.docViewer.toPlainText().startswith("Nobody Owens")
nwGUI.viewMeta._linkClicked("fb609cd8319dc")
assert nwGUI.docViewer.toPlainText().startswith("Chapter One")
nwGUI.viewMeta._linkClicked("88243afbe5ed8#T0001")
assert nwGUI.docViewer.toPlainText().startswith("Scene One")
nwGUI.viewMeta._linkClicked("88243afbe5ed8#ABCD")
assert nwGUI.docViewer.toPlainText().startswith("Scene One")
# qtbot.stop() # qtbot.stop()
# END Test testGuiViewer_Main # END Test testGuiViewer_Main