[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [discover] libdiscover/backends/PackageKitBackend: Fix build, adopt new AppStream API
From:       Aleix Pol <aleixpol () kde ! org>
Date:       2016-10-28 23:20:25
Message-ID: E1c0GRl-0007St-Vx () code ! kde ! org
[Download RAW message or body]

Git commit 89bcbe2770916652ffc6de5288c5303ebeb25b2a by Aleix Pol.
Committed on 28/10/2016 at 23:20.
Pushed by apol into branch 'master'.

Fix build, adopt new AppStream API

M  +19   -7    libdiscover/backends/PackageKitBackend/AppPackageKitResource.cpp

http://commits.kde.org/discover/89bcbe2770916652ffc6de5288c5303ebeb25b2a

diff --git a/libdiscover/backends/PackageKitBackend/AppPackageKitResource.cpp \
b/libdiscover/backends/PackageKitBackend/AppPackageKitResource.cpp index \
                029e1b8..2a04c17 100644
--- a/libdiscover/backends/PackageKitBackend/AppPackageKitResource.cpp
+++ b/libdiscover/backends/PackageKitBackend/AppPackageKitResource.cpp
@@ -20,6 +20,7 @@
 
 #include "AppPackageKitResource.h"
 #include <AppStreamQt/screenshot.h>
+#include <AppStreamQt/icon.h>
 #include <AppStreamQt/image.h>
 #include <AppStreamQt/release.h>
 #include <KLocalizedString>
@@ -50,10 +51,21 @@ QString AppPackageKitResource::longDescription()
 
 QVariant AppPackageKitResource::icon() const
 {
-    QIcon ret = m_appdata.icon();
-
-    if (ret.isNull()) {
+    QIcon ret;
+    const auto icons = m_appdata.icons();
+    if (icons.isEmpty()) {
         ret = QIcon::fromTheme(QStringLiteral("package-x-generic"));
+    } else foreach(const AppStream::Icon &icon, icons) {
+        switch(icon.kind()) {
+            case AppStream::Icon::KindLocal:
+                ret.addFile(icon.url().toLocalFile(), icon.size());
+                break;
+            case AppStream::Icon::KindCached:
+                ret.addFile(icon.url().toLocalFile(), icon.size());
+                break;
+            default:
+                break;
+        }
     }
 
     return ret;
@@ -139,13 +151,13 @@ static QUrl screenshot(const AppStream::Component& comp, \
AppStream::Image::Kind  
 QUrl AppPackageKitResource::screenshotUrl()
 {
-    return screenshot(m_appdata, AppStream::Image::Source);
+    return screenshot(m_appdata, AppStream::Image::KindSource);
 
 }
 
 QUrl AppPackageKitResource::thumbnailUrl()
 {
-    return screenshot(m_appdata, AppStream::Image::Thumbnail);
+    return screenshot(m_appdata, AppStream::Image::KindThumbnail);
 }
 
 void AppPackageKitResource::fetchScreenshots()
@@ -153,8 +165,8 @@ void AppPackageKitResource::fetchScreenshots()
     QList<QUrl> thumbnails, screenshots;
 
     Q_FOREACH (const AppStream::Screenshot &s, m_appdata.screenshots()) {
-        const QUrl thumbnail = imageOfKind(s.images(), AppStream::Image::Thumbnail);
-        const QUrl plain = imageOfKind(s.images(), AppStream::Image::Source);
+        const QUrl thumbnail = imageOfKind(s.images(), \
AppStream::Image::KindThumbnail); +        const QUrl plain = imageOfKind(s.images(), \
AppStream::Image::KindSource);  if (plain.isEmpty())
             qWarning() << "invalid screenshot for" << name();
 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic