mirror of
https://github.com/savoirfairelinux/jami-client-qt.git
synced 2025-12-16 23:14:57 +08:00
settings: allow devs to modify default settings
Delete the default settings in the settings file so that only user defined ones are stored locally. Previously, we stored every value in the settings file. This created a problem where we could not modify a default value as we had no way of knowing if it was user defined or not. This patch allow us to know that if a value was in the file, it's that it was different from the default. GitLab: #2000 Change-Id: I7d5154b258c2ca97a1976dc006a70db0d5fe0b31
This commit is contained in:
committed by
Andreas Traczyk
parent
2a72da564e
commit
8d55f352b4
@@ -34,8 +34,12 @@ AppSettingsManager::AppSettingsManager(QObject* parent)
|
||||
{
|
||||
for (int i = 0; i < static_cast<int>(Settings::Key::COUNT__); ++i) {
|
||||
auto key = static_cast<Settings::Key>(i);
|
||||
if (!settings_->contains(Settings::toString(key)))
|
||||
setValue(key, Settings::defaultValue(key));
|
||||
auto strKey= Settings::toString(key);
|
||||
// If the setting is written in the settings file and is equal to the default value,
|
||||
// remove it from the settings file.
|
||||
// This allow us to change default values without risking to remove user settings
|
||||
if ((settings_->contains(strKey)) && (settings_->value(strKey) == Settings::defaultValue(key)))
|
||||
settings_->remove(strKey);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user