From e229ffdb0e90cc49d9e5b92410ac2fb866533a81 Mon Sep 17 00:00:00 2001 From: Alex Ross Date: Fri, 26 Apr 2024 10:58:24 +0200 Subject: [PATCH] Fix tree selection context and command args (#211429) Fixes #210046 --- src/vs/workbench/browser/parts/views/treeView.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/vs/workbench/browser/parts/views/treeView.ts b/src/vs/workbench/browser/parts/views/treeView.ts index 9ac5d9dbad240..ee77e91b7333b 100644 --- a/src/vs/workbench/browser/parts/views/treeView.ts +++ b/src/vs/workbench/browser/parts/views/treeView.ts @@ -801,9 +801,10 @@ abstract class AbstractTreeView extends Disposable implements ITreeView { this.tree!.setFocus([node]); let selected = this.canSelectMany ? this.getSelection() : []; - if (selected.length === 0) { + if (!selected.find(item => item.handle === node.handle)) { selected = [node]; } + const actions = treeMenus.getResourceContextActions(selected); if (!actions.length) { return; @@ -1567,8 +1568,8 @@ class MultipleSelectionActionRunner extends ActionRunner { }); } - if (!actionInSelected && selectionHandleArgs && selectionHandleArgs.length > 0) { - context = selectionHandleArgs[0]; + if (!actionInSelected && selectionHandleArgs) { + selectionHandleArgs = undefined; } await action.run(context, selectionHandleArgs);