36 lines
1.7 KiB
Diff
36 lines
1.7 KiB
Diff
|
From d3c6ba904798768b0c83c2e182c27b1c624f78ca Mon Sep 17 00:00:00 2001
|
||
|
From: =?UTF-8?q?Daniel=20Vr=C3=A1til?= <dvratil@kde.org>
|
||
|
Date: Tue, 15 Aug 2017 12:16:48 +0200
|
||
|
Subject: ETM: consider collections that don't match mimetype filter populated
|
||
|
|
||
|
After commit 0741892fe the ETM only runs ItemFetchJob for collections
|
||
|
that match the current mimetype filter. This caused collections that
|
||
|
don't match the filter (like top-level collections) to never be marked
|
||
|
as populated, breaking applications like korgac that check the
|
||
|
IsPopulatedRole of all collections in the tree.
|
||
|
---
|
||
|
src/core/models/entitytreemodel_p.cpp | 7 +++++++
|
||
|
1 file changed, 7 insertions(+)
|
||
|
|
||
|
diff --git a/src/core/models/entitytreemodel_p.cpp b/src/core/models/entitytreemodel_p.cpp
|
||
|
index 94c080b..879ba57 100644
|
||
|
--- a/src/core/models/entitytreemodel_p.cpp
|
||
|
+++ b/src/core/models/entitytreemodel_p.cpp
|
||
|
@@ -473,6 +473,13 @@ void EntityTreeModelPrivate::collectionsFetched(const Akonadi::Collection::List
|
||
|
const auto col = m_collections.value(collectionId);
|
||
|
if (m_mimeChecker.wantedMimeTypes().isEmpty() || m_mimeChecker.isWantedCollection(col)) {
|
||
|
fetchItems(m_collections.value(collectionId));
|
||
|
+ } else {
|
||
|
+ // Consider collections that don't contain relevant mimetypes to be populated
|
||
|
+ m_populatedCols.insert(collectionId);
|
||
|
+ Q_EMIT q_ptr->collectionPopulated(collectionId);
|
||
|
+ const auto idx = indexForCollection(Collection(collectionId));
|
||
|
+ Q_ASSERT(idx.isValid());
|
||
|
+ dataChanged(idx, idx);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
--
|
||
|
cgit v0.11.2
|
||
|
|