diff --git a/nw/guimain.py b/nw/guimain.py index c72c6d46..cb2756cc 100644 --- a/nw/guimain.py +++ b/nw/guimain.py @@ -800,7 +800,11 @@ class GuiMain(QMainWindow): return False if tHandle is None: - tHandle = self.treeView.getSelectedHandle() + if self.treeView.hasFocus(): + tHandle = self.treeView.getSelectedHandle() + elif self.docEditor.hasFocus(): + tHandle = self.docEditor.theHandle + if tHandle is None: logger.warning("No item selected") return diff --git a/tests/test_gui/test_gui_itemeditor.py b/tests/test_gui/test_gui_itemeditor.py index 453aac68..aacdd4b7 100644 --- a/tests/test_gui/test_gui_itemeditor.py +++ b/tests/test_gui/test_gui_itemeditor.py @@ -28,7 +28,7 @@ from tools import cmpFiles, getGuiItem from PyQt5.QtWidgets import QAction, QMessageBox -from nw.gui import GuiItemEditor +from nw.gui import GuiItemEditor, GuiProjectTree from nw.constants import nwItemLayout keyDelay = 2 @@ -45,6 +45,7 @@ def testGuiItemEditor_Dialog(qtbot, monkeypatch, nwGUI, fncDir, fncProj, refDir, # Block message box monkeypatch.setattr(QMessageBox, "question", lambda *args: QMessageBox.Yes) + monkeypatch.setattr(GuiProjectTree, "hasFocus", lambda *args: True) # Create new, save, open project nwGUI.theProject.projTree.setSeed(42)