summaryrefslogtreecommitdiff
path: root/src/filetreeitem.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/filetreeitem.cpp')
-rw-r--r--src/filetreeitem.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/filetreeitem.cpp b/src/filetreeitem.cpp
index 9eff9564..e5425573 100644
--- a/src/filetreeitem.cpp
+++ b/src/filetreeitem.cpp
@@ -178,12 +178,14 @@ public:
void FileTreeItem::sort()
{
- m_model->sortItem(*this);
+ if (!m_children.empty()) {
+ m_model->sortItem(*this, true);
+ }
}
-void FileTreeItem::sort(int column, Qt::SortOrder order)
+void FileTreeItem::sort(int column, Qt::SortOrder order, bool force)
{
- if (!m_expanded) {
+ if (!force && !m_expanded) {
m_sortingStale = true;
return;
}
@@ -220,7 +222,7 @@ void FileTreeItem::sort(int column, Qt::SortOrder order)
});
for (auto& child : m_children) {
- child->sort(column, order);
+ child->sort(column, order, force);
}
}