diff --git a/src/gui/src/MainWindow.cpp b/src/gui/src/MainWindow.cpp index d342c3850f..ceec7179b7 100644 --- a/src/gui/src/MainWindow.cpp +++ b/src/gui/src/MainWindow.cpp @@ -1465,3 +1465,9 @@ void MainWindow::windowStateChanged() if (windowState() == Qt::WindowMinimized && appConfig().getMinimizeToTray()) hide(); } + +void MainWindow::closeEvent(QCloseEvent *event) { + //If the main window is closing, trigger a save + GUI::Config::ConfigWriter::make()->globalSave(); + event->accept(); +} diff --git a/src/gui/src/MainWindow.h b/src/gui/src/MainWindow.h index 083d2219f9..0dd60c80ec 100644 --- a/src/gui/src/MainWindow.h +++ b/src/gui/src/MainWindow.h @@ -188,6 +188,8 @@ public slots: void stopDesktop(); void changeEvent(QEvent* event); void retranslateMenuBar(); + void closeEvent(QCloseEvent *event) override; + #if defined(Q_OS_WIN) bool isServiceRunning(QString name); #else