Browse Source
Merge pull request #12575 from t895/inconsistent-settings-application
frontend_common: config: Only write setting related to opened config file
pull/15/merge
liamwhite
2 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with
6 additions and
11 deletions
-
src/android/app/src/main/java/org/yuzu/yuzu_emu/model/GamesViewModel.kt
-
src/android/app/src/main/jni/android_config.cpp
-
src/android/app/src/main/jni/android_config.h
-
src/frontend_common/config.cpp
|
|
@ -167,13 +167,14 @@ class GamesViewModel : ViewModel() { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
fun onCloseGameFoldersFragment() = |
|
|
|
|
|
|
|
|
fun onCloseGameFoldersFragment() { |
|
|
|
|
|
NativeConfig.saveGlobalConfig() |
|
|
viewModelScope.launch { |
|
|
viewModelScope.launch { |
|
|
withContext(Dispatchers.IO) { |
|
|
withContext(Dispatchers.IO) { |
|
|
NativeConfig.saveGlobalConfig() |
|
|
|
|
|
getGameDirs(true) |
|
|
getGameDirs(true) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
private fun getGameDirs(reloadList: Boolean = false) { |
|
|
private fun getGameDirs(reloadList: Boolean = false) { |
|
|
val gameDirs = NativeConfig.getGameDirs() |
|
|
val gameDirs = NativeConfig.getGameDirs() |
|
|
|
|
|
@ -14,12 +14,6 @@ AndroidConfig::AndroidConfig(const std::string& config_name, ConfigType config_t |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
AndroidConfig::~AndroidConfig() { |
|
|
|
|
|
if (global) { |
|
|
|
|
|
AndroidConfig::SaveAllValues(); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void AndroidConfig::ReloadAllValues() { |
|
|
void AndroidConfig::ReloadAllValues() { |
|
|
Reload(); |
|
|
Reload(); |
|
|
ReadAndroidValues(); |
|
|
ReadAndroidValues(); |
|
|
|
|
|
@ -9,7 +9,6 @@ class AndroidConfig final : public Config { |
|
|
public: |
|
|
public: |
|
|
explicit AndroidConfig(const std::string& config_name = "config", |
|
|
explicit AndroidConfig(const std::string& config_name = "config", |
|
|
ConfigType config_type = ConfigType::GlobalConfig); |
|
|
ConfigType config_type = ConfigType::GlobalConfig); |
|
|
~AndroidConfig() override; |
|
|
|
|
|
|
|
|
|
|
|
void ReloadAllValues() override; |
|
|
void ReloadAllValues() override; |
|
|
void SaveAllValues() override; |
|
|
void SaveAllValues() override; |
|
|
|
|
|
@ -883,9 +883,10 @@ void Config::WriteSettingGeneric(const Settings::BasicSetting* const setting) { |
|
|
WriteBooleanSetting(std::string(key).append("\\use_global"), setting->UsingGlobal()); |
|
|
WriteBooleanSetting(std::string(key).append("\\use_global"), setting->UsingGlobal()); |
|
|
} |
|
|
} |
|
|
if (global || !setting->UsingGlobal()) { |
|
|
if (global || !setting->UsingGlobal()) { |
|
|
|
|
|
auto value = global ? setting->ToStringGlobal() : setting->ToString(); |
|
|
WriteBooleanSetting(std::string(key).append("\\default"), |
|
|
WriteBooleanSetting(std::string(key).append("\\default"), |
|
|
setting->ToString() == setting->DefaultToString()); |
|
|
|
|
|
WriteStringSetting(key, setting->ToString()); |
|
|
|
|
|
|
|
|
value == setting->DefaultToString()); |
|
|
|
|
|
WriteStringSetting(key, value); |
|
|
} |
|
|
} |
|
|
} else if (global) { |
|
|
} else if (global) { |
|
|
WriteBooleanSetting(std::string(key).append("\\default"), |
|
|
WriteBooleanSetting(std::string(key).append("\\default"), |
|
|
|