summaryrefslogtreecommitdiffstats
path: root/src/yuzu/applets/qt_error.cpp
diff options
context:
space:
mode:
authorliamwhite <liamwhite@users.noreply.github.com>2023-03-29 15:11:34 +0200
committerGitHub <noreply@github.com>2023-03-29 15:11:34 +0200
commit8bdc51b620f0778f53d76ad9368da97a9213d631 (patch)
tree2a71c944643cda0ab019c22d1d46d58552f002ff /src/yuzu/applets/qt_error.cpp
parentMerge pull request #10003 from german77/disconnect (diff)
parentqt: implement RequestExit for applets (diff)
downloadyuzu-8bdc51b620f0778f53d76ad9368da97a9213d631.tar
yuzu-8bdc51b620f0778f53d76ad9368da97a9213d631.tar.gz
yuzu-8bdc51b620f0778f53d76ad9368da97a9213d631.tar.bz2
yuzu-8bdc51b620f0778f53d76ad9368da97a9213d631.tar.lz
yuzu-8bdc51b620f0778f53d76ad9368da97a9213d631.tar.xz
yuzu-8bdc51b620f0778f53d76ad9368da97a9213d631.tar.zst
yuzu-8bdc51b620f0778f53d76ad9368da97a9213d631.zip
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();
+ }
}