on xenial help sign in
Add a user property instead of a setUser method
6d2672cMichael Terry
Shell.qml+1−1
@@ -470,7 +470,7 @@ FocusScope {
470 onSelected: {
470 onSelected: {
471 // Update launcher items for new user
471 // Update launcher items for new user
472 var user = LightDM.Users.data(uid, LightDM.UserRoles.NameRole);
472 var user = LightDM.Users.data(uid, LightDM.UserRoles.NameRole);
473− AccountsService.setUser(user);
473+ AccountsService.user = user;
474 LauncherModel.setUser(user);
474 LauncherModel.setUser(user);
475 }
475 }
476
476
plugins/AccountsService/AccountsBindings.cpp+7
@@ -32,9 +32,16 @@ AccountsBindings::AccountsBindings(QObject* parent)
32 this, SLOT(maybeChanged(const QString &)));
32 this, SLOT(maybeChanged(const QString &)));
33}
33}
34
34
35+QString AccountsBindings::getUser()
36+{
37+ return m_user;
38+}
39+
35void AccountsBindings::setUser(const QString &user)
40void AccountsBindings::setUser(const QString &user)
36{
41{
37 m_user = user;
42 m_user = user;
43+ Q_EMIT userChanged();
44+
38 updateDemoEdges();
45 updateDemoEdges();
39 updateBackgroundFile();
46 updateBackgroundFile();
40}
47}
plugins/AccountsService/AccountsBindings.h+7−2
@@ -27,6 +27,10 @@ class AccountsService;
27class AccountsBindings: public QObject
27class AccountsBindings: public QObject
28{
28{
29 Q_OBJECT
29 Q_OBJECT
30+ Q_PROPERTY (QString user
31+ READ getUser
32+ WRITE setUser
33+ NOTIFY userChanged)
30 Q_PROPERTY (bool demoEdges
34 Q_PROPERTY (bool demoEdges
31 READ getDemoEdges
35 READ getDemoEdges
32 WRITE setDemoEdges
36 WRITE setDemoEdges
@@ -38,13 +42,14 @@ class AccountsBindings: public QObject
38public:
42public:
39 explicit AccountsBindings(QObject *parent = 0);
43 explicit AccountsBindings(QObject *parent = 0);
40
44
45+ QString getUser();
41− Q_INVOKABLE void setUser(const QString &user);
46+ void setUser(const QString &user);
42−
43 bool getDemoEdges();
47 bool getDemoEdges();
44 void setDemoEdges(bool demoEdges);
48 void setDemoEdges(bool demoEdges);
45 QString getBackgroundFile();
49 QString getBackgroundFile();
46
50
47Q_SIGNALS:
51Q_SIGNALS:
52+ void userChanged();
48 void demoEdgesChanged();
53 void demoEdgesChanged();
49 void backgroundFileChanged();
54 void backgroundFileChanged();
50
55
tests/mocks/AccountsService/AccountsBindings.cpp+5
@@ -23,6 +23,11 @@ AccountsBindings::AccountsBindings(QObject* parent)
23{
23{
24}
24}
25
25
26+QString AccountsBindings::getUser()
27+{
28+ return "testuser";
29+}
30+
26void AccountsBindings::setUser(const QString &)
31void AccountsBindings::setUser(const QString &)
27{
32{
28}
33}
tests/mocks/AccountsService/AccountsBindings.h+7−2
@@ -27,6 +27,10 @@
27class AccountsBindings: public QObject
27class AccountsBindings: public QObject
28{
28{
29 Q_OBJECT
29 Q_OBJECT
30+ Q_PROPERTY (QString user
31+ READ getUser
32+ WRITE setUser
33+ NOTIFY userChanged)
30 Q_PROPERTY (bool demoEdges
34 Q_PROPERTY (bool demoEdges
31 READ getDemoEdges
35 READ getDemoEdges
32 WRITE setDemoEdges
36 WRITE setDemoEdges
@@ -38,13 +42,14 @@ class AccountsBindings: public QObject
38public:
42public:
39 explicit AccountsBindings(QObject *parent = 0);
43 explicit AccountsBindings(QObject *parent = 0);
40
44
45+ QString getUser();
41− Q_INVOKABLE void setUser(const QString &user);
46+ void setUser(const QString &user);
42−
43 bool getDemoEdges();
47 bool getDemoEdges();
44 void setDemoEdges(bool demoEdges);
48 void setDemoEdges(bool demoEdges);
45 QString getBackgroundFile();
49 QString getBackgroundFile();
46
50
47Q_SIGNALS:
51Q_SIGNALS:
52+ void userChanged();
48 void demoEdgesChanged();
53 void demoEdgesChanged();
49 void backgroundFileChanged();
54 void backgroundFileChanged();
50};
55};