Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:42.3:Staging:C:DVD
akonadi-server
pass-source-collection-to-move-mails.diff
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File pass-source-collection-to-move-mails.diff of Package akonadi-server
From 2dc7fbf569ba3f7eeef98fb818d7af0820caf7a3 Mon Sep 17 00:00:00 2001 From: Martin Koller <kollix@aon.at> Date: Sat, 6 May 2017 11:30:06 +0200 Subject: Explicitely pass source collection to ensure moving mails work ... since the passed item.parentCollection() is already the target collection Differential Revision: https://phabricator.kde.org/D5711 (cherry picked from commit 33d86e165c5fe150583f9ac3ab58626ffcfe4f97) --- src/core/models/entitytreemodel_p.cpp | 9 +++++---- src/core/models/entitytreemodel_p.h | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/core/models/entitytreemodel_p.cpp b/src/core/models/entitytreemodel_p.cpp index 7c75746..79f0c04 100644 --- a/src/core/models/entitytreemodel_p.cpp +++ b/src/core/models/entitytreemodel_p.cpp @@ -1104,7 +1104,7 @@ void EntityTreeModelPrivate::monitoredItemAdded(const Akonadi::Item &item, const q->endInsertRows(); } -void EntityTreeModelPrivate::monitoredItemRemoved(const Akonadi::Item &item) +void EntityTreeModelPrivate::monitoredItemRemoved(const Akonadi::Item &item, const Akonadi::Collection &parentCollection) { Q_Q(EntityTreeModel); @@ -1112,7 +1112,8 @@ void EntityTreeModelPrivate::monitoredItemRemoved(const Akonadi::Item &item) return; } - if ((m_itemPopulation == EntityTreeModel::LazyPopulation) && !m_populatedCols.contains(item.parentCollection().id())) { + if ((m_itemPopulation == EntityTreeModel::LazyPopulation) && + !m_populatedCols.contains(parentCollection.isValid() ? parentCollection.id() : item.parentCollection().id())) { return; } @@ -1197,10 +1198,10 @@ void EntityTreeModelPrivate::monitoredItemMoved(const Akonadi::Item &item, monitoredItemAdded(item, destCollection); return; } else if (isHidden(destCollection)) { - monitoredItemRemoved(item); + monitoredItemRemoved(item, sourceCollection); return; } else { - monitoredItemRemoved(item); + monitoredItemRemoved(item, sourceCollection); monitoredItemAdded(item, destCollection); return; } diff --git a/src/core/models/entitytreemodel_p.h b/src/core/models/entitytreemodel_p.h index 9c5e5ac..1d90abb 100644 --- a/src/core/models/entitytreemodel_p.h +++ b/src/core/models/entitytreemodel_p.h @@ -93,7 +93,7 @@ public: const Akonadi::Collection &destCollection); void monitoredItemAdded(const Akonadi::Item &item, const Akonadi::Collection &collection); - void monitoredItemRemoved(const Akonadi::Item &item); + void monitoredItemRemoved(const Akonadi::Item &item, const Akonadi::Collection &collection = Akonadi::Collection()); void monitoredItemChanged(const Akonadi::Item &item, const QSet<QByteArray> &); void monitoredItemMoved(const Akonadi::Item &item, const Akonadi::Collection &, const Akonadi::Collection &); -- cgit v0.11.2
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor