@@ -0,0 +1,103 @@
1+#include "launcherbackend.h"
3+#include "applicationlistmodel.h"
5+LauncherBackend::LauncherBackend(QObject *parent):
9+ // TODO: load default pinned ones from default config, instead of hardcoding here...
12+ QLatin1String("phone-app.desktop") <<
13+ QLatin1String("camera-app.desktop") <<
14+ QLatin1String("gallery-app.desktop") <<
15+ QLatin1String("facebook-webapp.desktop") <<
16+ QLatin1String("webbrowser-app.desktop") <<
17+ QLatin1String("twitter-webapp.desktop") <<
18+ QLatin1String("gmail-webapp.desktop") <<
19+ QLatin1String("ubuntu-weather-app.desktop") <<
20+ QLatin1String("notes-app.desktop") <<
21+ QLatin1String("ubuntu-calendar-app.desktop");
24+LauncherBackend::~LauncherBackend()
29+QStringList LauncherBackend::favoriteApplications() const
31+ return m_favoriteApps;
34+void LauncherBackend::setFavoriteApplications(const QStringList &appIds)
36+ m_favoriteApps = appIds;
37+ // TODO: Cleanup pinned state from settings for apps not in list any more.
40+QString LauncherBackend::displayName(const QString &appId) const
42+ // TODO: get stuff from desktop files instead this hardcoded map
43+ QHash<QString, QString> map;
44+ map.insert("phone-app.desktop", "Phone");
45+ map.insert("camera-app.desktop", "Camera");
46+ map.insert("gallery-app.desktop", "Gallery");
47+ map.insert("facebook-webapp.desktop", "Facebook");
48+ map.insert("webbrowser-app.desktop", "Browser");
49+ map.insert("twitter-webapp.desktop", "Twitter");
50+ map.insert("gmail-webapp.desktop", "GMail");
51+ map.insert("ubuntu-weather-app.desktop", "Weather");
52+ map.insert("notes-app.desktop", "Notes");
53+ map.insert("ubuntu-calendar-app.desktop", "Calendar");
54+ return map.value(appId);
57+QString LauncherBackend::icon(const QString &appId) const
59+ // TODO: get stuff from desktop files instead this hardcoded map
60+ QHash<QString, QString> map;
61+ map.insert("phone-app.desktop", "phone-app");
62+ map.insert("camera-app.desktop", "camera");
63+ map.insert("gallery-app.desktop", "gallery");
64+ map.insert("facebook-webapp.desktop", "facebook");
65+ map.insert("webbrowser-app.desktop", "browser");
66+ map.insert("twitter-webapp.desktop", "twitter");
67+ map.insert("gmail-webapp.desktop", "gmail");
68+ map.insert("ubuntu-weather-app.desktop", "weather");
69+ map.insert("notes-app.desktop", "notepad");
70+ map.insert("ubuntu-calendar-app.desktop", "calendar");
71+ return map.value(appId);
74+bool LauncherBackend::isPinned(const QString &appId) const
76+ // TODO: return app's pinned state from settings
80+void LauncherBackend::setPinned(const QString &appId, bool pinned)
82+ // TODO: Store pinned state in settings.
85+QuickListModelInterface* LauncherBackend::quickList(const QString &appId) const
87+ // TODO: No clue where to get the quicklist from, but this is the place to return it.
91+int LauncherBackend::progress(const QString &appId) const
93+ // TODO: Return value for progress emblem.
94+ // TODO: emit progressChanged() when this value changes.
98+int LauncherBackend::count(const QString &appId) const
100+ // TODO: Return value for count emblem.
101+ // TODO: emit countChanged() when this value changes.