# # # patch "src/view/MainWindow.cpp" # from [72d33bd2fe71dbcffcd818e7fdbd13bcd6692cf7] # to [2df1db606ed6d15edf3587a46c721bacd2917328] # ============================================================ --- src/view/MainWindow.cpp 72d33bd2fe71dbcffcd818e7fdbd13bcd6692cf7 +++ src/view/MainWindow.cpp 2df1db606ed6d15edf3587a46c721bacd2917328 @@ -210,11 +210,17 @@ bool MainWindow::doLoadWorkspace(QString return true; } -void MainWindow::closeEvent(QCloseEvent *event) +void MainWindow::closeEvent(QCloseEvent * event) { Q_ASSERT(closeCounter >= 0); + // ignore the close event if there are still open dialog windows - if (closeCounter > 0) return; + if (closeCounter > 0) + { + D(QString("Ignoring close request for %1").arg((int)this)); + event->ignore(); + return; + } // the last closed window sets the geometry for the next one which is opened Settings::setWindowGeometry(saveGeometry(), "MainWindow_mode" + mode);