[android, desktop] popup on games only; android impl
All checks were successful
eden-license / license-header (pull_request) Successful in 28s

Signed-off-by: crueter <crueter@eden-emu.dev>
This commit is contained in:
crueter 2025-09-04 12:39:16 -04:00
parent af4222a78b
commit e16765ce15
Signed by: crueter
GPG key ID: 425ACD2D4830EBC6
11 changed files with 52 additions and 59 deletions

View file

@ -553,8 +553,6 @@ GMainWindow::GMainWindow(bool has_broken_vulkan)
// Gen keys if necessary
OnCheckFirmwareDecryption();
OnCheckNcaVerification();
game_list->LoadCompatibilityList();
// force reload on first load to ensure add-ons get updated
game_list->PopulateAsync(UISettings::values.game_dirs, false);
@ -2038,6 +2036,10 @@ bool GMainWindow::LoadROM(const QString& filename, Service::AM::FrontendAppletPa
}
}
if (!OnCheckNcaVerification()) {
return false;
}
/** Exec */
const Core::SystemResultStatus result{
system->Load(*render_window, filename.toStdString(), params)};
@ -5267,14 +5269,14 @@ void GMainWindow::OnCheckFirmwareDecryption() {
UpdateMenuState();
}
void GMainWindow::OnCheckNcaVerification() {
bool GMainWindow::OnCheckNcaVerification() {
if (!Settings::values.disable_nca_verification.GetValue())
return;
return true;
const bool currently_hidden = Settings::values.hide_nca_verification_popup.GetValue();
LOG_INFO(Frontend, "NCA Verification is disabled. Popup State={}", currently_hidden);
if (currently_hidden)
return;
return true;
QMessageBox msgbox(this);
msgbox.setWindowTitle(tr("NCA Verification Disabled"));
@ -5285,19 +5287,21 @@ void GMainWindow::OnCheckNcaVerification() {
"If unsure, re-enable verification in Eden's Settings and use firmware "
"version 19.0.1 or below."));
msgbox.setIcon(QMessageBox::Warning);
msgbox.setStandardButtons(QMessageBox::Ok);
msgbox.setStandardButtons(QMessageBox::Ok | QMessageBox::Cancel);
msgbox.setDefaultButton(QMessageBox::Ok);
QCheckBox* cb = new QCheckBox(tr("Don't show this message again"), &msgbox);
QCheckBox* cb = new QCheckBox(tr("Don't show again"), &msgbox);
cb->setChecked(currently_hidden);
msgbox.setCheckBox(cb);
msgbox.exec();
int result = msgbox.exec();
const bool hide = cb->isChecked();
if (hide != currently_hidden) {
Settings::values.hide_nca_verification_popup.SetValue(hide);
}
return result == static_cast<int>(QMessageBox::Ok);
}
bool GMainWindow::CheckFirmwarePresence() {