┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kfileitemlistview.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/kitemviews/kfileitemlistview.cpp')
-rw-r--r--src/kitemviews/kfileitemlistview.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/kitemviews/kfileitemlistview.cpp b/src/kitemviews/kfileitemlistview.cpp
index 3a02d537d..585a972a6 100644
--- a/src/kitemviews/kfileitemlistview.cpp
+++ b/src/kitemviews/kfileitemlistview.cpp
@@ -354,6 +354,15 @@ void KFileItemListView::slotSortRoleChanged(const QByteArray &current, const QBy
KStandardItemListView::slotSortRoleChanged(current, previous);
}
+void KFileItemListView::slotGroupRoleChanged(const QByteArray &current, const QByteArray &previous)
+{
+ if (!visibleRoles().contains(current)) {
+ applyRolesToModel();
+ }
+
+ KItemListView::slotGroupRoleChanged(current, previous);
+}
+
void KFileItemListView::triggerVisibleIndexRangeUpdate()
{
if (!model()) {
@@ -441,6 +450,11 @@ void KFileItemListView::applyRolesToModel()
// Assure that the role that is used for sorting will be determined
roles.insert(fileItemModel->sortRole());
+ const QByteArray rawGroupRole = fileItemModel->rawGroupRole();
+ if (!rawGroupRole.isEmpty()) {
+ roles.insert(rawGroupRole);
+ }
+
fileItemModel->setRoles(roles);
m_modelRolesUpdater->setRoles(roles);
}