From 363e3735f13fb5d2f03078bfc7146dd0487bd6ce Mon Sep 17 00:00:00 2001 From: Konstantinos Sideris Date: Wed, 11 Jul 2018 20:55:13 +0300 Subject: Allow close events from the session manager (#353) --- src/MainWindow.cc | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'src/MainWindow.cc') diff --git a/src/MainWindow.cc b/src/MainWindow.cc index 37739dc3..37b806d0 100644 --- a/src/MainWindow.cc +++ b/src/MainWindow.cc @@ -277,11 +277,8 @@ MainWindow::showChatPage() void MainWindow::closeEvent(QCloseEvent *event) { - // Decide whether or not we should enable tray for the current page. - bool pageSupportsTray = - !welcome_page_->isVisible() && !login_page_->isVisible() && !register_page_->isVisible(); - - if (isVisible() && pageSupportsTray && userSettings_->isTrayEnabled()) { + if (!qApp->isSavingSession() && isVisible() && pageSupportsTray() && + userSettings_->isTrayEnabled()) { event->ignore(); hide(); } @@ -505,3 +502,10 @@ MainWindow::hasActiveDialogs() const (!createRoomModal_.isNull() && createRoomModal_->isVisible()) || (!logoutModal_.isNull() && logoutModal_->isVisible()); } + +bool +MainWindow::pageSupportsTray() const +{ + return !welcome_page_->isVisible() && !login_page_->isVisible() && + !register_page_->isVisible(); +} -- cgit 1.5.1