diff --git a/0001-Fix-thumbnails-for-mimetype-groups.patch b/0001-Fix-thumbnails-for-mimetype-groups.patch index db30eea..b752fd1 100644 --- a/0001-Fix-thumbnails-for-mimetype-groups.patch +++ b/0001-Fix-thumbnails-for-mimetype-groups.patch @@ -1,7 +1,7 @@ -From c372f9d634fa61aff5d4df6700ed294433df913b Mon Sep 17 00:00:00 2001 +From ae87a7d6999fc6ad90ab300dd8ea0c9c68c02bd4 Mon Sep 17 00:00:00 2001 From: Maarten De Meyer Date: Mon, 8 Sep 2014 23:58:55 +0200 -Subject: [PATCH] Fix thumbnails for mimetype groups. +Subject: [PATCH 1/2] Fix thumbnails for mimetype groups. KService::mimeTypes cannot handle mimetype groups. ex: text/* Go back to KService::serviceTypes and remove 'ThumbCreator' entries. @@ -12,7 +12,7 @@ REVIEW: 119958 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/widgets/previewjob.cpp b/src/widgets/previewjob.cpp -index 55a3fb7..c8ea2b7 100644 +index 55a3fb7..ca47934 100644 --- a/src/widgets/previewjob.cpp +++ b/src/widgets/previewjob.cpp @@ -268,20 +268,25 @@ void PreviewJobPrivate::startPreview() @@ -20,7 +20,7 @@ index 55a3fb7..c8ea2b7 100644 } foreach (const QString &protocol, protocols) { - const QStringList mtypes = (*it)->mimeTypes(); -+ // We cannot use mimeTypes() here, it doesn't support groups. text/* ++ // We cannot use mimeTypes() here, it doesn't support groups such as: text/* + const QStringList mtypes = (*it)->serviceTypes(); // Add supported mimetype for this protocol QStringList &_ms = m_remoteProtocolPlugins[protocol]; diff --git a/0002-Fix-relative-paths-being-turned-into-http-urls-by-fr.patch b/0002-Fix-relative-paths-being-turned-into-http-urls-by-fr.patch new file mode 100644 index 0000000..f2b08aa --- /dev/null +++ b/0002-Fix-relative-paths-being-turned-into-http-urls-by-fr.patch @@ -0,0 +1,77 @@ +From 5a5aa4b1786e793f457ad5a88a4e49d7469a92fa Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Tinkl?= +Date: Tue, 9 Sep 2014 22:49:27 +0200 +Subject: [PATCH 2/2] Fix relative paths being turned into http urls by + fromUserInput. + +Reviewed-By: (well, written by) David Faure. +--- + src/filewidgets/kfilewidget.cpp | 24 ++++++++++++++++++++---- + 1 file changed, 20 insertions(+), 4 deletions(-) + +diff --git a/src/filewidgets/kfilewidget.cpp b/src/filewidgets/kfilewidget.cpp +index 42320e3..58dd92e 100644 +--- a/src/filewidgets/kfilewidget.cpp ++++ b/src/filewidgets/kfilewidget.cpp +@@ -325,6 +325,22 @@ static bool containsProtocolSection(const QString &string) + return false; + } + ++// this string-to-url conversion function handles relative paths, full paths and URLs ++// without the http-prepending that QUrl::fromUserInput does. ++static QUrl urlFromString(const QString& str) ++{ ++ if (QDir::isAbsolutePath(str)) { ++ return QUrl::fromLocalFile(str); ++ } ++ QUrl url(str); ++ if (url.isRelative()) { ++ url.clear(); ++ url.setPath(str); ++ } ++ return url; ++} ++ ++ + KFileWidget::KFileWidget(const QUrl &_startDir, QWidget *parent) + : QWidget(parent), d(new KFileWidgetPrivate(this)) + { +@@ -909,7 +925,7 @@ void KFileWidget::slotOk() + containsProtocolSection(locationEditCurrentText))) { + + QString fileName; +- QUrl url = QUrl::fromUserInput(locationEditCurrentText); ++ QUrl url = urlFromString(locationEditCurrentText); + if (d->operationMode == Opening) { + KIO::StatJob *statJob = KIO::stat(url, KIO::HideProgressInfo); + KJobWidgets::setWindow(statJob, this); +@@ -1447,7 +1463,7 @@ void KFileWidgetPrivate::_k_urlEntered(const QUrl &url) + + bool blocked = locationEdit->blockSignals(true); + if (keepLocation) { +- QUrl currentUrl = QUrl::fromUserInput(filename); ++ QUrl currentUrl = urlFromString(filename); + locationEdit->changeUrl(0, QIcon::fromTheme(KIO::iconNameForUrl(currentUrl)), currentUrl); + locationEdit->lineEdit()->setModified(true); + } +@@ -1494,7 +1510,7 @@ void KFileWidgetPrivate::_k_enterUrl(const QString &url) + { + // qDebug(); + +- _k_enterUrl(QUrl::fromUserInput(KUrlCompletion::replacedPath(url, true, true))); ++ _k_enterUrl(urlFromString(KUrlCompletion::replacedPath(url, true, true))); + } + + bool KFileWidgetPrivate::toOverwrite(const QUrl &url) +@@ -1677,7 +1693,7 @@ QList KFileWidgetPrivate::tokenize(const QString &line) const + urls.append(u); + } + } else { +- urls << QUrl::fromUserInput(line); ++ urls << QUrl::fromLocalFile(line); + } + + return urls; +-- +2.1.0 + diff --git a/kio.changes b/kio.changes index e2620da..49844c0 100644 --- a/kio.changes +++ b/kio.changes @@ -2,10 +2,17 @@ Tue Sep 9 09:49:34 UTC 2014 - hrvoje.senjan@gmail.com - Update to 5.2.0 + * KIO/KService: now follows the mime-apps spec, for better + interoperability with gio when it comes to the user's + preferred and default apps. + * KIO: new classes EmptyTrashJob and RestoreJob + * KIO: new functions isClipboardDataCut and setClipboardDataCut. * For more details please see: http://kde.org/announcements/kde-frameworks-5.2.php - Added 0001-Fix-thumbnails-for-mimetype-groups.patch, fixes thumbnail generation for mimetypes with wildcard usage +- 0002-Fix-relative-paths-being-turned-into-http-urls-by-fr.patch, + fixes filedialog appening 'http://' on directory change ------------------------------------------------------------------- Sat Aug 2 10:20:18 UTC 2014 - hrvoje.senjan@gmail.com diff --git a/kio.spec b/kio.spec index 7016542..e738dc5 100644 --- a/kio.spec +++ b/kio.spec @@ -68,6 +68,8 @@ Source: http://download.kde.org/stable/frameworks/%{version}/%{name}-%{v Source1: baselibs.conf # PATCH-FIX-UPSTREAM 0001-Fix-thumbnails-for-mimetype-groups.patch -- https://git.reviewboard.kde.org/r/119958/ Patch0: 0001-Fix-thumbnails-for-mimetype-groups.patch +# PATCH-FIX-UPSTREAM 0002-Fix-relative-paths-being-turned-into-http-urls-by-fr.patch +Patch1: 0002-Fix-relative-paths-being-turned-into-http-urls-by-fr.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -98,6 +100,7 @@ Development files. %prep %setup -q %patch0 -p1 +%patch1 -p1 %build %cmake_kf5 -d build