28
29
UsersModelPrivate::UsersModelPrivate(UsersModel* parent)
31
QSettings settings(QDir::homePath() + "/.unity8-greeter-demo", QSettings::NativeFormat);
32
QStringList users = settings.value(QStringLiteral("users"), QStringList() << qgetenv("USER")).toStringList();
34
entries.reserve(users.count());
35
Q_FOREACH(const QString &user, users)
37
QString name = settings.value(user + "/name", user).toString();
38
entries.append({user, name, 0, 0, false, false, 0, 0});
32
QFileInfo demoFile(QDir::homePath() + "/.unity8-greeter-demo");
33
QString currentUser = g_get_user_name();
35
if (demoFile.exists()) {
36
QSettings settings(demoFile.filePath(), QSettings::NativeFormat);
37
QStringList users = settings.value(QStringLiteral("users"), QStringList() << currentUser).toStringList();
39
entries.reserve(users.count());
40
Q_FOREACH(const QString &user, users)
42
QString name = settings.value(user + "/name", user).toString();
43
entries.append({user, name, 0, 0, false, false, 0, 0});
46
// If we were using the actual liblightdm, we could just ask it
47
// for the user's real name. But we aren't. We *should* ask
48
// AccountsService for the real name, like liblightdm does internally,
49
// but this is close enough since AS and passwd are always in sync.
50
QString realName = QString::fromUtf8(g_get_real_name()); // gets name from passwd entry
51
if (realName == QStringLiteral("Unknown")) { // glib doesn't translate this string
54
entries.append({currentUser, realName, 0, 0, false, false, 0, 0});