┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kfileitemmodel.cpp
diff options
context:
space:
mode:
authorKai Uwe Broulik <[email protected]>2017-03-08 14:38:46 +0100
committerKai Uwe Broulik <[email protected]>2017-03-08 14:38:46 +0100
commit6dcbb8127c5a1da644f2927521ccac40bea54614 (patch)
treeac6339cfe96066883c5e0343014391d3642e4228 /src/kitemviews/kfileitemmodel.cpp
parent58c5eae1953bbdcf6d4150b21cb7ffdad07a5257 (diff)
Honor KFileItem isHidden() in view
Instead of just assuming hidden files always start with a "." The items were already filtered out but when showing hidden files they weren't painted at reduced opacity. Differential Revision: https://phabricator.kde.org/D4978
Diffstat (limited to 'src/kitemviews/kfileitemmodel.cpp')
-rw-r--r--src/kitemviews/kfileitemmodel.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/kitemviews/kfileitemmodel.cpp b/src/kitemviews/kfileitemmodel.cpp
index 7e14baff0..41ddb43b4 100644
--- a/src/kitemviews/kfileitemmodel.cpp
+++ b/src/kitemviews/kfileitemmodel.cpp
@@ -92,6 +92,7 @@ KFileItemModel::KFileItemModel(QObject* parent) :
m_roles.insert("text");
m_roles.insert("isDir");
m_roles.insert("isLink");
+ m_roles.insert("isHidden");
// For slow KIO-slaves like used for searching it makes sense to show results periodically even
// before the completed() or canceled() signal has been emitted.
@@ -1472,6 +1473,7 @@ KFileItemModel::RoleType KFileItemModel::typeForRole(const QByteArray& role) con
// with KFileItemModel::roleForType() in case if a change is done).
roles.insert("isDir", IsDirRole);
roles.insert("isLink", IsLinkRole);
+ roles.insert("isHidden", IsHiddenRole);
roles.insert("isExpanded", IsExpandedRole);
roles.insert("isExpandable", IsExpandableRole);
roles.insert("expandedParentsCount", ExpandedParentsCountRole);
@@ -1498,6 +1500,7 @@ QByteArray KFileItemModel::roleForType(RoleType roleType) const
// with KFileItemModel::typeForRole() in case if a change is done).
roles.insert(IsDirRole, "isDir");
roles.insert(IsLinkRole, "isLink");
+ roles.insert(IsHiddenRole, "isHidden");
roles.insert(IsExpandedRole, "isExpanded");
roles.insert(IsExpandableRole, "isExpandable");
roles.insert(ExpandedParentsCountRole, "expandedParentsCount");
@@ -1525,6 +1528,10 @@ QHash<QByteArray, QVariant> KFileItemModel::retrieveData(const KFileItem& item,
data.insert(sharedValue("isLink"), true);
}
+ if (m_requestRole[IsHiddenRole] && item.isHidden()) {
+ data.insert(sharedValue("isHidden"), true);
+ }
+
if (m_requestRole[NameRole]) {
data.insert(sharedValue("text"), item.text());
}