]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/views/dolphinviewactionhandler.cpp
"No grouping" chosen as the default grouping setting for first startup.
[dolphin.git] / src / views / dolphinviewactionhandler.cpp
index 7454ed0b947f2979483d052da5a7a4a122c1ae08..815b0f63e685c7c525de99fb0bd1a154caf030a7 100644 (file)
@@ -404,9 +404,9 @@ QActionGroup *DolphinViewActionHandler::createFileItemRolesActionGroup(const QSt
 #endif
 
     QList<KFileItemModel::RoleInfo> rolesInfo = KFileItemModel::rolesInformation();
-    // Unlike sorting, grouping is optional. If creating for group_by_, include a None role.
-    if (isGroupGroup)
-        rolesInfo.append(KFileItemModel::roleInformation(nullptr));
+    if (isGroupGroup) {
+        rolesInfo += KFileItemModel::extraGroupingInformation();
+    }
 
     for (const KFileItemModel::RoleInfo &info : rolesInfo) {
         if (!isSortGroup && !isGroupGroup && info.role == "text") {
@@ -787,6 +787,15 @@ void DolphinViewActionHandler::slotGroupRoleChanged(const QByteArray &role)
         ascending->setText(i18nc("Group ascending", "Ascending"));
     }
 
+    // Disable group order selector if grouping behavior does not support it
+    if (role == "none" || role == "followSort") {
+        descending->setEnabled(false);
+        ascending->setEnabled(false);
+    } else {
+        descending->setEnabled(true);
+        ascending->setEnabled(true);
+    }
+
     slotGroupOrderChanged(m_currentView->groupOrder());
 }