summaryrefslogtreecommitdiff
path: root/src/datatab.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/datatab.cpp')
-rw-r--r--src/datatab.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/datatab.cpp b/src/datatab.cpp
index d8ce9c3a..f263c2c6 100644
--- a/src/datatab.cpp
+++ b/src/datatab.cpp
@@ -37,7 +37,7 @@ DataTab::DataTab(
connect(
&m_filter, &FilterWidget::aboutToChange,
- [&]{ m_filetree->ensureFullyLoaded(); });
+ [&]{ ensureFullyLoaded(); });
connect(
ui.refresh, &QPushButton::clicked,
@@ -107,7 +107,7 @@ void DataTab::updateTree()
m_filetree->refresh();
if (!m_filter.empty()) {
- m_filetree->ensureFullyLoaded();
+ ensureFullyLoaded();
if (auto* m=m_filter.proxyModel()) {
m->invalidate();
@@ -115,6 +115,15 @@ void DataTab::updateTree()
}
}
+void DataTab::ensureFullyLoaded()
+{
+ if (!m_filetree->fullyLoaded()) {
+ m_filter.proxyModel()->setRecursiveFilteringEnabled(false);
+ m_filetree->ensureFullyLoaded();
+ m_filter.proxyModel()->setRecursiveFilteringEnabled(true);
+ }
+}
+
void DataTab::onConflicts()
{
updateOptions();