task: Don't show VSCode worktree tasks when Zed ones exist (#32590)
Fixes #23110 Similar to #32589, we may eventually want to merge instead of making these lists mutually exclusive. Release Notes: - N/A
This commit is contained in:
parent
3850da6bee
commit
f428d54b74
1 changed files with 16 additions and 1 deletions
|
@ -179,11 +179,26 @@ impl TasksModal {
|
||||||
};
|
};
|
||||||
let mut new_candidates = used_tasks;
|
let mut new_candidates = used_tasks;
|
||||||
new_candidates.extend(lsp_tasks);
|
new_candidates.extend(lsp_tasks);
|
||||||
|
let hide_vscode = current_resolved_tasks.iter().any(|(kind, _)| match kind {
|
||||||
|
TaskSourceKind::Worktree {
|
||||||
|
id: _,
|
||||||
|
directory_in_worktree: dir,
|
||||||
|
id_base: _,
|
||||||
|
} => dir.ends_with(".zed"),
|
||||||
|
_ => false,
|
||||||
|
});
|
||||||
// todo(debugger): We're always adding lsp tasks here even if prefer_lsp is false
|
// todo(debugger): We're always adding lsp tasks here even if prefer_lsp is false
|
||||||
// We should move the filter to new_candidates instead of on current
|
// We should move the filter to new_candidates instead of on current
|
||||||
// and add a test for this
|
// and add a test for this
|
||||||
new_candidates.extend(current_resolved_tasks.into_iter().filter(|(task_kind, _)| {
|
new_candidates.extend(current_resolved_tasks.into_iter().filter(|(task_kind, _)| {
|
||||||
add_current_language_tasks || !matches!(task_kind, TaskSourceKind::Language { .. })
|
match task_kind {
|
||||||
|
TaskSourceKind::Worktree {
|
||||||
|
directory_in_worktree: dir,
|
||||||
|
..
|
||||||
|
} => !(hide_vscode && dir.ends_with(".vscode")),
|
||||||
|
TaskSourceKind::Language { .. } => add_current_language_tasks,
|
||||||
|
_ => true,
|
||||||
|
}
|
||||||
}));
|
}));
|
||||||
self.picker.update(cx, |picker, cx| {
|
self.picker.update(cx, |picker, cx| {
|
||||||
picker.delegate.task_contexts = task_contexts;
|
picker.delegate.task_contexts = task_contexts;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue