┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews
diff options
context:
space:
mode:
authorKai Uwe Broulik <[email protected]>2026-01-31 11:33:47 +0100
committerMéven Car <[email protected]>2026-02-01 05:07:06 +0000
commit66b466443db933354c5f3e7aeaa30f754860ec21 (patch)
treeda0cbe923d1633fd257e2e784ce4a54ac84122b7 /src/kitemviews
parent6789a4fe71df947ded443473fb5f3ae0d4e1f194 (diff)
Use currentMimeType for temp file filter
All temporary file types are identified by glob (file extension), so we don't need to resolve the final mime type here. The model filter is generic but effectively right now only used for filtering temp files. Should this change in the future, it needs to be revisited.
Diffstat (limited to 'src/kitemviews')
-rw-r--r--src/kitemviews/kfileitemmodel.cpp3
-rw-r--r--src/kitemviews/private/kfileitemmodelfilter.cpp4
2 files changed, 5 insertions, 2 deletions
diff --git a/src/kitemviews/kfileitemmodel.cpp b/src/kitemviews/kfileitemmodel.cpp
index 5afcd0fb3..0958e921f 100644
--- a/src/kitemviews/kfileitemmodel.cpp
+++ b/src/kitemviews/kfileitemmodel.cpp
@@ -1915,7 +1915,8 @@ QHash<QByteArray, QVariant> KFileItemModel::retrieveData(const KFileItem &item,
}
if (m_requestRole[IsHiddenRole]) {
- data.insert(sharedValue("isHidden"), item.isHidden() || item.mimetype() == QStringLiteral("application/x-trash"));
+ // all "temporary" file types are identified by glob, currentMimeType is therefore enough.
+ data.insert(sharedValue("isHidden"), item.isHidden() || item.currentMimeType().name() == QStringLiteral("application/x-trash"));
}
if (m_requestRole[NameRole]) {
diff --git a/src/kitemviews/private/kfileitemmodelfilter.cpp b/src/kitemviews/private/kfileitemmodelfilter.cpp
index 11debeab7..45c62e7ca 100644
--- a/src/kitemviews/private/kfileitemmodelfilter.cpp
+++ b/src/kitemviews/private/kfileitemmodelfilter.cpp
@@ -108,7 +108,9 @@ bool KFileItemModelFilter::matchesPattern(const KFileItem &item) const
bool KFileItemModelFilter::matchesType(const KFileItem &item) const
{
bool excluded = std::any_of(m_excludeMimeTypes.constBegin(), m_excludeMimeTypes.constEnd(), [item](const QString &excludeMimetype) {
- return item.mimetype() == excludeMimetype;
+ // Currently only really used for "temporary" files which are all idenfied by glob.
+ // If you use the filter for anything else, this must be revisited.
+ return item.currentMimeType().name() == excludeMimetype;
});
if (excluded) {
return false;