aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2019-01-16 15:14:29 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2019-01-17 11:42:06 +0000
commit11f29677503ea72057caf82634d5880c19161afe (patch)
tree3e5d9dbb2d3d552c0d0d4c2b060307e1e0541195
parent5f61381cba8ce44baf5f9971f65fe5254e86056c (diff)
ProjectExplorer: Fix SelectableFilesModel::applyFilter()
The "checked" state of file nodes was never re-calculated during the filter operation. Fixes: QTCREATORBUG-16237 Change-Id: I3586be8329007f526292ddafbd4a436a91d12cb9 Reviewed-by: hjk <hjk@qt.io>
-rw-r--r--src/plugins/projectexplorer/selectablefilesmodel.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/plugins/projectexplorer/selectablefilesmodel.cpp b/src/plugins/projectexplorer/selectablefilesmodel.cpp
index f31049b0ea..051a6e089b 100644
--- a/src/plugins/projectexplorer/selectablefilesmodel.cpp
+++ b/src/plugins/projectexplorer/selectablefilesmodel.cpp
@@ -493,7 +493,9 @@ Qt::CheckState SelectableFilesModel::applyFilter(const QModelIndex &idx)
}
for (int i=0; i < t->visibleFiles.size(); ++i) {
- if (t->visibleFiles.at(i)->checked == Qt::Checked)
+ Tree * const fileNode = t->visibleFiles.at(i);
+ fileNode->checked = filter(fileNode) == FilterState::CHECKED ? Qt::Checked : Qt::Unchecked;
+ if (fileNode->checked)
allUnchecked = false;
else
allChecked = false;