@@ -26,7 +26,8 @@ AccountsService::AccountsService(QObject* parent)
2626 m_service(new AccountsServiceDBusAdaptor(this)),
2727 m_user(qgetenv("USER")),
2828 m_demoEdges(false),
29− m_interactiveWhileLocked(false),
29+ m_enableLauncherWhileLocked(false),
30+ m_enableIndicatorsWhileLocked(false),
3031 m_statsWelcomeScreen(false),
3132 m_passwordDisplayHint(Keyboard),
3233 m_failedLogins(0)
@@ -48,7 +49,8 @@ void AccountsService::setUser(const QString &user)
4849 Q_EMIT userChanged();
4950
5051 updateDemoEdges();
51− updateInteractiveWhileLocked();
52+ updateEnableLauncherWhileLocked();
53+ updateEnableIndicatorsWhileLocked();
5254 updateBackgroundFile();
5355 updateStatsWelcomeScreen();
5456 updatePasswordDisplayHint();
@@ -66,9 +68,14 @@ void AccountsService::setDemoEdges(bool demoEdges)
6668 m_service->setUserProperty(m_user, "com.canonical.unity.AccountsService", "demo-edges", demoEdges);
6769}
6870
69−bool AccountsService::interactiveWhileLocked() const
71+bool AccountsService::enableLauncherWhileLocked() const
7072{
71− return m_interactiveWhileLocked;
73+ return m_enableLauncherWhileLocked;
74+}
75+
76+bool AccountsService::enableIndicatorsWhileLocked() const
77+{
78+ return m_enableIndicatorsWhileLocked;
7279}
7380
7481QString AccountsService::backgroundFile() const
@@ -95,12 +102,21 @@ void AccountsService::updateDemoEdges()
95102 }
96103}
97104
98−void AccountsService::updateInteractiveWhileLocked()
105+void AccountsService::updateEnableLauncherWhileLocked()
106+{
107+ auto enableLauncherWhileLocked = m_service->getUserProperty(m_user, "com.canonical.unity.AccountsService", "EnableLauncherWhileLocked").toBool();
108+ if (m_enableLauncherWhileLocked != enableLauncherWhileLocked) {
109+ m_enableLauncherWhileLocked = enableLauncherWhileLocked;
110+ Q_EMIT enableLauncherWhileLockedChanged();
111+ }
112+}
113+
114+void AccountsService::updateEnableIndicatorsWhileLocked()
99115{
100− auto interactiveWhileLocked = m_service->getUserProperty(m_user, "com.canonical.unity.AccountsService", "InteractiveWhileLocked").toBool();
101− if (m_interactiveWhileLocked != interactiveWhileLocked) {
102− m_interactiveWhileLocked = interactiveWhileLocked;
103− Q_EMIT interactiveWhileLockedChanged();
116+ auto enableIndicatorsWhileLocked = m_service->getUserProperty(m_user, "com.canonical.unity.AccountsService", "EnableIndicatorsWhileLocked").toBool();
117+ if (m_enableIndicatorsWhileLocked != enableIndicatorsWhileLocked) {
118+ m_enableIndicatorsWhileLocked = enableIndicatorsWhileLocked;
119+ Q_EMIT enableIndicatorsWhileLockedChanged();
104120 }
105121}
106122
@@ -161,8 +177,11 @@ void AccountsService::propertiesChanged(const QString &user, const QString &inte
161177 if (changed.contains("demo-edges")) {
162178 updateDemoEdges();
163179 }
164− if (changed.contains("InteractiveWhileLocked")) {
165− updateInteractiveWhileLocked();
180+ if (changed.contains("EnableLauncherWhileLocked")) {
181+ updateEnableLauncherWhileLocked();
182+ }
183+ if (changed.contains("EnableIndicatorsWhileLocked")) {
184+ updateEnableIndicatorsWhileLocked();
166185 }
167186 } else if (interface == "com.canonical.unity.AccountsService.Private") {
168187 if (changed.contains("FailedLogins")) {