From 91a3d7a92379dd6ae371cea05e4c3b421c240d7b Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Thu, 14 May 2015 11:26:56 -0500 Subject: [PATCH] 4.14.8 --- .gitignore | 2 +- ...-syncing-from-KFilePlacesModel-and-u.patch | 474 ------------------ kdelibs.spec | 11 +- sources | 2 +- 4 files changed, 8 insertions(+), 481 deletions(-) delete mode 100644 0015-Remove-bookmarks-syncing-from-KFilePlacesModel-and-u.patch diff --git a/.gitignore b/.gitignore index a3ef865..d7e331a 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -/kdelibs-4.14.7.tar.xz +/kdelibs-4.14.8.tar.xz diff --git a/0015-Remove-bookmarks-syncing-from-KFilePlacesModel-and-u.patch b/0015-Remove-bookmarks-syncing-from-KFilePlacesModel-and-u.patch deleted file mode 100644 index ff4cd42..0000000 --- a/0015-Remove-bookmarks-syncing-from-KFilePlacesModel-and-u.patch +++ /dev/null @@ -1,474 +0,0 @@ -From 5c0a31a2f2a46aa44b8c34baae67b6951b2abcaf Mon Sep 17 00:00:00 2001 -From: Emmanuel Pescosta -Date: Wed, 29 Apr 2015 16:02:02 +0200 -Subject: [PATCH 15/15] Remove bookmarks syncing from KFilePlacesModel and use - user-places.xbel only. - -FIXED-IN: 4.14.8 -BUG: 345174 -REVIEW: 123568 ---- - kfile/CMakeLists.txt | 1 - - kfile/kfileplacesmodel.cpp | 21 +-- - kfile/kfileplacessharedbookmarks.cpp | 276 ----------------------------------- - kfile/kfileplacessharedbookmarks_p.h | 56 ------- - 4 files changed, 3 insertions(+), 351 deletions(-) - delete mode 100644 kfile/kfileplacessharedbookmarks.cpp - delete mode 100644 kfile/kfileplacessharedbookmarks_p.h - -diff --git a/kfile/CMakeLists.txt b/kfile/CMakeLists.txt -index ceae140..e796908 100644 ---- a/kfile/CMakeLists.txt -+++ b/kfile/CMakeLists.txt -@@ -22,7 +22,6 @@ set(kfile_LIB_SRCS - kfilewidget.cpp - kfileplacesitem.cpp - kfileplacesmodel.cpp -- kfileplacessharedbookmarks.cpp - kfileplacesview.cpp - kfileplaceeditdialog.cpp - kfilepreviewgenerator.cpp -diff --git a/kfile/kfileplacesmodel.cpp b/kfile/kfileplacesmodel.cpp -index 24f95ad..a3ac9fb 100644 ---- a/kfile/kfileplacesmodel.cpp -+++ b/kfile/kfileplacesmodel.cpp -@@ -19,7 +19,6 @@ - */ - #include "kfileplacesmodel.h" - #include "kfileplacesitem_p.h" --#include "kfileplacessharedbookmarks_p.h" - - #ifdef _WIN32_WCE - #include "Windows.h" -@@ -61,10 +60,9 @@ - class KFilePlacesModel::Private - { - public: -- Private(KFilePlacesModel *self) : q(self), bookmarkManager(0), sharedBookmarks(0) {} -+ Private(KFilePlacesModel *self) : q(self), bookmarkManager(0) {} - ~Private() - { -- delete sharedBookmarks; - qDeleteAll(items); - } - -@@ -76,7 +74,6 @@ public: - - Solid::Predicate predicate; - KBookmarkManager *bookmarkManager; -- KFilePlacesSharedBookmarks * sharedBookmarks; - - void reloadAndSignal(); - QList loadBookmarkList(); -@@ -93,8 +90,8 @@ public: - KFilePlacesModel::KFilePlacesModel(QObject *parent) - : QAbstractItemModel(parent), d(new Private(this)) - { -- const QString file = KStandardDirs::locateLocal("data", "kfileplaces/bookmarks.xml"); -- d->bookmarkManager = KBookmarkManager::managerForFile(file, "kfilePlaces"); -+ const QString file = KStandardDirs().localxdgdatadir() + "user-places.xbel"; -+ d->bookmarkManager = KBookmarkManager::managerForExternalFile(file); - - // Let's put some places in there if it's empty. We have a corner case here: - // Given you have bookmarked some folders (which have been saved on -@@ -146,9 +143,6 @@ KFilePlacesModel::KFilePlacesModel(QObject *parent) - d->bookmarkManager->saveAs(file); - } - -- // create after, so if we have own places, they are added afterwards, in case of equal priorities -- d->sharedBookmarks = new KFilePlacesSharedBookmarks(d->bookmarkManager); -- - QString predicate("[[[[ StorageVolume.ignored == false AND [ StorageVolume.usage == 'FileSystem' OR StorageVolume.usage == 'Encrypted' ]]" - " OR " - "[ IS StorageAccess AND StorageDrive.driveType == 'Floppy' ]]" -@@ -632,8 +626,6 @@ bool KFilePlacesModel::dropMimeData(const QMimeData *data, Qt::DropAction action - return false; - } - -- d->sharedBookmarks->updateSharedBookmarks(); -- - d->reloadAndSignal(); - - return true; -@@ -661,8 +653,6 @@ void KFilePlacesModel::addPlace(const QString &text, const KUrl &url, - d->bookmarkManager->root().moveBookmark(bookmark, item->bookmark()); - } - -- d->sharedBookmarks->updateSharedBookmarks(); -- - d->reloadAndSignal(); - } - -@@ -684,8 +674,6 @@ void KFilePlacesModel::editPlace(const QModelIndex &index, const QString &text, - bookmark.setIcon(iconName); - bookmark.setMetaDataItem("OnlyInApp", appName); - -- d->sharedBookmarks->updateSharedBookmarks(); -- - d->reloadAndSignal(); - emit dataChanged(index, index); - } -@@ -703,7 +691,6 @@ void KFilePlacesModel::removePlace(const QModelIndex &index) const - if (bookmark.isNull()) return; - - d->bookmarkManager->root().deleteBookmark(bookmark); -- d->sharedBookmarks->updateSharedBookmarks(); - d->reloadAndSignal(); - } - -@@ -719,8 +706,6 @@ void KFilePlacesModel::setPlaceHidden(const QModelIndex &index, bool hidden) - - bookmark.setMetaDataItem("IsHidden", (hidden ? "true" : "false")); - -- d->sharedBookmarks->updateSharedBookmarks(); -- - d->reloadAndSignal(); - emit dataChanged(index, index); - } -diff --git a/kfile/kfileplacessharedbookmarks.cpp b/kfile/kfileplacessharedbookmarks.cpp -deleted file mode 100644 -index 5385d42..0000000 ---- a/kfile/kfileplacessharedbookmarks.cpp -+++ /dev/null -@@ -1,276 +0,0 @@ --/* This file is part of the KDE project -- Copyright (C) 2008 Norbert Frese -- -- This library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Library General Public -- License version 2 as published by the Free Software Foundation. -- -- This library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Library General Public License for more details. -- -- You should have received a copy of the GNU Library General Public License -- along with this library; see the file COPYING.LIB. If not, write to -- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -- Boston, MA 02110-1301, USA. -- --*/ -- --#include "kfileplacessharedbookmarks_p.h" -- --#include --#include --#include --#include --#include --#include --#include -- --//////////////// utility functions -- --static bool compareBookmarks(const KBookmark & bookmark1, const KBookmark & bookmark2) --{ -- return (bookmark1.url() == bookmark2.url() || bookmark1.text() == bookmark2.text()); --} -- --static bool deepCompareDomNodes(const QDomNode & node1, const QDomNode & node2) --{ -- -- // compare name and value -- if (node1.nodeName() != node2.nodeName() || node1.nodeValue() != node2.nodeValue()) -- return false; -- -- // recursively compare children -- const QDomNodeList node1Children = node1.childNodes(); -- const QDomNodeList node2Children = node2.childNodes(); -- -- if (node1Children.count () != node2Children.count ()) -- return false; -- -- for (int i=0; iroot(); -- KBookmark bookmark = root.first(); -- -- KBookmarkGroup sharedRoot = m_sharedBookmarkManager->root(); -- KBookmark sharedBookmark = sharedRoot.first(); -- -- bool dirty = false; -- -- while (!bookmark.isNull()) { -- //kDebug() << "importing" << bookmark.text(); -- -- // skip over system items -- if (bookmark.metaDataItem("isSystemItem") == "true") { -- bookmark = root.next(bookmark); -- continue; -- } -- -- // do the bookmarks match? -- if (!sharedBookmark.isNull() && compareBookmarks(bookmark, sharedBookmark)) { -- //kDebug() << "excat comparing: targetbk:\n" << nodeAsString(bookmark.internalElement()) << "\nsourcbk:\n" << nodeAsString(sharedBookmark.internalElement()); -- -- if (!exactCompareBookmarks(bookmark, sharedBookmark)) { -- KBookmark cloneTarget=bookmark; -- KBookmark cloneSource = sharedBookmark; -- -- sharedBookmark = sharedRoot.next(sharedBookmark); -- bookmark = root.next(bookmark); -- -- //kDebug() << "cloning" << cloneSource.text(); -- //kDebug() << "cloning: target=\n" << nodeAsString(cloneTarget.internalElement()) << "\n source:\n" << nodeAsString(cloneSource.internalElement()); -- -- cloneBookmarkContents(cloneTarget, cloneSource); -- dirty = true; -- continue; -- } else { -- //kDebug() << "keeping" << bookmark.text(); -- } -- sharedBookmark = sharedRoot.next(sharedBookmark); -- bookmark = root.next(bookmark); -- continue; -- } -- -- // they don't match -> remove -- //kDebug() << "removing" << bookmark.text(); -- KBookmark bookmarkToRemove = bookmark; -- bookmark = root.next(bookmark); -- root.deleteBookmark(bookmarkToRemove); -- -- dirty = true; -- } -- -- // append the remaining shared bookmarks -- while(!sharedBookmark.isNull()) { -- root.addBookmark(cloneBookmark(sharedBookmark)); -- sharedBookmark = sharedRoot.next(sharedBookmark); -- dirty = true; -- } -- -- return dirty; --} -- --bool KFilePlacesSharedBookmarks::exportSharedBookmarks() --{ -- KBookmarkGroup root = m_placesBookmarkManager->root(); -- KBookmark bookmark = root.first(); -- -- KBookmarkGroup sharedRoot = m_sharedBookmarkManager->root(); -- KBookmark sharedBookmark = sharedRoot.first(); -- -- bool dirty = false; -- -- // first check if they are the same -- int count=0; -- while (!bookmark.isNull()) { -- //kDebug() << "exporting..." << bookmark.text(); -- -- // skip over system items -- if (bookmark.metaDataItem("isSystemItem") == "true") { -- bookmark = root.next(bookmark); -- continue; -- } -- count++; -- -- // end of sharedBookmarks? -- if (sharedBookmark.isNull()) { -- dirty=true; -- break; -- } -- -- // do the bookmarks match? -- if (compareBookmarks(bookmark, sharedBookmark)) { -- if (!exactCompareBookmarks(bookmark, sharedBookmark)) { -- dirty = true; -- break; -- } -- } else { -- dirty=true; -- break; -- } -- sharedBookmark = sharedRoot.next(sharedBookmark); -- bookmark = root.next(bookmark); -- } -- -- //kDebug() << "dirty=" << dirty << " oldsize=" << bookmarkGroupSize(sharedRoot) << " count=" << count; -- -- if (bookmarkGroupSize(sharedRoot) != count) -- dirty=true; -- -- if (dirty) { -- emptyBookmarkGroup(sharedRoot); -- -- // append all bookmarks -- KBookmark bookmark = root.first(); -- -- while(!bookmark.isNull()) { -- -- if (bookmark.metaDataItem("isSystemItem") == "true") { -- bookmark = root.next(bookmark); -- continue; -- } -- -- sharedRoot.addBookmark(cloneBookmark(bookmark)); -- bookmark = root.next(bookmark); -- dirty = true; -- } -- } -- -- return dirty; -- --} -- --void KFilePlacesSharedBookmarks::slotSharedBookmarksChanged() --{ -- //kDebug() << "shared bookmarks changed"; -- bool dirty = integrateSharedBookmarks(); -- if (dirty) m_placesBookmarkManager->emitChanged(); --} -- --void KFilePlacesSharedBookmarks::updateSharedBookmarks() --{ -- //kDebug() << "places bookmarks changed"; -- bool dirty = exportSharedBookmarks(); -- if (dirty) m_sharedBookmarkManager->emitChanged(); --} -- --#include "kfileplacessharedbookmarks_p.moc" -diff --git a/kfile/kfileplacessharedbookmarks_p.h b/kfile/kfileplacessharedbookmarks_p.h -deleted file mode 100644 -index 654fe18..0000000 ---- a/kfile/kfileplacessharedbookmarks_p.h -+++ /dev/null -@@ -1,56 +0,0 @@ --/* This file is part of the KDE project -- Copyright (C) 2008 Norbert Frese -- -- This library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Library General Public -- License version 2 as published by the Free Software Foundation. -- -- This library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Library General Public License for more details. -- -- You should have received a copy of the GNU Library General Public License -- along with this library; see the file COPYING.LIB. If not, write to -- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -- Boston, MA 02110-1301, USA. -- --*/ -- --#ifndef KFILEPLACESSHAREDBOOKMARKS_P_H --#define KFILEPLACESSHAREDBOOKMARKS_P_H -- --#include --#include -- --/** -- * keeps the KFilePlacesModel bookmarks and the shared bookmark spec -- * shortcuts in sync -- */ --class KFilePlacesSharedBookmarks : public QObject --{ -- Q_OBJECT --public: -- -- KFilePlacesSharedBookmarks(KBookmarkManager * mgr); -- ~KFilePlacesSharedBookmarks() { /* delete m_sharedBookmarkManager; */} -- -- void updateSharedBookmarks(); -- --private: -- -- bool integrateSharedBookmarks(); -- bool exportSharedBookmarks(); -- -- KBookmarkManager *m_placesBookmarkManager; -- KBookmarkManager *m_sharedBookmarkManager; -- --private Q_SLOTS: -- -- void slotSharedBookmarksChanged(); --}; -- -- -- -- --#endif /*KFILEPLACESSHARED_P_H_*/ --- -1.9.3 - diff --git a/kdelibs.spec b/kdelibs.spec index caa2096..760e827 100644 --- a/kdelibs.spec +++ b/kdelibs.spec @@ -50,9 +50,9 @@ Summary: KDE Libraries # shipped with kde applications, version... -%global apps_version 15.04.0 -Version: 4.14.7 -Release: 5%{?dist} +%global apps_version 15.04.1 +Version: 4.14.8 +Release: 1%{?dist} Name: kdelibs Epoch: 6 @@ -192,7 +192,6 @@ Patch64: kdelibs-4.13.2-invokeTerminal.patch ## upstream # 4.14 branch -Patch115: 0015-Remove-bookmarks-syncing-from-KFilePlacesModel-and-u.patch # revert these commits for #https://bugs.kde.org/315578 @@ -457,7 +456,6 @@ sed -i -e "s|@@VERSION_RELEASE@@|%{version}-%{release}|" kio/kio/kprotocolmanage %patch64 -p1 -b .invokeTerminal # upstream patches -%patch115 -p1 -b .0015 %patch090 -p1 -R -b .return-not-break.-copy-paste-error %patch091 -p1 -R -b .coding-style-fixes.patch @@ -819,6 +817,9 @@ update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || : %changelog +* Thu May 14 2015 Rex Dieter 6:4.14.8-1 +- 4.14.8 + * Fri May 01 2015 Rex Dieter - 6:4.14.7-5 - drop cmake hacks - Added folders to left panel "Places" disappear (kde#345174) diff --git a/sources b/sources index d4b4185..f65ce28 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -31359eecc8543843a13b35a0c7004dc1 kdelibs-4.14.7.tar.xz +2f1993d0a3d165331098d1d4e0483bf8 kdelibs-4.14.8.tar.xz