2 * Copyright (C) 2013 Canonical, Ltd.
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; version 3.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
16 * Authors: Michael Terry <michael.terry@canonical.com>
19#ifndef UNITY_ACCOUNTSSERVICE_H
20#define UNITY_ACCOUNTSSERVICE_H
25class AccountsServiceDBusAdaptor;
28class AccountsService: public QObject
31 Q_ENUMS(PasswordDisplayHint)
32 Q_PROPERTY (QString user
36 Q_PROPERTY (bool demoEdges
39 NOTIFY demoEdgesChanged)
40 Q_PROPERTY (bool enableLauncherWhileLocked
41 READ enableLauncherWhileLocked
42 NOTIFY enableLauncherWhileLockedChanged)
43 Q_PROPERTY (bool enableIndicatorsWhileLocked
44 READ enableIndicatorsWhileLocked
45 NOTIFY enableIndicatorsWhileLockedChanged)
46 Q_PROPERTY (QString backgroundFile
48 NOTIFY backgroundFileChanged)
49 Q_PROPERTY (bool statsWelcomeScreen
50 READ statsWelcomeScreen
51 NOTIFY statsWelcomeScreenChanged)
52 Q_PROPERTY (PasswordDisplayHint passwordDisplayHint
53 READ passwordDisplayHint
54 NOTIFY passwordDisplayHintChanged)
55 Q_PROPERTY (uint failedLogins
58 NOTIFY failedLoginsChanged)
59 Q_PROPERTY(bool hereEnabled
62 NOTIFY hereEnabledChanged)
63 Q_PROPERTY(QString hereLicensePath
65 NOTIFY hereLicensePathChanged)
66 Q_PROPERTY(bool hereLicensePathValid // qml sees a null string as "", so we use proxy setting for that
67 READ hereLicensePathValid
68 NOTIFY hereLicensePathChanged)
71 enum PasswordDisplayHint {
76 explicit AccountsService(QObject *parent = 0, const QString & user = QString());
77 ~AccountsService() = default;
80 void setUser(const QString &user);
81 bool demoEdges() const;
82 void setDemoEdges(bool demoEdges);
83 bool enableLauncherWhileLocked() const;
84 bool enableIndicatorsWhileLocked() const;
85 QString backgroundFile() const;
86 bool statsWelcomeScreen() const;
87 PasswordDisplayHint passwordDisplayHint() const;
88 uint failedLogins() const;
89 void setFailedLogins(uint failedLogins);
90 bool hereEnabled() const;
91 void setHereEnabled(bool enabled);
92 QString hereLicensePath() const;
93 bool hereLicensePathValid() const;
97 void demoEdgesChanged();
98 void enableLauncherWhileLockedChanged();
99 void enableIndicatorsWhileLockedChanged();
100 void backgroundFileChanged();
101 void statsWelcomeScreenChanged();
102 void passwordDisplayHintChanged();
103 void failedLoginsChanged();
104 void hereEnabledChanged();
105 void hereLicensePathChanged();
108 void onPropertiesChanged(const QString &user, const QString &interface, const QStringList &changed);
109 void onMaybeChanged(const QString &user);
112 void updateDemoEdges(bool async = true);
113 void updateEnableLauncherWhileLocked(bool async = true);
114 void updateEnableIndicatorsWhileLocked(bool async = true);
115 void updateBackgroundFile(bool async = true);
116 void updateMouseCursorSpeed();
117 void updateTouchpadCursorSpeed();
118 void updateStatsWelcomeScreen(bool async = true);
119 void updatePasswordDisplayHint(bool async = true);
120 void updateFailedLogins(bool async = true);
121 void updateHereEnabled(bool async = true);
122 void updateHereLicensePath(bool async = true);
124 AccountsServiceDBusAdaptor *m_service;
125 QDBusInterface *m_unityInput;
128 bool m_enableLauncherWhileLocked;
129 bool m_enableIndicatorsWhileLocked;
130 QString m_backgroundFile;
131 bool m_statsWelcomeScreen;
132 PasswordDisplayHint m_passwordDisplayHint;
135 QString m_hereLicensePath;
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list