Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/microsoft/vscode.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src/vs
diff options
context:
space:
mode:
authorJoão Moreno <joao.moreno@microsoft.com>2022-07-28 14:28:43 +0300
committerJoão Moreno <joao.moreno@microsoft.com>2022-07-28 14:28:43 +0300
commit469465b703e1594d62c65379b4189da0985a07a4 (patch)
tree5f233814ab9683bdfa34b78684f3fbc220bd5190 /src/vs
parent96c1ab3fa94e48dde6a6182769055d09380ea1c4 (diff)
fix issue with multiple tree filters
related to #156127
Diffstat (limited to 'src/vs')
-rw-r--r--src/vs/base/browser/ui/tree/abstractTree.ts14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/vs/base/browser/ui/tree/abstractTree.ts b/src/vs/base/browser/ui/tree/abstractTree.ts
index 7a75aa8070a..9f0b7aef2fc 100644
--- a/src/vs/base/browser/ui/tree/abstractTree.ts
+++ b/src/vs/base/browser/ui/tree/abstractTree.ts
@@ -593,11 +593,11 @@ class FindFilter<T> implements ITreeFilter<T, FuzzyScore | LabelFuzzyScore>, IDi
}
filter(element: T, parentVisibility: TreeVisibility): TreeFilterResult<FuzzyScore | LabelFuzzyScore> {
+ let visibility = TreeVisibility.Visible;
+
if (this._filter) {
const result = this._filter.filter(element, parentVisibility);
- let visibility: TreeVisibility;
-
if (typeof result === 'boolean') {
visibility = result ? TreeVisibility.Visible : TreeVisibility.Hidden;
} else if (isFilterResult(result)) {
@@ -615,7 +615,7 @@ class FindFilter<T> implements ITreeFilter<T, FuzzyScore | LabelFuzzyScore>, IDi
if (!this._pattern) {
this._matchCount++;
- return { data: FuzzyScore.Default, visibility: true };
+ return { data: FuzzyScore.Default, visibility };
}
const label = this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(element);
@@ -624,22 +624,22 @@ class FindFilter<T> implements ITreeFilter<T, FuzzyScore | LabelFuzzyScore>, IDi
for (const l of labels) {
const labelStr = l && l.toString();
if (typeof labelStr === 'undefined') {
- return { data: FuzzyScore.Default, visibility: true };
+ return { data: FuzzyScore.Default, visibility };
}
const score = fuzzyScore(this._pattern, this._lowercasePattern, 0, labelStr, labelStr.toLowerCase(), 0, { firstMatchCanBeWeak: true, boostFullMatch: true });
if (score) {
this._matchCount++;
return labels.length === 1 ?
- { data: score, visibility: true } :
- { data: { label: labelStr, score: score }, visibility: true };
+ { data: score, visibility } :
+ { data: { label: labelStr, score: score }, visibility };
}
}
if (this.tree.findMode === TreeFindMode.Filter) {
return TreeVisibility.Recurse;
} else {
- return { data: FuzzyScore.Default, visibility: true };
+ return { data: FuzzyScore.Default, visibility };
}
}