summaryrefslogtreecommitdiff
path: root/src/yuzu/applets/qt_error.cpp
diff options
context:
space:
mode:
authorliamwhite <liamwhite@users.noreply.github.com>2023-03-29 09:11:34 -0400
committerGitHub <noreply@github.com>2023-03-29 09:11:34 -0400
commit8bdc51b620f0778f53d76ad9368da97a9213d631 (patch)
tree2a71c944643cda0ab019c22d1d46d58552f002ff /src/yuzu/applets/qt_error.cpp
parent9c96d40586d89fd39b1bc80455542a1e54d10dee (diff)
parent50a59487eb49baa229d553dd9a3c00aef20f799f (diff)
Merge pull request #9505 from liamwhite/request-exit
applets: implement RequestExit
Diffstat (limited to 'src/yuzu/applets/qt_error.cpp')
-rw-r--r--src/yuzu/applets/qt_error.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/yuzu/applets/qt_error.cpp b/src/yuzu/applets/qt_error.cpp
index e0190a979..1dc4f0383 100644
--- a/src/yuzu/applets/qt_error.cpp
+++ b/src/yuzu/applets/qt_error.cpp
@@ -8,12 +8,19 @@
QtErrorDisplay::QtErrorDisplay(GMainWindow& parent) {
connect(this, &QtErrorDisplay::MainWindowDisplayError, &parent,
&GMainWindow::ErrorDisplayDisplayError, Qt::QueuedConnection);
+ connect(this, &QtErrorDisplay::MainWindowRequestExit, &parent,
+ &GMainWindow::ErrorDisplayRequestExit, Qt::QueuedConnection);
connect(&parent, &GMainWindow::ErrorDisplayFinished, this,
&QtErrorDisplay::MainWindowFinishedError, Qt::DirectConnection);
}
QtErrorDisplay::~QtErrorDisplay() = default;
+void QtErrorDisplay::Close() const {
+ callback = {};
+ emit MainWindowRequestExit();
+}
+
void QtErrorDisplay::ShowError(Result error, FinishedCallback finished) const {
callback = std::move(finished);
emit MainWindowDisplayError(
@@ -55,5 +62,7 @@ void QtErrorDisplay::ShowCustomErrorText(Result error, std::string dialog_text,
}
void QtErrorDisplay::MainWindowFinishedError() {
- callback();
+ if (callback) {
+ callback();
+ }
}