Hrvoje Senjan 2015-08-18 16:14:41 +00:00 committed by Git OBS Bridge
parent 4e73267c21
commit 7e14b7ced9
3 changed files with 100 additions and 0 deletions

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Tue Aug 18 16:16:22 UTC 2015 - hrvoje.senjan@gmail.com
- Added show-custom-folder-icons-sgain.patch (kde#350612)
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Aug 4 19:20:31 UTC 2015 - hrvoje.senjan@gmail.com Tue Aug 4 19:20:31 UTC 2015 - hrvoje.senjan@gmail.com

View File

@ -75,6 +75,8 @@ Source: http://download.kde.org/stable/frameworks/%{_tar_path}/%{name}-%
Source1: baselibs.conf Source1: baselibs.conf
# PATCH-FIX-OPENSUSE kio_help-fallback-to-kde4-docs.patch -- allow kio_help to see into kde4 documentation, needed especially for khelpcenter5 # PATCH-FIX-OPENSUSE kio_help-fallback-to-kde4-docs.patch -- allow kio_help to see into kde4 documentation, needed especially for khelpcenter5
Patch0: kio_help-fallback-to-kde4-docs.patch Patch0: kio_help-fallback-to-kde4-docs.patch
# PATCH-FIX-UPSTREAM show-custom-folder-icons-sgain.patch
Patch1: show-custom-folder-icons-sgain.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description %description
@ -121,6 +123,7 @@ Development files.
%prep %prep
%setup -q %setup -q
%patch0 -p1 %patch0 -p1
%patch1 -p1
%build %build
%cmake_kf5 -d build %cmake_kf5 -d build

View File

@ -0,0 +1,92 @@
From: Emmanuel Pescosta <emmanuelpescosta099@gmail.com>
Date: Tue, 11 Aug 2015 18:13:52 +0000
Subject: Show custom folder icons again
---
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;
}