@@ -75,8 +75,12 @@ bool AccountsService::demoEdges() const
7575
7676void AccountsService::setDemoEdges(bool demoEdges)
7777{
78− m_demoEdges = demoEdges;
79− m_service->setUserProperty(m_user, "com.canonical.unity.AccountsService", "demo-edges", demoEdges);
78+ if (m_demoEdges != demoEdges) {
79+ m_demoEdges = demoEdges;
80+ m_service->setUserProperty(m_user, "com.canonical.unity.AccountsService", "demo-edges", demoEdges);
81+
82+ Q_EMIT demoEdgesChanged();
83+ }
8084}
8185
8286bool AccountsService::enableLauncherWhileLocked() const
@@ -111,7 +115,12 @@ bool AccountsService::hereEnabled() const
111115
112116void AccountsService::setHereEnabled(bool enabled)
113117{
114− m_service->setUserProperty(m_user, "com.ubuntu.location.providers.here.AccountsService", "LicenseAccepted", enabled);
118+ if (m_hereEnabled != enabled) {
119+ m_hereEnabled = enabled;
120+ m_service->setUserProperty(m_user, "com.ubuntu.location.providers.here.AccountsService", "LicenseAccepted", enabled);
121+
122+ Q_EMIT hereEnabledChanged();
123+ }
115124}
116125
117126QString AccountsService::hereLicensePath() const
@@ -404,8 +413,12 @@ uint AccountsService::failedLogins() const
404413
405414void AccountsService::setFailedLogins(uint failedLogins)
406415{
407− m_failedLogins = failedLogins;
408− m_service->setUserProperty(m_user, "com.canonical.unity.AccountsService.Private", "FailedLogins", failedLogins);
416+ if (m_failedLogins != failedLogins) {
417+ m_failedLogins = failedLogins;
418+ m_service->setUserProperty(m_user, "com.canonical.unity.AccountsService.Private", "FailedLogins", failedLogins);
419+
420+ Q_EMIT failedLoginsChanged();
421+ }
409422}
410423
411424void AccountsService::propertiesChanged(const QString &user, const QString &interface, const QStringList &changed)