on xenial help sign in
Add a user property instead of a setUser method
commit6d2672c29721d537d1a575b5570ea2b72a59c590 authorMichael Terry <michael.terry@canonical.com> dateTue 3 Sep 2013, 11:42 (13 years ago) parentf26ddf0
5 files changed+27−5
Shell.qml+1−1 plugins/AccountsService/AccountsBindings.cpp+7 plugins/AccountsService/AccountsBindings.h+7−2 tests/mocks/AccountsService/AccountsBindings.cpp+5 tests/mocks/AccountsService/AccountsBindings.h+7−2
Shell.qml+1−1
@@ -470,7 +470,7 @@ FocusScope {
470470 onSelected: {
471471 // Update launcher items for new user
472472 var user = LightDM.Users.data(uid, LightDM.UserRoles.NameRole);
473− AccountsService.setUser(user);
473+ AccountsService.user = user;
474474 LauncherModel.setUser(user);
475475 }
476476
plugins/AccountsService/AccountsBindings.cpp+7
@@ -32,9 +32,16 @@ AccountsBindings::AccountsBindings(QObject* parent)
3232 this, SLOT(maybeChanged(const QString &)));
3333}
3434
35+QString AccountsBindings::getUser()
36+{
37+ return m_user;
38+}
39+
3540void AccountsBindings::setUser(const QString &user)
3641{
3742 m_user = user;
43+ Q_EMIT userChanged();
44+
3845 updateDemoEdges();
3946 updateBackgroundFile();
4047}
plugins/AccountsService/AccountsBindings.h+7−2
@@ -27,6 +27,10 @@ class AccountsService;
2727class AccountsBindings: public QObject
2828{
2929 Q_OBJECT
30+ Q_PROPERTY (QString user
31+ READ getUser
32+ WRITE setUser
33+ NOTIFY userChanged)
3034 Q_PROPERTY (bool demoEdges
3135 READ getDemoEdges
3236 WRITE setDemoEdges
@@ -38,13 +42,14 @@ class AccountsBindings: public QObject
3842public:
3943 explicit AccountsBindings(QObject *parent = 0);
4044
41− Q_INVOKABLE void setUser(const QString &user);
42−
45+ QString getUser();
46+ void setUser(const QString &user);
4347 bool getDemoEdges();
4448 void setDemoEdges(bool demoEdges);
4549 QString getBackgroundFile();
4650
4751Q_SIGNALS:
52+ void userChanged();
4853 void demoEdgesChanged();
4954 void backgroundFileChanged();
5055
tests/mocks/AccountsService/AccountsBindings.cpp+5
@@ -23,6 +23,11 @@ AccountsBindings::AccountsBindings(QObject* parent)
2323{
2424}
2525
26+QString AccountsBindings::getUser()
27+{
28+ return "testuser";
29+}
30+
2631void AccountsBindings::setUser(const QString &)
2732{
2833}
tests/mocks/AccountsService/AccountsBindings.h+7−2
@@ -27,6 +27,10 @@
2727class AccountsBindings: public QObject
2828{
2929 Q_OBJECT
30+ Q_PROPERTY (QString user
31+ READ getUser
32+ WRITE setUser
33+ NOTIFY userChanged)
3034 Q_PROPERTY (bool demoEdges
3135 READ getDemoEdges
3236 WRITE setDemoEdges
@@ -38,13 +42,14 @@ class AccountsBindings: public QObject
3842public:
3943 explicit AccountsBindings(QObject *parent = 0);
4044
41− Q_INVOKABLE void setUser(const QString &user);
42−
45+ QString getUser();
46+ void setUser(const QString &user);
4347 bool getDemoEdges();
4448 void setDemoEdges(bool demoEdges);
4549 QString getBackgroundFile();
4650
4751Q_SIGNALS:
52+ void userChanged();
4853 void demoEdgesChanged();
4954 void backgroundFileChanged();
5055};