[Configuration] Add Applets Tab to Per-Game Configurations (#3623)

Some games need specific applets to work.

For example for local multiplayer to function the Controller Applet must be set as:
- MK8D -> Custom Applet
- Absolum -> Real Applet

Web/Offline Applet: Assasin Creed and some bundled games might need real applet.

Overlay Toggle added for Horizon's ingame menu.

Thanks PavelBARABANOV for the help with the PR.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3623
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: John <john@eden-emu.dev>
Co-committed-by: John <john@eden-emu.dev>
This commit is contained in:
John 2026-02-24 22:25:28 +01:00 committed by crueter
parent 270232e8d6
commit 5279e76534
No known key found for this signature in database
GPG key ID: 425ACD2D4830EBC6
5 changed files with 22 additions and 14 deletions

View file

@ -41,6 +41,7 @@
#include "yuzu/configuration/configure_per_game_addons.h"
#include "yuzu/configuration/configure_system.h"
#include "yuzu/configuration/configure_network.h"
#include "yuzu/configuration/configure_applets.h"
#include "qt_common/config/uisettings.h"
#include "yuzu/util/util.h"
#include "yuzu/vk_device_info.h"
@ -69,6 +70,7 @@ ConfigurePerGame::ConfigurePerGame(QWidget* parent, u64 title_id_, const std::st
input_tab = std::make_unique<ConfigureInputPerGame>(system_, game_config.get(), this);
system_tab = std::make_unique<ConfigureSystem>(system_, tab_group, *builder, this);
network_tab = std::make_unique<ConfigureNetwork>(system_, this);
applets_tab = std::make_unique<ConfigureApplets>(system_, tab_group, *builder, this);
ui->setupUi(this);
@ -81,6 +83,7 @@ ConfigurePerGame::ConfigurePerGame(QWidget* parent, u64 title_id_, const std::st
ui->tabWidget->addTab(audio_tab.get(), tr("Audio"));
ui->tabWidget->addTab(input_tab.get(), tr("Input Profiles"));
ui->tabWidget->addTab(network_tab.get(), tr("Network"));
ui->tabWidget->addTab(applets_tab.get(), tr("Applets"));
setFocusPolicy(Qt::ClickFocus);
setWindowTitle(tr("Properties"));
@ -108,6 +111,7 @@ void ConfigurePerGame::ApplyConfiguration() {
addons_tab->ApplyConfiguration();
input_tab->ApplyConfiguration();
network_tab->ApplyConfiguration();
applets_tab->ApplyConfiguration();
if (Settings::IsDockedMode() && Settings::values.players.GetValue()[0].controller_type ==
Settings::ControllerType::Handheld) {

View file

@ -38,6 +38,7 @@ class ConfigureGraphicsExtensions;
class ConfigureInputPerGame;
class ConfigureSystem;
class ConfigureNetwork;
class ConfigureApplets;
class QGraphicsScene;
class QStandardItem;
@ -93,4 +94,5 @@ private:
std::unique_ptr<ConfigureInputPerGame> input_tab;
std::unique_ptr<ConfigureSystem> system_tab;
std::unique_ptr<ConfigureNetwork> network_tab;
std::unique_ptr<ConfigureApplets> applets_tab;
};