From 7e42d04e3696bb9d9005960ae0c20de05322d1cb Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Wed, 22 Jan 2025 00:53:18 +0100 Subject: [PATCH] Drop deleteLater for context menus --- novelwriter/gui/doceditor.py | 2 +- novelwriter/gui/docviewer.py | 2 +- novelwriter/gui/projtree.py | 2 +- novelwriter/tools/welcome.py | 2 +- tests/test_gui/test_gui_doceditor.py | 2 ++ tests/test_tools/test_tools_welcome.py | 1 + 6 files changed, 7 insertions(+), 4 deletions(-) diff --git a/novelwriter/gui/doceditor.py b/novelwriter/gui/doceditor.py index 63be85b1..52e0180a 100644 --- a/novelwriter/gui/doceditor.py +++ b/novelwriter/gui/doceditor.py @@ -1217,7 +1217,7 @@ class GuiDocEditor(QPlainTextEdit): # Execute the context menu ctxMenu.exec(self.viewport().mapToGlobal(pos)) - ctxMenu.deleteLater() + ctxMenu.setParent(None) return diff --git a/novelwriter/gui/docviewer.py b/novelwriter/gui/docviewer.py index b43c7b7c..389aac2c 100644 --- a/novelwriter/gui/docviewer.py +++ b/novelwriter/gui/docviewer.py @@ -424,7 +424,7 @@ class GuiDocViewer(QTextBrowser): # Open the context menu ctxMenu.exec(self.viewport().mapToGlobal(point)) - ctxMenu.deleteLater() + ctxMenu.setParent(None) return diff --git a/novelwriter/gui/projtree.py b/novelwriter/gui/projtree.py index db04e3dd..53470897 100644 --- a/novelwriter/gui/projtree.py +++ b/novelwriter/gui/projtree.py @@ -970,7 +970,7 @@ class GuiProjectTree(QTreeView): ctxMenu.buildSingleSelectMenu() ctxMenu.exec(self.viewport().mapToGlobal(point)) - ctxMenu.deleteLater() + ctxMenu.setParent(None) return diff --git a/novelwriter/tools/welcome.py b/novelwriter/tools/welcome.py index 74f57971..837e76e5 100644 --- a/novelwriter/tools/welcome.py +++ b/novelwriter/tools/welcome.py @@ -376,7 +376,7 @@ class _OpenProjectPage(QWidget): action = ctxMenu.addAction(self.tr("Remove Project")) action.triggered.connect(self._deleteSelectedItem) ctxMenu.exec(self.mapToGlobal(pos)) - ctxMenu.deleteLater() + ctxMenu.setParent(None) return ## diff --git a/tests/test_gui/test_gui_doceditor.py b/tests/test_gui/test_gui_doceditor.py index 611f0145..efd4345e 100644 --- a/tests/test_gui/test_gui_doceditor.py +++ b/tests/test_gui/test_gui_doceditor.py @@ -332,6 +332,7 @@ def testGuiEditor_MetaData(qtbot, nwGUI, projPath, mockRnd): def testGuiEditor_ContextMenu(monkeypatch, qtbot, nwGUI, projPath, mockRnd): """Test the editor context menu.""" monkeypatch.setattr(QMenu, "exec", lambda *a: None) + monkeypatch.setattr(QMenu, "setParent", lambda *a: None) buildTestProject(nwGUI, projPath) assert nwGUI.openDocument(C.hSceneDoc) is True @@ -471,6 +472,7 @@ def testGuiEditor_ContextMenu(monkeypatch, qtbot, nwGUI, projPath, mockRnd): def testGuiEditor_SpellChecking(qtbot, monkeypatch, nwGUI, projPath, ipsumText, mockRnd): """Test the document spell checker.""" monkeypatch.setattr(QMenu, "exec", lambda *a: None) + monkeypatch.setattr(QMenu, "setParent", lambda *a: None) buildTestProject(nwGUI, projPath) assert nwGUI.openDocument(C.hSceneDoc) is True diff --git a/tests/test_tools/test_tools_welcome.py b/tests/test_tools/test_tools_welcome.py index eb30fcb7..e827d0cb 100644 --- a/tests/test_tools/test_tools_welcome.py +++ b/tests/test_tools/test_tools_welcome.py @@ -70,6 +70,7 @@ def testToolWelcome_Main(qtbot: QtBot, monkeypatch, nwGUI, fncPath): def testToolWelcome_Open(qtbot: QtBot, monkeypatch, nwGUI, fncPath): """Test the open tab in the Welcome window.""" monkeypatch.setattr(QMenu, "exec", lambda *a: None) + monkeypatch.setattr(QMenu, "setParent", lambda *a: None) CONFIG.recentProjects.update("/stuff/project_one", "Project One", 12345, 1690000000) CONFIG.recentProjects.update("/stuff/project_two", "Project Two", 54321, 1700000000)