diff --git a/plugins/lunchmealplugin/lunchmealsettings.cpp b/plugins/lunchmealplugin/lunchmealsettings.cpp index d560b90..3703770 100644 --- a/plugins/lunchmealplugin/lunchmealsettings.cpp +++ b/plugins/lunchmealplugin/lunchmealsettings.cpp @@ -24,7 +24,10 @@ bool LunchMealSettings::setUrl(const QString &url) if(this->url() == url) return true; - m_settings.setValue(QStringLiteral("LunchMealPlugin/url"), url); + if(url == m_defaultUrl) + m_settings.remove(m_url); + else + m_settings.setValue(m_url, url); m_settings.sync(); @@ -50,7 +53,10 @@ bool LunchMealSettings::setDateFormat(const QString &dateFormat) if(this->dateFormat() == dateFormat) return true; - m_settings.setValue(QStringLiteral("LunchMealPlugin/dateFormat"), dateFormat); + if(dateFormat == m_defaultDateFormat) + m_settings.remove(m_dateFormat); + else + m_settings.setValue(m_dateFormat, dateFormat); m_settings.sync(); diff --git a/plugins/presenceplugin/presencesettings.cpp b/plugins/presenceplugin/presencesettings.cpp index eb616fe..ba61eaf 100644 --- a/plugins/presenceplugin/presencesettings.cpp +++ b/plugins/presenceplugin/presencesettings.cpp @@ -22,7 +22,10 @@ bool PresenceSettings::setInterval(int interval) if(this->interval() == interval) return true; - m_settings.setValue(m_interval, interval); + if(interval == m_defaultInterval) + m_settings.remove(m_interval); + else + m_settings.setValue(m_interval, interval); m_settings.sync(); diff --git a/plugins/updaterplugin/updatersettings.cpp b/plugins/updaterplugin/updatersettings.cpp index d752df1..9d439e0 100644 --- a/plugins/updaterplugin/updatersettings.cpp +++ b/plugins/updaterplugin/updatersettings.cpp @@ -23,7 +23,10 @@ bool UpdaterSettings::setUrl(const QUrl &url) if(this->url() == url) return true; - m_settings.setValue(m_url, url); + if(url == m_defaultUrl) + m_settings.remove(m_url); + else + m_settings.setValue(m_url, url); m_settings.sync(); @@ -49,7 +52,10 @@ bool UpdaterSettings::setLastUpdateCheck(const QDate &lastUpdateCheck) if(this->lastUpdateCheck() == lastUpdateCheck) return true; - m_settings.setValue(m_lastUpdateCheck, lastUpdateCheck); + if(!lastUpdateCheck.isValid()) + m_settings.remove(m_lastUpdateCheck); + else + m_settings.setValue(m_lastUpdateCheck, lastUpdateCheck); m_settings.sync(); diff --git a/plugins/weatherplugin/weathersettings.cpp b/plugins/weatherplugin/weathersettings.cpp index 26463f0..71332df 100644 --- a/plugins/weatherplugin/weathersettings.cpp +++ b/plugins/weatherplugin/weathersettings.cpp @@ -22,7 +22,10 @@ bool WeatherSettings::setUrl(const QUrl &url) if(this->url() == url) return true; - m_settings.setValue(m_url, url); + if(url == m_defaultUrl) + m_settings.remove(m_url); + else + m_settings.setValue(m_url, url); m_settings.sync(); diff --git a/plugins/webradioplugin/webradiosettings.cpp b/plugins/webradioplugin/webradiosettings.cpp index 40c9883..615c44a 100644 --- a/plugins/webradioplugin/webradiosettings.cpp +++ b/plugins/webradioplugin/webradiosettings.cpp @@ -36,7 +36,10 @@ bool WebRadioSettings::setUrls(const QStringList &urls) if(this->urls() == urls) return true; - m_settings.setValue(m_urls, urls); + if(urls == m_defaultUrls) + m_settings.remove(m_urls); + else + m_settings.setValue(m_urls, urls); m_settings.sync(); @@ -62,7 +65,10 @@ bool WebRadioSettings::setLastUrl(const QString &lastUrl) if(this->lastUrl() == lastUrl) return true; - m_settings.setValue(m_lastUrl, lastUrl); + if(lastUrl.isNull()) + m_settings.remove(m_lastUrl); + else + m_settings.setValue(m_lastUrl, lastUrl); m_settings.sync(); @@ -88,7 +94,10 @@ bool WebRadioSettings::setVolume(int volume) if(this->volume() == volume) return true; - m_settings.setValue(m_volume, volume); + if(volume == m_defaultVolume) + m_settings.remove(m_volume); + else + m_settings.setValue(m_volume, volume); m_settings.sync();