From 664d97c950c8b7e4aa03c227907a9e823c4a671b Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Wed, 16 May 2018 12:56:53 +0200 Subject: [PATCH 1/3] Add following to TreeView - Events to listen to when an element is expanded/collapsed - Property to access selected elements --- src/vs/vscode.d.ts | 15 +++++++++++++++ src/vs/workbench/api/node/extHostTreeViews.ts | 3 +++ 2 files changed, 18 insertions(+) diff --git a/src/vs/vscode.d.ts b/src/vs/vscode.d.ts index 3733eb30b88..a2799c33403 100644 --- a/src/vs/vscode.d.ts +++ b/src/vs/vscode.d.ts @@ -5870,6 +5870,21 @@ declare module 'vscode' { */ export interface TreeView extends Disposable { + /** + * Event that is fired when an element is expanded + */ + readonly onDidExpandElement: Event; + + /** + * Event that is fired when an element is collapsed + */ + readonly onDidCollapseElement: Event; + + /** + * Currently selected elements. + */ + readonly selectedElements: T[]; + /** * Reveal an element. By default revealed element is selected. * diff --git a/src/vs/workbench/api/node/extHostTreeViews.ts b/src/vs/workbench/api/node/extHostTreeViews.ts index 44e7d43d4a6..9b3c1a4c2f6 100644 --- a/src/vs/workbench/api/node/extHostTreeViews.ts +++ b/src/vs/workbench/api/node/extHostTreeViews.ts @@ -49,6 +49,9 @@ export class ExtHostTreeViews implements ExtHostTreeViewsShape { } const treeView = this.createExtHostTreeViewer(viewId, options.treeDataProvider); return { + get onDidCollapseElement() { return treeView.onDidCollapseElement; }, + get onDidExpandElement() { return treeView.onDidExpandElement; }, + get selectedElements() { return treeView.selectedElements; }, reveal: (element: T, options?: { select?: boolean }): Thenable => { return treeView.reveal(element, options); }, From 3e299286333b781740bd570660f0c27c0eb3583a Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Wed, 16 May 2018 15:33:12 +0200 Subject: [PATCH 2/3] Make selected elements readonly --- src/vs/vscode.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vs/vscode.d.ts b/src/vs/vscode.d.ts index a2799c33403..cacdfe21eed 100644 --- a/src/vs/vscode.d.ts +++ b/src/vs/vscode.d.ts @@ -5883,7 +5883,7 @@ declare module 'vscode' { /** * Currently selected elements. */ - readonly selectedElements: T[]; + readonly selectedElements: ReadonlyArray; /** * Reveal an element. By default revealed element is selected. From 58064599c54b6ff7a1a2801650a610bdae5348a5 Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Thu, 17 May 2018 16:48:09 +0200 Subject: [PATCH 3/3] Call selected elements - selection --- src/vs/vscode.d.ts | 2 +- src/vs/workbench/api/node/extHostTreeViews.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/vs/vscode.d.ts b/src/vs/vscode.d.ts index cacdfe21eed..c3397ffc99f 100644 --- a/src/vs/vscode.d.ts +++ b/src/vs/vscode.d.ts @@ -5883,7 +5883,7 @@ declare module 'vscode' { /** * Currently selected elements. */ - readonly selectedElements: ReadonlyArray; + readonly selection: ReadonlyArray; /** * Reveal an element. By default revealed element is selected. diff --git a/src/vs/workbench/api/node/extHostTreeViews.ts b/src/vs/workbench/api/node/extHostTreeViews.ts index 9b3c1a4c2f6..b466dcbeb08 100644 --- a/src/vs/workbench/api/node/extHostTreeViews.ts +++ b/src/vs/workbench/api/node/extHostTreeViews.ts @@ -51,7 +51,7 @@ export class ExtHostTreeViews implements ExtHostTreeViewsShape { return { get onDidCollapseElement() { return treeView.onDidCollapseElement; }, get onDidExpandElement() { return treeView.onDidExpandElement; }, - get selectedElements() { return treeView.selectedElements; }, + get selection() { return treeView.selectedElements; }, reveal: (element: T, options?: { select?: boolean }): Thenable => { return treeView.reveal(element, options); },