[arch-commits] Commit in kio/trunk (custom-folder-icons.patch)
Antonio Rojas
arojas at archlinux.org
Fri Aug 14 22:55:58 UTC 2015
Date: Saturday, August 15, 2015 @ 00:55:58
Author: arojas
Revision: 243718
Add patch
Added:
kio/trunk/custom-folder-icons.patch
---------------------------+
custom-folder-icons.patch | 94 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 94 insertions(+)
Added: custom-folder-icons.patch
===================================================================
--- custom-folder-icons.patch (rev 0)
+++ custom-folder-icons.patch 2015-08-14 22:55:58 UTC (rev 243718)
@@ -0,0 +1,94 @@
+From: Emmanuel Pescosta <emmanuelpescosta099 at gmail.com>
+Date: Tue, 11 Aug 2015 18:13:52 +0000
+Subject: Show custom folder icons again
+X-Git-Url: http://quickgit.kde.org/?p=kio.git&a=commitdiff&h=d8aafbc37daab3cd62ee77430a55b3d72ccc12e0
+---
+Show custom folder icons again
+
+Set mimetype as known when we assign the mime type for inode/directory
+
+This bug was introduced by commit 46cd152f
+
+BUG: 350612
+FIXED-IN: 5.14
+REVIEW: 124690
+---
+
+
+--- a/autotests/kfileitemtest.cpp
++++ b/autotests/kfileitemtest.cpp
+@@ -25,6 +25,8 @@
+ #include <qtemporarydir.h>
+ #include <qtemporaryfile.h>
+ #include <kuser.h>
++#include <kdesktopfile.h>
++#include <kconfiggroup.h>
+
+ QTEST_MAIN(KFileItemTest)
+
+@@ -472,6 +474,25 @@
+ QCOMPARE(fileItem.currentMimeType().name(), udsMimeType);
+ }
+
++void KFileItemTest::testIconNameForCustomFolderIcons()
++{
++ // Custom folder icons should be displayed (bug 350612)
++
++ const QString iconName = QStringLiteral("folder-music");
++
++ QTemporaryDir tempDir;
++ const QUrl url = QUrl::fromLocalFile(tempDir.path());
++ KDesktopFile cfg(tempDir.path() + QString::fromLatin1("/.directory"));
++ cfg.desktopGroup().writeEntry("Icon", iconName);
++ cfg.sync();
++
++ KIO::UDSEntry entry;
++ entry.insert(KIO::UDSEntry::UDS_FILE_TYPE, S_IFDIR);
++ KFileItem fileItem(entry, url);
++
++ QCOMPARE(fileItem.iconName(), iconName);
++}
++
+ #ifndef Q_OS_WIN // user/group/other write permissions are not handled on windows
+
+ void KFileItemTest::testIsReadable_data()
+
+--- a/autotests/kfileitemtest.h
++++ b/autotests/kfileitemtest.h
+@@ -41,6 +41,7 @@
+ void testMimetypeForRemoteFolderWithFileType();
+ void testCurrentMimetypeForRemoteFolder();
+ void testCurrentMimetypeForRemoteFolderWithFileType();
++ void testIconNameForCustomFolderIcons();
+
+ #ifndef Q_OS_WIN
+ void testIsReadable_data();
+
+--- a/src/core/kfileitem.cpp
++++ b/src/core/kfileitem.cpp
+@@ -732,15 +732,15 @@
+ QMimeDatabase db;
+ if (isDir()) {
+ d->m_mimeType = db.mimeTypeForName("inode/directory");
+- return d->m_mimeType;
+- }
+- bool isLocalUrl;
+- const QUrl url = mostLocalUrl(&isLocalUrl);
+- d->m_mimeType = db.mimeTypeForUrl(url);
+- // was: d->m_mimeType = KMimeType::findByUrl( url, d->m_fileMode, isLocalUrl );
+- // => we are no longer using d->m_fileMode for remote URLs.
+- Q_ASSERT(d->m_mimeType.isValid());
+- //qDebug() << d << "finding final mimetype for" << url << ":" << d->m_mimeType.name();
++ } else {
++ bool isLocalUrl;
++ const QUrl url = mostLocalUrl(&isLocalUrl);
++ d->m_mimeType = db.mimeTypeForUrl(url);
++ // was: d->m_mimeType = KMimeType::findByUrl( url, d->m_fileMode, isLocalUrl );
++ // => we are no longer using d->m_fileMode for remote URLs.
++ Q_ASSERT(d->m_mimeType.isValid());
++ //qDebug() << d << "finding final mimetype for" << url << ":" << d->m_mimeType.name();
++ }
+ d->m_bMimeTypeKnown = true;
+ }
+
+
More information about the arch-commits
mailing list