aboutsummaryrefslogtreecommitdiff
path: root/src/yuzu/configuration/shared_widget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/yuzu/configuration/shared_widget.cpp')
-rw-r--r--src/yuzu/configuration/shared_widget.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/yuzu/configuration/shared_widget.cpp b/src/yuzu/configuration/shared_widget.cpp
index 0f59ee23a6..5e8e04be58 100644
--- a/src/yuzu/configuration/shared_widget.cpp
+++ b/src/yuzu/configuration/shared_widget.cpp
@@ -140,7 +140,12 @@ QWidget* Widget::CreateCombobox(std::function<std::string()>& serializer,
if (combobox_enumerations.contains(type)) {
enumeration = &combobox_enumerations.at(type);
for (const auto& [id, name] : *enumeration) {
- combobox->addItem(name);
+ if (type == Settings::EnumMetadata<Settings::AppletMode>::Index() &&
+ id == static_cast<u32>(Settings::AppletMode::Disabled) &&
+ setting.Id() != Settings::values.controller_applet_mode.Id()) {
+ continue;
+ }
+ combobox->addItem(name, id);
}
} else {
return combobox;
@@ -158,9 +163,8 @@ QWidget* Widget::CreateCombobox(std::function<std::string()>& serializer,
const u32 setting_value = std::strtoul(setting.ToString().c_str(), nullptr, 0);
combobox->setCurrentIndex(find_index(setting_value));
- serializer = [this, enumeration]() {
- int current = combobox->currentIndex();
- return std::to_string(enumeration->at(current).first);
+ serializer = [this]() {
+ return std::to_string(combobox->currentData().toUInt());
};
restore_func = [this, find_index]() {