Improve handling of tool dialogs on project close

This commit is contained in:
Veronica Berglyd Olsen
2024-05-02 21:29:07 +02:00
parent c594e07c8c
commit 78e194d8c1
4 changed files with 21 additions and 11 deletions
+5 -8
View File
@@ -198,7 +198,7 @@ class SharedData(QObject):
def closeProject(self) -> None:
"""Close the current project."""
self._closeDialogs()
self._closeToolDialogs()
self.project.closeProject(self._idleTime)
self._resetProject()
self._resetIdleTimer()
@@ -357,15 +357,12 @@ class SharedData(QObject):
self._idleTime = 0.0
return
def _closeDialogs(self) -> None:
"""Close non-modal dialogs."""
from novelwriter.tools.manuscript import GuiManuscript
from novelwriter.tools.writingstats import GuiWritingStats
def _closeToolDialogs(self) -> None:
"""Close all open tool dialogs."""
from novelwriter.extensions.modified import NToolDialog
for widget in self.mainGui.children():
if isinstance(widget, (GuiManuscript, GuiWritingStats)):
if isinstance(widget, NToolDialog):
widget.close()
return
# END Class SharedData