git » plasma-desktop.git » commit fe9f09e

add patches for FS#44437

author Felix Yan
2015-04-03 08:29:10 UTC
committer Felix Yan
2015-04-03 08:29:10 UTC
parent f199b13ba035e2f320649ebaec3d88272afde0fb

add patches for FS#44437

9ba1ef4777aae9a2492f9960d5fc46b3a6415d85.patch +63 -0
PKGBUILD +11 -3
aa08cd42a470af7a10f34cc9dbe7aefd0057bb35.patch +66 -0

diff --git a/9ba1ef4777aae9a2492f9960d5fc46b3a6415d85.patch b/9ba1ef4777aae9a2492f9960d5fc46b3a6415d85.patch
new file mode 100644
index 0000000..be85aaa
--- /dev/null
+++ b/9ba1ef4777aae9a2492f9960d5fc46b3a6415d85.patch
@@ -0,0 +1,63 @@
+From: Marco Martin <notmart@gmail.com>
+Date: Thu, 02 Apr 2015 12:25:56 +0000
+Subject: iexplicitly fallback to unknown icon
+X-Git-Url: http://quickgit.kde.org/?p=plasma-desktop.git&a=commitdiff&h=9ba1ef4777aae9a2492f9960d5fc46b3a6415d85
+---
+iexplicitly fallback to unknown icon
+
+as in kicker, we have to manually fallback now
+BUG:345740
+---
+
+
+--- a/applets/kickoff/core/applicationmodel.cpp
++++ b/applets/kickoff/core/applicationmodel.cpp
+@@ -149,7 +149,7 @@
+             }
+ 
+             AppNode *newnode = new AppNode();
+-            newnode->icon = QIcon::fromTheme(p->icon());
++            newnode->icon = QIcon::fromTheme(p->icon(), QIcon::fromTheme("unknown"));
+             newnode->appName = p->name();
+             newnode->genericName = p->genericName();
+             newnode->desktopEntry = p->entryPath();
+@@ -264,7 +264,7 @@
+ 
+         AppNode *newnode = new AppNode();
+         newnode->iconName = icon;
+-        newnode->icon = QIcon::fromTheme(icon);
++        newnode->icon = QIcon::fromTheme(icon, QIcon::fromTheme("unknown"));
+         newnode->appName = appName;
+         newnode->genericName = genericName;
+         newnode->relPath = relPath;
+
+--- a/applets/kickoff/core/models.cpp
++++ b/applets/kickoff/core/models.cpp
+@@ -77,7 +77,7 @@
+         item = new QStandardItem;
+         KDesktopFile desktopFile(url.toLocalFile());
+         item->setText(QFileInfo(urlString.mid(0, urlString.lastIndexOf('.'))).completeBaseName());
+-        item->setIcon(QIcon::fromTheme(desktopFile.readIcon()));
++        item->setIcon(QIcon::fromTheme(desktopFile.readIcon(), QIcon::fromTheme("unknown")));
+ 
+         //FIXME: desktopUrl is a hack around borkage in KRecentDocuments which
+         //       stores a path in the URL field!
+@@ -107,7 +107,7 @@
+ 
+         item->setText(basename);
+         //FIXME
+-//         item->setIcon(QIcon::fromTheme(KMimeType::iconNameForUrl(url)));
++//         item->setIcon(QIcon::fromTheme(KMimeType::iconNameForUrl(url), QIcon::fromTheme("unknown")));
+         item->setData(url.url(), Kickoff::UrlRole);
+         item->setData(subTitle, Kickoff::SubTitleRole);
+ 
+@@ -150,7 +150,7 @@
+     QString appName = service->name();
+     bool nameFirst = displayOrder == NameBeforeDescription;
+     appItem->setText(nameFirst || genericName.isEmpty() ? appName : genericName);
+-    appItem->setIcon(QIcon::fromTheme(service->icon()));
++    appItem->setIcon(QIcon::fromTheme(service->icon(), QIcon::fromTheme("unknown")));
+     appItem->setData(service->entryPath(), Kickoff::UrlRole);
+ 
+     if (nameFirst) {
+
diff --git a/PKGBUILD b/PKGBUILD
index a4fabd2..ae4d526 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,7 +4,7 @@
 
 pkgname=plasma-desktop
 pkgver=5.2.2
-pkgrel=1
+pkgrel=2
 pkgdesc='KDE Plasma Desktop'
 arch=('i686' 'x86_64')
 url='https://www.kde.org/workspaces/plasmadesktop/'
@@ -18,11 +18,19 @@ optdepends=('baloo-frameworks: system indexing'
 conflicts=('kdebase-workspace' 'kdebase-kdepasswd')
 install="${pkgname}.install"
 groups=('plasma')
-source=("http://download.kde.org/stable/plasma/${pkgver}/$pkgname-$pkgver.tar.xz")
-md5sums=('dc5e656b26d31bda9d0504b3df2a5b18')
+source=("http://download.kde.org/stable/plasma/${pkgver}/$pkgname-$pkgver.tar.xz"
+        aa08cd42a470af7a10f34cc9dbe7aefd0057bb35.patch
+        9ba1ef4777aae9a2492f9960d5fc46b3a6415d85.patch)
+md5sums=('dc5e656b26d31bda9d0504b3df2a5b18'
+         '9c169d282f6a96fbde0fe510de20a603'
+         'beba1fbf46da6463dea6565b63370175')
 
 prepare() {
   mkdir build
+
+  cd $pkgname-$pkgver
+  patch -p1 -i ../aa08cd42a470af7a10f34cc9dbe7aefd0057bb35.patch
+  patch -p1 -i ../9ba1ef4777aae9a2492f9960d5fc46b3a6415d85.patch
 }
 
 build() {
diff --git a/aa08cd42a470af7a10f34cc9dbe7aefd0057bb35.patch b/aa08cd42a470af7a10f34cc9dbe7aefd0057bb35.patch
new file mode 100644
index 0000000..5c8e49e
--- /dev/null
+++ b/aa08cd42a470af7a10f34cc9dbe7aefd0057bb35.patch
@@ -0,0 +1,66 @@
+From: Eike Hein <hein@kde.org>
+Date: Wed, 01 Apr 2015 13:49:30 +0000
+Subject: Specify explicit fallbacks.
+X-Git-Url: http://quickgit.kde.org/?p=plasma-desktop.git&a=commitdiff&h=aa08cd42a470af7a10f34cc9dbe7aefd0057bb35
+---
+Specify explicit fallbacks.
+---
+
+
+--- a/applets/kicker/plugin/appsmodel.cpp
++++ b/applets/kicker/plugin/appsmodel.cpp
+@@ -50,7 +50,7 @@
+     bool flat, int appNameFormat)
+ {
+     m_name = group->caption();
+-    m_icon = QIcon::fromTheme(group->icon());
++    m_icon = QIcon::fromTheme(group->icon(), QIcon::fromTheme("unknown"));
+     AppsModel* model = new AppsModel(group->entryPath(), flat, parentModel);
+     model->setAppletInterface(parentModel->appletInterface());
+     model->setAppNameFormat(appNameFormat);
+@@ -64,7 +64,7 @@
+ : m_service(service)
+ {
+     m_name = name;
+-    m_icon = QIcon::fromTheme(service->icon());
++    m_icon = QIcon::fromTheme(service->icon(), QIcon::fromTheme("unknown"));
+     m_service = service;
+ }
+ 
+
+--- a/applets/kicker/plugin/recentdocsmodel.cpp
++++ b/applets/kicker/plugin/recentdocsmodel.cpp
+@@ -34,7 +34,7 @@
+     const QString &url, const QString &desktopPath)
+ {
+     m_name = name;
+-    m_icon = QIcon::fromTheme(icon);
++    m_icon = QIcon::fromTheme(icon, QIcon::fromTheme("unknown"));
+     m_url = url;
+     m_desktopPath = desktopPath;
+ }
+
+--- a/applets/kicker/plugin/rootmodel.cpp
++++ b/applets/kicker/plugin/rootmodel.cpp
+@@ -29,7 +29,7 @@
+     AbstractModel *model, AbstractModel *parentModel)
+ {
+     m_name = name;
+-    m_icon = QIcon::fromTheme(icon);
++    m_icon = QIcon::fromTheme(icon, QIcon::fromTheme("unknown"));
+     m_model = model;
+     QObject::connect(parentModel, SIGNAL(refreshing()), m_model, SLOT(deleteLater()));
+ }
+
+--- a/applets/kicker/plugin/systemmodel.cpp
++++ b/applets/kicker/plugin/systemmodel.cpp
+@@ -36,7 +36,7 @@
+ {
+     m_action = action;
+     m_name = name;
+-    m_icon = QIcon::fromTheme(icon);
++    m_icon = QIcon::fromTheme(icon, QIcon::fromTheme("unknown"));
+ }
+ 
+ SystemModel::SystemModel(QObject *parent) : AbstractModel(parent)
+