From 3b90d18c6a0ba93f2362ec8dda273d5d2ab6e866 Mon Sep 17 00:00:00 2001 From: Davide Pesavento Date: Tue, 17 Jun 2025 18:40:43 -0400 Subject: [PATCH] Qt: Fix return code confusion in AchievementLoginDialog We were passing the wrong code to QDialog::done(). Qt defines 0 as Rejected and 1 as Accepted. This had no practical impact because callers were also using the inverted logic. The accepted()/rejected() signals were emitted incorrectly but nothing is using them at the moment. Still, to prevent further issues and improve code readability, flip the logic and prefer accept()/reject() over done(). --- src/duckstation-qt/achievementlogindialog.cpp | 4 ++-- src/duckstation-qt/achievementsettingswidget.cpp | 2 +- src/duckstation-qt/audiosettingswidget.cpp | 2 +- src/duckstation-qt/coverdownloaddialog.cpp | 2 +- src/duckstation-qt/gamecheatsettingswidget.cpp | 4 ++-- src/duckstation-qt/inputbindingdialog.cpp | 2 +- src/duckstation-qt/selectdiscdialog.cpp | 6 +++--- src/duckstation-qt/setupwizarddialog.cpp | 2 +- 8 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/duckstation-qt/achievementlogindialog.cpp b/src/duckstation-qt/achievementlogindialog.cpp index 90bda5948..b93ed1c74 100644 --- a/src/duckstation-qt/achievementlogindialog.cpp +++ b/src/duckstation-qt/achievementlogindialog.cpp @@ -65,7 +65,7 @@ void AchievementLoginDialog::cancelClicked() }); } - done(1); + reject(); } void AchievementLoginDialog::processLoginResult(bool result, const QString& message) @@ -119,7 +119,7 @@ void AchievementLoginDialog::processLoginResult(bool result, const QString& mess } } - done(0); + accept(); } void AchievementLoginDialog::connectUi() diff --git a/src/duckstation-qt/achievementsettingswidget.cpp b/src/duckstation-qt/achievementsettingswidget.cpp index a7c57a8f4..3bf1cce75 100644 --- a/src/duckstation-qt/achievementsettingswidget.cpp +++ b/src/duckstation-qt/achievementsettingswidget.cpp @@ -221,7 +221,7 @@ void AchievementSettingsWidget::onLoginLogoutPressed() AchievementLoginDialog login(this, Achievements::LoginRequestReason::UserInitiated); int res = login.exec(); - if (res != 0) + if (res == QDialog::Rejected) return; updateLoginState(); diff --git a/src/duckstation-qt/audiosettingswidget.cpp b/src/duckstation-qt/audiosettingswidget.cpp index 056305260..6b5b916ea 100644 --- a/src/duckstation-qt/audiosettingswidget.cpp +++ b/src/duckstation-qt/audiosettingswidget.cpp @@ -325,7 +325,7 @@ void AudioSettingsWidget::onStretchSettingsClicked() std::nullopt : std::optional(AudioStreamParameters::DEFAULT_STRETCH_USE_AA_FILTER)); - dlg.done(0); + dlg.reject(); QMetaObject::invokeMethod(this, &AudioSettingsWidget::onStretchSettingsClicked, Qt::QueuedConnection); }); diff --git a/src/duckstation-qt/coverdownloaddialog.cpp b/src/duckstation-qt/coverdownloaddialog.cpp index 70185440d..f4e436fc5 100644 --- a/src/duckstation-qt/coverdownloaddialog.cpp +++ b/src/duckstation-qt/coverdownloaddialog.cpp @@ -78,7 +78,7 @@ void CoverDownloadDialog::onCloseClicked() if (m_thread) cancelThread(); - done(0); + reject(); } void CoverDownloadDialog::updateEnabled() diff --git a/src/duckstation-qt/gamecheatsettingswidget.cpp b/src/duckstation-qt/gamecheatsettingswidget.cpp index ed26f80f4..d7037692a 100644 --- a/src/duckstation-qt/gamecheatsettingswidget.cpp +++ b/src/duckstation-qt/gamecheatsettingswidget.cpp @@ -926,12 +926,12 @@ void CheatCodeEditorDialog::saveClicked() tr("Failed to save cheat code:\n%1").arg(QString::fromStdString(error.GetDescription()))); } - done(1); + accept(); } void CheatCodeEditorDialog::cancelClicked() { - done(0); + reject(); } void CheatCodeEditorDialog::onOptionTypeChanged(int index) diff --git a/src/duckstation-qt/inputbindingdialog.cpp b/src/duckstation-qt/inputbindingdialog.cpp index ffd8a394c..f3dce864a 100644 --- a/src/duckstation-qt/inputbindingdialog.cpp +++ b/src/duckstation-qt/inputbindingdialog.cpp @@ -30,7 +30,7 @@ InputBindingDialog::InputBindingDialog(SettingsInterface* sif, InputBindingInfo: connect(m_ui.addBinding, &QPushButton::clicked, this, &InputBindingDialog::onAddBindingButtonClicked); connect(m_ui.removeBinding, &QPushButton::clicked, this, &InputBindingDialog::onRemoveBindingButtonClicked); connect(m_ui.clearBindings, &QPushButton::clicked, this, &InputBindingDialog::onClearBindingsButtonClicked); - connect(m_ui.buttonBox, &QDialogButtonBox::rejected, [this]() { done(0); }); + connect(m_ui.buttonBox, &QDialogButtonBox::rejected, [this]() { reject(); }); updateList(); // Only show the sensitivity controls for binds where it's applicable. diff --git a/src/duckstation-qt/selectdiscdialog.cpp b/src/duckstation-qt/selectdiscdialog.cpp index e9fee2a99..d27761e3e 100644 --- a/src/duckstation-qt/selectdiscdialog.cpp +++ b/src/duckstation-qt/selectdiscdialog.cpp @@ -38,7 +38,7 @@ void SelectDiscDialog::onListItemActivated(const QTreeWidgetItem* item) return; m_selected_path = item->data(0, Qt::UserRole).toString().toStdString(); - done(1); + accept(); } void SelectDiscDialog::updateStartEnabled() @@ -53,12 +53,12 @@ void SelectDiscDialog::updateStartEnabled() void SelectDiscDialog::onSelectClicked() { - done(1); + accept(); } void SelectDiscDialog::onCancelClicked() { - done(0); + reject(); } void SelectDiscDialog::populateList(const std::string& disc_set_name) diff --git a/src/duckstation-qt/setupwizarddialog.cpp b/src/duckstation-qt/setupwizarddialog.cpp index 0cee04820..185831ce5 100644 --- a/src/duckstation-qt/setupwizarddialog.cpp +++ b/src/duckstation-qt/setupwizarddialog.cpp @@ -698,7 +698,7 @@ void SetupWizardDialog::onAchievementsLoginLogoutClicked() AchievementLoginDialog login(this, Achievements::LoginRequestReason::UserInitiated); int res = login.exec(); - if (res != 0) + if (res == QDialog::Rejected) return; updateAchievementsEnableState();