FIX: [BLPIOT-64] only default or user presets

Change-Id: I1c846aa26fdac95652ae8e7b3d01c30f99e7ef61
This commit is contained in:
chunmao.guo 2023-04-06 18:01:59 +08:00 committed by Lane.Wei
parent eb86b00c82
commit e11c004de4
2 changed files with 9 additions and 3 deletions

View file

@ -241,12 +241,12 @@ PresetsConfigSubstitutions PresetBundle::load_presets(AppConfig &config, Forward
//BBS: change system config to json //BBS: change system config to json
std::tie(substitutions, errors_cummulative) = this->load_system_presets_from_json(substitution_rule); std::tie(substitutions, errors_cummulative) = this->load_system_presets_from_json(substitution_rule);
// Load default user presets always
load_user_presets(DEFAULT_USER_FOLDER_NAME, substitution_rule);
// BBS load preset from user's folder, load system default if // BBS load preset from user's folder, load system default if
// BBS: change directories by design // BBS: change directories by design
std::string dir_user_presets = config.get("preset_folder"); std::string dir_user_presets = config.get("preset_folder");
if (!dir_user_presets.empty()) { if (dir_user_presets.empty()) {
load_user_presets(DEFAULT_USER_FOLDER_NAME, substitution_rule);
} else {
load_user_presets(dir_user_presets, substitution_rule); load_user_presets(dir_user_presets, substitution_rule);
} }

View file

@ -4425,6 +4425,9 @@ void GUI_App::start_sync_user_preset(bool load_immediately, bool with_progress_d
{ {
if (!m_agent || !m_agent->is_user_login()) return; if (!m_agent || !m_agent->is_user_login()) return;
if (load_immediately)
remove_user_presets();
enable_user_preset_folder(true); enable_user_preset_folder(true);
// has already start sync // has already start sync
@ -4541,6 +4544,9 @@ void GUI_App::stop_sync_user_preset()
remove_user_presets(); remove_user_presets();
enable_user_preset_folder(false); enable_user_preset_folder(false);
preset_bundle->load_user_presets(DEFAULT_USER_FOLDER_NAME, ForwardCompatibilitySubstitutionRule::Enable);
mainframe->update_side_preset_ui();
if (!enable_sync) if (!enable_sync)
return; return;