Commit 33d86e16 authored by Martin Koller's avatar Martin Koller

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
parent a9437332
...@@ -1104,7 +1104,7 @@ void EntityTreeModelPrivate::monitoredItemAdded(const Akonadi::Item &item, const ...@@ -1104,7 +1104,7 @@ void EntityTreeModelPrivate::monitoredItemAdded(const Akonadi::Item &item, const
q->endInsertRows(); q->endInsertRows();
} }
void EntityTreeModelPrivate::monitoredItemRemoved(const Akonadi::Item &item) void EntityTreeModelPrivate::monitoredItemRemoved(const Akonadi::Item &item, const Akonadi::Collection &parentCollection)
{ {
Q_Q(EntityTreeModel); Q_Q(EntityTreeModel);
...@@ -1112,7 +1112,8 @@ void EntityTreeModelPrivate::monitoredItemRemoved(const Akonadi::Item &item) ...@@ -1112,7 +1112,8 @@ void EntityTreeModelPrivate::monitoredItemRemoved(const Akonadi::Item &item)
return; 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; return;
} }
...@@ -1197,10 +1198,10 @@ void EntityTreeModelPrivate::monitoredItemMoved(const Akonadi::Item &item, ...@@ -1197,10 +1198,10 @@ void EntityTreeModelPrivate::monitoredItemMoved(const Akonadi::Item &item,
monitoredItemAdded(item, destCollection); monitoredItemAdded(item, destCollection);
return; return;
} else if (isHidden(destCollection)) { } else if (isHidden(destCollection)) {
monitoredItemRemoved(item); monitoredItemRemoved(item, sourceCollection);
return; return;
} else { } else {
monitoredItemRemoved(item); monitoredItemRemoved(item, sourceCollection);
monitoredItemAdded(item, destCollection); monitoredItemAdded(item, destCollection);
return; return;
} }
......
...@@ -93,7 +93,7 @@ public: ...@@ -93,7 +93,7 @@ public:
const Akonadi::Collection &destCollection); const Akonadi::Collection &destCollection);
void monitoredItemAdded(const Akonadi::Item &item, const Akonadi::Collection &collection); 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 monitoredItemChanged(const Akonadi::Item &item, const QSet<QByteArray> &);
void monitoredItemMoved(const Akonadi::Item &item, const Akonadi::Collection &, const Akonadi::Collection &); void monitoredItemMoved(const Akonadi::Item &item, const Akonadi::Collection &, const Akonadi::Collection &);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment