From 23b5b23b8be5e7cdace9008e9c828be547e0833a Mon Sep 17 00:00:00 2001 From: Maufeat Date: Sun, 8 Feb 2026 06:15:56 +0100 Subject: [PATCH] add in menubar "Tools -> Download Override Settings" --- src/yuzu/main.ui | 6 ++++++ src/yuzu/main_window.cpp | 11 ++++++++++- src/yuzu/main_window.h | 4 ++++ 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/yuzu/main.ui b/src/yuzu/main.ui index 327a7dffd2..0f598213c0 100644 --- a/src/yuzu/main.ui +++ b/src/yuzu/main.ui @@ -217,6 +217,7 @@ + @@ -577,6 +578,11 @@ &Data Manager + + + Download &Override Settings + + true diff --git a/src/yuzu/main_window.cpp b/src/yuzu/main_window.cpp index a198244704..c24b1acb2e 100644 --- a/src/yuzu/main_window.cpp +++ b/src/yuzu/main_window.cpp @@ -551,10 +551,14 @@ MainWindow::MainWindow(bool has_broken_vulkan) #endif // Check for game overrides updates - auto* overrides_updater = new OverridesUpdater(this); + overrides_updater = new OverridesUpdater(this); connect(overrides_updater, &OverridesUpdater::ConfigChanged, this, [this]() { config->SaveAllValues(); }); + connect(overrides_updater, &OverridesUpdater::UpdateCompleted, this, + [this](bool success, const QString& message) { + QMessageBox::information(this, tr("Game Overrides"), message); + }); overrides_updater->CheckAndUpdate(); QtCommon::system->SetContentProvider(std::make_unique()); @@ -1726,6 +1730,11 @@ void MainWindow::ConnectMenuEvents() { connect_menu(ui->action_About, &MainWindow::OnAbout); connect_menu(ui->action_Eden_Dependencies, &MainWindow::OnEdenDependencies); connect_menu(ui->action_Data_Manager, &MainWindow::OnDataDialog); + connect(ui->action_Download_Override_Settings, &QAction::triggered, this, [this] { + if (overrides_updater) { + overrides_updater->DownloadOverrides(); + } + }); } void MainWindow::UpdateMenuState() { diff --git a/src/yuzu/main_window.h b/src/yuzu/main_window.h index ddabe21ae0..3b9bafec4d 100644 --- a/src/yuzu/main_window.h +++ b/src/yuzu/main_window.h @@ -64,6 +64,7 @@ class QtControllerSelectorDialog; class QtProfileSelectionDialog; class QtSoftwareKeyboardDialog; class QtNXWebEngineView; +class OverridesUpdater; enum class StartGameType { Normal, // Can use custom configuration @@ -564,6 +565,9 @@ private: QtSoftwareKeyboardDialog* software_keyboard = nullptr; QtNXWebEngineView* web_applet = nullptr; + // Overrides updater + OverridesUpdater* overrides_updater = nullptr; + // True if amiibo file select is visible bool is_amiibo_file_select_active{};