From bfb95d503a2679db6ef09d74d6b3057e006d3114 Mon Sep 17 00:00:00 2001 From: Jonas Kvinge Date: Mon, 7 Aug 2023 19:38:48 +0200 Subject: [PATCH] ErrorDialog: Clear messages on close instead of hide Fixes an issue where the error dialog is cleared because the hide event gets triggered. --- src/dialogs/errordialog.cpp | 9 ++++++--- src/dialogs/errordialog.h | 4 ++-- src/dialogs/errordialog.ui | 4 ++-- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/dialogs/errordialog.cpp b/src/dialogs/errordialog.cpp index ce92da2fb..304803d1e 100644 --- a/src/dialogs/errordialog.cpp +++ b/src/dialogs/errordialog.cpp @@ -28,12 +28,11 @@ #include #include #include +#include #include "errordialog.h" #include "ui_errordialog.h" -class QHideEvent; - ErrorDialog::ErrorDialog(QWidget *parent) : QDialog(parent), ui_(new Ui_ErrorDialog) { @@ -68,9 +67,13 @@ void ErrorDialog::ShowMessage(const QString &message) { } -void ErrorDialog::hideEvent(QHideEvent *) { +void ErrorDialog::closeEvent(QCloseEvent *e) { + current_messages_.clear(); UpdateContent(); + + QDialog::closeEvent(e); + } void ErrorDialog::UpdateContent() { diff --git a/src/dialogs/errordialog.h b/src/dialogs/errordialog.h index 81e0d88f0..e542df6de 100644 --- a/src/dialogs/errordialog.h +++ b/src/dialogs/errordialog.h @@ -29,7 +29,7 @@ #include #include -class QHideEvent; +class QCloseEvent; class Ui_ErrorDialog; class ErrorDialog : public QDialog { @@ -43,7 +43,7 @@ class ErrorDialog : public QDialog { void ShowMessage(const QString &message); protected: - void hideEvent(QHideEvent*) override; + void closeEvent(QCloseEvent *e) override; private: void UpdateContent(); diff --git a/src/dialogs/errordialog.ui b/src/dialogs/errordialog.ui index 1974801d0..156488026 100644 --- a/src/dialogs/errordialog.ui +++ b/src/dialogs/errordialog.ui @@ -75,7 +75,7 @@ buttonbox accepted() ErrorDialog - accept() + close() 299 @@ -91,7 +91,7 @@ buttonbox rejected() ErrorDialog - reject() + close() 299