@@ -66,6 +66,8 @@ QVariant ApplicationManager::data(const QModelIndex& index, int role) const {
66 return app->state();
66 return app->state();
67 case RoleFocused:
67 case RoleFocused:
68 return app->focused();
68 return app->focused();
70+ return app->screenshot();
70 return QVariant();
72 return QVariant();
@@ -78,7 +80,9 @@ ApplicationInfo *ApplicationManager::get(int row) const {
80ApplicationInfo *ApplicationManager::findApplication(const QString &appId) const {
82ApplicationInfo *ApplicationManager::findApplication(const QString &appId) const {
83+ qDebug() << "findapp called";
81 for (ApplicationInfo *app : m_runningApplications) {
84 for (ApplicationInfo *app : m_runningApplications) {
85+ qDebug() << "searching app"<< app->appId();
82 if (app->appId() == appId) {
86 if (app->appId() == appId) {
83 return app;
87 return app;
@@ -87,8 +91,10 @@ ApplicationInfo *ApplicationManager::findApplication(const QString &appId) const
89void ApplicationManager::add(ApplicationInfo *application) {
93void ApplicationManager::add(ApplicationInfo *application) {
94+ qDebug() << "add() " << application->appId();
90− if (!application)
95+ if (!application) {
93 beginInsertRows(QModelIndex(), m_runningApplications.size(), m_runningApplications.size());
99 beginInsertRows(QModelIndex(), m_runningApplications.size(), m_runningApplications.size());
94 m_runningApplications.append(application);
100 m_runningApplications.append(application);
@@ -207,7 +213,9 @@ void ApplicationManager::updateScreenshot(const QString &appId)
216+ qDebug() << "setting new screenshot" << application->screenshot() << application;
210 application->setScreenshot(QString("image://application/%1/%2").arg(appId).arg(QDateTime::currentMSecsSinceEpoch()));
217 application->setScreenshot(QString("image://application/%1/%2").arg(appId).arg(QDateTime::currentMSecsSinceEpoch()));
218+ qDebug() << "set new screenshot" << application->screenshot();
211 QModelIndex appIndex = index(idx);
219 QModelIndex appIndex = index(idx);
212 Q_EMIT dataChanged(appIndex, appIndex, QVector<int>() << RoleScreenshot);
220 Q_EMIT dataChanged(appIndex, appIndex, QVector<int>() << RoleScreenshot);
@@ -272,7 +280,7 @@ bool ApplicationManager::focusApplication(const QString &appId)
273void ApplicationManager::activateApplication(const QString &appId)
281void ApplicationManager::activateApplication(const QString &appId)
275− QMetaObject::invokeMethod(this, "requestFocus", Qt::QueuedConnection, Q_ARG(QString, appId));
283+ QMetaObject::invokeMethod(this, "focusRequested", Qt::QueuedConnection, Q_ARG(QString, appId));
278void ApplicationManager::unfocusCurrentApplication()
286void ApplicationManager::unfocusCurrentApplication()
@@ -333,6 +341,7 @@ void ApplicationManager::buildListOfAvailableApplications()
333 application->setName("Phone");
341 application->setName("Phone");
334 application->setIcon(QUrl("phone"));
342 application->setIcon(QUrl("phone"));
335 application->setStage(ApplicationInfo::SideStage);
343 application->setStage(ApplicationInfo::SideStage);
344+ application->setScreenshot(QString("image://application/%1/123456789").arg(application->appId()));
336 generateQmlStrings(application);
345 generateQmlStrings(application);
337 m_availableApplications.append(application);
346 m_availableApplications.append(application);
@@ -341,6 +350,7 @@ void ApplicationManager::buildListOfAvailableApplications()
341 application->setName("Camera");
350 application->setName("Camera");
342 application->setIcon(QUrl("camera"));
351 application->setIcon(QUrl("camera"));
343 application->setFullscreen(true);
352 application->setFullscreen(true);
353+ application->setScreenshot(QUrl("image://application/phone/123456789"));
344 generateQmlStrings(application);
354 generateQmlStrings(application);
345 m_availableApplications.append(application);
355 m_availableApplications.append(application);
@@ -348,6 +358,7 @@ void ApplicationManager::buildListOfAvailableApplications()
348 application->setAppId("gallery-app");
358 application->setAppId("gallery-app");
349 application->setName("Gallery");
359 application->setName("Gallery");
350 application->setIcon(QUrl("gallery"));
360 application->setIcon(QUrl("gallery"));
361+ application->setScreenshot(QUrl("image://application/phone/123456789"));
351 generateQmlStrings(application);
362 generateQmlStrings(application);
352 m_availableApplications.append(application);
363 m_availableApplications.append(application);
@@ -356,6 +367,7 @@ void ApplicationManager::buildListOfAvailableApplications()
356 application->setName("Facebook");
367 application->setName("Facebook");
357 application->setIcon(QUrl("facebook"));
368 application->setIcon(QUrl("facebook"));
358 application->setStage(ApplicationInfo::SideStage);
369 application->setStage(ApplicationInfo::SideStage);
370+ application->setScreenshot(QUrl("image://application/phone/123456789"));
359 generateQmlStrings(application);
371 generateQmlStrings(application);
360 m_availableApplications.append(application);
372 m_availableApplications.append(application);
@@ -363,6 +375,7 @@ void ApplicationManager::buildListOfAvailableApplications()
363 application->setAppId("webbrowser-app");
375 application->setAppId("webbrowser-app");
364 application->setName("Browser");
376 application->setName("Browser");
365 application->setIcon(QUrl("browser"));
377 application->setIcon(QUrl("browser"));
378+ application->setScreenshot(QUrl("image://application/phone/123456789"));
366 generateQmlStrings(application);
379 generateQmlStrings(application);
367 m_availableApplications.append(application);
380 m_availableApplications.append(application);
@@ -371,6 +384,7 @@ void ApplicationManager::buildListOfAvailableApplications()
371 application->setName("Twitter");
384 application->setName("Twitter");
372 application->setIcon(QUrl("twitter"));
385 application->setIcon(QUrl("twitter"));
373 application->setStage(ApplicationInfo::SideStage);
386 application->setStage(ApplicationInfo::SideStage);
387+ application->setScreenshot(QUrl("image://application/phone/123456789"));
374 generateQmlStrings(application);
388 generateQmlStrings(application);
375 m_availableApplications.append(application);
389 m_availableApplications.append(application);
@@ -378,6 +392,7 @@ void ApplicationManager::buildListOfAvailableApplications()
378 application->setAppId("gmail-webapp");
392 application->setAppId("gmail-webapp");
379 application->setName("GMail");
393 application->setName("GMail");
380 application->setIcon(QUrl("gmail"));
394 application->setIcon(QUrl("gmail"));
395+ application->setScreenshot(QUrl("image://application/phone/123456789"));
381 m_availableApplications.append(application);
396 m_availableApplications.append(application);
383 application = new ApplicationInfo(this);
398 application = new ApplicationInfo(this);
@@ -385,6 +400,7 @@ void ApplicationManager::buildListOfAvailableApplications()
385 application->setName("Weather");
400 application->setName("Weather");
386 application->setIcon(QUrl("weather"));
401 application->setIcon(QUrl("weather"));
387 application->setStage(ApplicationInfo::SideStage);
402 application->setStage(ApplicationInfo::SideStage);
403+ application->setScreenshot(QUrl("image://application/phone/123456789"));
388 generateQmlStrings(application);
404 generateQmlStrings(application);
389 m_availableApplications.append(application);
405 m_availableApplications.append(application);
@@ -393,6 +409,7 @@ void ApplicationManager::buildListOfAvailableApplications()
393 application->setName("Notepad");
409 application->setName("Notepad");
394 application->setIcon(QUrl("notepad"));
410 application->setIcon(QUrl("notepad"));
395 application->setStage(ApplicationInfo::SideStage);
411 application->setStage(ApplicationInfo::SideStage);
412+ application->setScreenshot(QUrl("image://application/phone/123456789"));
396 m_availableApplications.append(application);
413 m_availableApplications.append(application);
398 application = new ApplicationInfo(this);
415 application = new ApplicationInfo(this);
@@ -400,6 +417,7 @@ void ApplicationManager::buildListOfAvailableApplications()
400 application->setName("Calendar");
417 application->setName("Calendar");
401 application->setIcon(QUrl("calendar"));
418 application->setIcon(QUrl("calendar"));
402 application->setStage(ApplicationInfo::SideStage);
419 application->setStage(ApplicationInfo::SideStage);
420+ application->setScreenshot(QUrl("image://application/phone/123456789"));
403 m_availableApplications.append(application);
421 m_availableApplications.append(application);
405 application = new ApplicationInfo(this);
423 application = new ApplicationInfo(this);
@@ -407,18 +425,21 @@ void ApplicationManager::buildListOfAvailableApplications()
407 application->setName("Media Player");
425 application->setName("Media Player");
408 application->setIcon(QUrl("mediaplayer-app"));
426 application->setIcon(QUrl("mediaplayer-app"));
409 application->setFullscreen(true);
427 application->setFullscreen(true);
428+ application->setScreenshot(QUrl("image://application/phone/123456789"));
410 m_availableApplications.append(application);
429 m_availableApplications.append(application);
412 application = new ApplicationInfo(this);
431 application = new ApplicationInfo(this);
413 application->setAppId("evernote");
432 application->setAppId("evernote");
414 application->setName("Evernote");
433 application->setName("Evernote");
415 application->setIcon(QUrl("evernote"));
434 application->setIcon(QUrl("evernote"));
435+ application->setScreenshot(QUrl("image://application/phone/123456789"));
416 m_availableApplications.append(application);
436 m_availableApplications.append(application);
418 application = new ApplicationInfo(this);
438 application = new ApplicationInfo(this);
419 application->setAppId("map");
439 application->setAppId("map");
420 application->setName("Map");
440 application->setName("Map");
421 application->setIcon(QUrl("map"));
441 application->setIcon(QUrl("map"));
442+ application->setScreenshot(QUrl("image://application/phone/123456789"));
422 generateQmlStrings(application);
443 generateQmlStrings(application);
423 m_availableApplications.append(application);
444 m_availableApplications.append(application);