diff --git a/src/vs/base/browser/ui/tree/asyncDataTree.ts b/src/vs/base/browser/ui/tree/asyncDataTree.ts index 4616054d67d73526e6fb95fa44568f7e5b645d8e..d547ef616c4ef457f7635f3989dce9cecc80caaa 100644 --- a/src/vs/base/browser/ui/tree/asyncDataTree.ts +++ b/src/vs/base/browser/ui/tree/asyncDataTree.ts @@ -6,7 +6,7 @@ import { ComposedTreeDelegate, IAbstractTreeOptions } from 'vs/base/browser/ui/tree/abstractTree'; import { ObjectTree, IObjectTreeOptions } from 'vs/base/browser/ui/tree/objectTree'; import { IListVirtualDelegate, IIdentityProvider } from 'vs/base/browser/ui/list/list'; -import { ITreeElement, ITreeNode, ITreeRenderer, ITreeEvent, ITreeMouseEvent, ITreeContextMenuEvent, ITreeSorter, ICollapseStateChangeEvent } from 'vs/base/browser/ui/tree/tree'; +import { ITreeElement, ITreeNode, ITreeRenderer, ITreeEvent, ITreeMouseEvent, ITreeContextMenuEvent, ITreeSorter, ICollapseStateChangeEvent, IDataSource } from 'vs/base/browser/ui/tree/tree'; import { IDisposable, dispose } from 'vs/base/common/lifecycle'; import { Emitter, Event } from 'vs/base/common/event'; import { timeout, always } from 'vs/base/common/async'; @@ -14,11 +14,6 @@ import { IListStyles } from 'vs/base/browser/ui/list/listWidget'; import { toggleClass } from 'vs/base/browser/dom'; import { Iterator } from 'vs/base/common/iterator'; -export interface IDataSource> { - hasChildren(element: T | null): boolean; - getChildren(element: T | null): Promise; -} - enum AsyncDataTreeNodeState { Uninitialized, Loaded, diff --git a/src/vs/base/browser/ui/tree/tree.ts b/src/vs/base/browser/ui/tree/tree.ts index 74fb75b681702e520180ae48bb03f414d689d9d8..f8c1a90e1211384b69eeeef35f1fb01a1c01c052 100644 --- a/src/vs/base/browser/ui/tree/tree.ts +++ b/src/vs/base/browser/ui/tree/tree.ts @@ -145,6 +145,11 @@ export interface ITreeNavigator { next(): T | null; } +export interface IDataSource> { + hasChildren(element: T | null): boolean; + getChildren(element: T | null): Promise; +} + /** * Use this renderer when you want to re-render elements on account of * an event firing. diff --git a/src/vs/base/test/browser/ui/tree/asyncDataTree.test.ts b/src/vs/base/test/browser/ui/tree/asyncDataTree.test.ts index fb37d930de18abb5c03d2d3f20f3568064d7a2f9..ba9e451f281c296087c5c78e2131487c5762decf 100644 --- a/src/vs/base/test/browser/ui/tree/asyncDataTree.test.ts +++ b/src/vs/base/test/browser/ui/tree/asyncDataTree.test.ts @@ -4,8 +4,8 @@ *--------------------------------------------------------------------------------------------*/ import * as assert from 'assert'; -import { ITreeNode, ITreeRenderer } from 'vs/base/browser/ui/tree/tree'; -import { AsyncDataTree, IDataSource } from 'vs/base/browser/ui/tree/asyncDataTree'; +import { ITreeNode, ITreeRenderer, IDataSource } from 'vs/base/browser/ui/tree/tree'; +import { AsyncDataTree } from 'vs/base/browser/ui/tree/asyncDataTree'; import { IListVirtualDelegate, IIdentityProvider } from 'vs/base/browser/ui/list/list'; import { hasClass } from 'vs/base/browser/dom'; diff --git a/src/vs/editor/contrib/referenceSearch/referencesTree.ts b/src/vs/editor/contrib/referenceSearch/referencesTree.ts index ffda710aa84a57ff9af22b7fa1d89e8921aa1baf..847a6637c1f2414eb05bf18745f9953285b790d7 100644 --- a/src/vs/editor/contrib/referenceSearch/referencesTree.ts +++ b/src/vs/editor/contrib/referenceSearch/referencesTree.ts @@ -5,9 +5,8 @@ import { ReferencesModel, FileReferences, OneReference } from './referencesModel'; -import { IDataSource } from 'vs/base/browser/ui/tree/asyncDataTree'; import { ITextModelService } from 'vs/editor/common/services/resolverService'; -import { ITreeRenderer, ITreeNode } from 'vs/base/browser/ui/tree/tree'; +import { ITreeRenderer, ITreeNode, IDataSource } from 'vs/base/browser/ui/tree/tree'; import { IconLabel } from 'vs/base/browser/ui/iconLabel/iconLabel'; import { CountBadge } from 'vs/base/browser/ui/countBadge/countBadge'; import { ILabelService } from 'vs/platform/label/common/label'; diff --git a/src/vs/editor/contrib/referenceSearch/referencesWidget.ts b/src/vs/editor/contrib/referenceSearch/referencesWidget.ts index 254331575209449807cc61613e32164130435d75..64c8a226873a93ba095f70b4005bafbd112ccc61 100644 --- a/src/vs/editor/contrib/referenceSearch/referencesWidget.ts +++ b/src/vs/editor/contrib/referenceSearch/referencesWidget.ts @@ -31,8 +31,8 @@ import { activeContrastBorder, contrastBorder, registerColor } from 'vs/platform import { ITheme, IThemeService, registerThemingParticipant } from 'vs/platform/theme/common/themeService'; import { PeekViewWidget } from './peekViewWidget'; import { FileReferences, OneReference, ReferencesModel } from './referencesModel'; -import { ITreeRenderer } from 'vs/base/browser/ui/tree/tree'; -import { IAsyncDataTreeOptions, IDataSource } from 'vs/base/browser/ui/tree/asyncDataTree'; +import { ITreeRenderer, IDataSource } from 'vs/base/browser/ui/tree/tree'; +import { IAsyncDataTreeOptions } from 'vs/base/browser/ui/tree/asyncDataTree'; import { IListVirtualDelegate } from 'vs/base/browser/ui/list/list'; class DecorationsManager implements IDisposable { diff --git a/src/vs/platform/list/browser/listService.ts b/src/vs/platform/list/browser/listService.ts index 3848455b466bff21003285f3e71ac08a294d5a77..2bd4512c1d9719c019e0cef5d56a1519d67efc4d 100644 --- a/src/vs/platform/list/browser/listService.ts +++ b/src/vs/platform/list/browser/listService.ts @@ -32,8 +32,8 @@ import { attachInputBoxStyler, attachListStyler, computeStyles, defaultListStyle import { IThemeService } from 'vs/platform/theme/common/themeService'; import { InputFocusedContextKey } from 'vs/platform/workbench/common/contextkeys'; import { ObjectTree, IObjectTreeOptions } from 'vs/base/browser/ui/tree/objectTree'; -import { ITreeEvent, ITreeRenderer } from 'vs/base/browser/ui/tree/tree'; -import { AsyncDataTree, IDataSource, IAsyncDataTreeOptions } from 'vs/base/browser/ui/tree/asyncDataTree'; +import { ITreeEvent, ITreeRenderer, IDataSource } from 'vs/base/browser/ui/tree/tree'; +import { AsyncDataTree, IAsyncDataTreeOptions } from 'vs/base/browser/ui/tree/asyncDataTree'; export type ListWidget = List | PagedList | ITree | ObjectTree | AsyncDataTree; diff --git a/src/vs/workbench/parts/debug/browser/loadedScriptsView.ts b/src/vs/workbench/parts/debug/browser/loadedScriptsView.ts index baec4a01f99bdaf6e13508d9294332a032c900ec..47b1c507f55e8041a53312007d1f50c6a39bb5b1 100644 --- a/src/vs/workbench/parts/debug/browser/loadedScriptsView.ts +++ b/src/vs/workbench/parts/debug/browser/loadedScriptsView.ts @@ -25,9 +25,8 @@ import { ltrim } from 'vs/base/common/strings'; import { RunOnceScheduler } from 'vs/base/common/async'; import { ResourceLabel, IResourceLabel, IResourceLabelOptions } from 'vs/workbench/browser/labels'; import { FileKind } from 'vs/platform/files/common/files'; -import { IDataSource } from 'vs/base/browser/ui/tree/asyncDataTree'; import { IListVirtualDelegate } from 'vs/base/browser/ui/list/list'; -import { ITreeRenderer, ITreeNode, ITreeFilter, TreeVisibility, TreeFilterResult } from 'vs/base/browser/ui/tree/tree'; +import { ITreeRenderer, ITreeNode, ITreeFilter, TreeVisibility, TreeFilterResult, IDataSource } from 'vs/base/browser/ui/tree/tree'; import { IAccessibilityProvider } from 'vs/base/browser/ui/list/listWidget'; import { IEditorService } from 'vs/workbench/services/editor/common/editorService'; import { WorkbenchAsyncDataTree, IListService, TreeResourceNavigator2 } from 'vs/platform/list/browser/listService'; diff --git a/src/vs/workbench/parts/debug/electron-browser/callStackView.ts b/src/vs/workbench/parts/debug/electron-browser/callStackView.ts index 4563238fc38e1c834418d12c85d58b52ae35fd33..4385bca3f043106292faf6a8cb61bdd3799b79f2 100644 --- a/src/vs/workbench/parts/debug/electron-browser/callStackView.ts +++ b/src/vs/workbench/parts/debug/electron-browser/callStackView.ts @@ -25,10 +25,9 @@ import { IViewletPanelOptions, ViewletPanel } from 'vs/workbench/browser/parts/v import { ILabelService } from 'vs/platform/label/common/label'; import { DebugSession } from 'vs/workbench/parts/debug/electron-browser/debugSession'; import { IAccessibilityProvider } from 'vs/base/browser/ui/list/listWidget'; -import { IDataSource } from 'vs/base/browser/ui/tree/asyncDataTree'; import { fillInContextMenuActions } from 'vs/platform/actions/browser/menuItemActionItem'; import { IListVirtualDelegate } from 'vs/base/browser/ui/list/list'; -import { ITreeRenderer, ITreeNode, ITreeContextMenuEvent } from 'vs/base/browser/ui/tree/tree'; +import { ITreeRenderer, ITreeNode, ITreeContextMenuEvent, IDataSource } from 'vs/base/browser/ui/tree/tree'; import { TreeResourceNavigator2, WorkbenchAsyncDataTree, IListService } from 'vs/platform/list/browser/listService'; import { IThemeService } from 'vs/platform/theme/common/themeService'; diff --git a/src/vs/workbench/parts/debug/electron-browser/debugHover.ts b/src/vs/workbench/parts/debug/electron-browser/debugHover.ts index 126f29dd15a37d24da304c1d03df5a3cd5e6b8e8..0157ef9a95fea5640b84b5d44bfb3359f030b2c2 100644 --- a/src/vs/workbench/parts/debug/electron-browser/debugHover.ts +++ b/src/vs/workbench/parts/debug/electron-browser/debugHover.ts @@ -24,7 +24,7 @@ import { IThemeService } from 'vs/platform/theme/common/themeService'; import { editorHoverBackground, editorHoverBorder } from 'vs/platform/theme/common/colorRegistry'; import { ModelDecorationOptions } from 'vs/editor/common/model/textModel'; import { getExactExpressionStartAndEnd } from 'vs/workbench/parts/debug/common/debugUtils'; -import { AsyncDataTree, IDataSource } from 'vs/base/browser/ui/tree/asyncDataTree'; +import { AsyncDataTree } from 'vs/base/browser/ui/tree/asyncDataTree'; import { IAccessibilityProvider } from 'vs/base/browser/ui/list/listWidget'; import { IListVirtualDelegate } from 'vs/base/browser/ui/list/list'; import { WorkbenchAsyncDataTree, IListService } from 'vs/platform/list/browser/listService'; @@ -32,6 +32,7 @@ import { IConfigurationService } from 'vs/platform/configuration/common/configur import { IContextKeyService } from 'vs/platform/contextkey/common/contextkey'; import { coalesce } from 'vs/base/common/arrays'; import { IKeybindingService } from 'vs/platform/keybinding/common/keybinding'; +import { IDataSource } from 'vs/base/browser/ui/tree/tree'; const $ = dom.$; const MAX_TREE_HEIGHT = 324; diff --git a/src/vs/workbench/parts/debug/electron-browser/repl.ts b/src/vs/workbench/parts/debug/electron-browser/repl.ts index 4f6e5582009b3b94bf9b63cf552efc220019b992..d342bf55aeeb925dcd5c4d402ca52393f796dde7 100644 --- a/src/vs/workbench/parts/debug/electron-browser/repl.ts +++ b/src/vs/workbench/parts/debug/electron-browser/repl.ts @@ -47,12 +47,11 @@ import { FocusSessionActionItem } from 'vs/workbench/parts/debug/browser/debugAc import { CompletionContext, CompletionList, CompletionProviderRegistry } from 'vs/editor/common/modes'; import { first } from 'vs/base/common/arrays'; import { IPanelService } from 'vs/workbench/services/panel/common/panelService'; -import { IDataSource } from 'vs/base/browser/ui/tree/asyncDataTree'; import { IAccessibilityProvider } from 'vs/base/browser/ui/list/listWidget'; import { Variable, Expression, SimpleReplElement, RawObjectReplElement } from 'vs/workbench/parts/debug/common/debugModel'; import { IListVirtualDelegate } from 'vs/base/browser/ui/list/list'; import { VariablesRenderer } from 'vs/workbench/parts/debug/electron-browser/variablesView'; -import { ITreeRenderer, ITreeNode, ITreeContextMenuEvent } from 'vs/base/browser/ui/tree/tree'; +import { ITreeRenderer, ITreeNode, ITreeContextMenuEvent, IDataSource } from 'vs/base/browser/ui/tree/tree'; import { IEditorService } from 'vs/workbench/services/editor/common/editorService'; import { renderExpressionValue } from 'vs/workbench/parts/debug/browser/baseDebugView'; import { handleANSIOutput } from 'vs/workbench/parts/debug/browser/debugANSIHandling'; diff --git a/src/vs/workbench/parts/debug/electron-browser/variablesView.ts b/src/vs/workbench/parts/debug/electron-browser/variablesView.ts index 2716b17000da6270ebef566c8fff7624f4173d92..5679a39e946bf723d0051fdc09e2334a5ac9f837 100644 --- a/src/vs/workbench/parts/debug/electron-browser/variablesView.ts +++ b/src/vs/workbench/parts/debug/electron-browser/variablesView.ts @@ -19,10 +19,9 @@ import { CopyValueAction, CopyEvaluatePathAction } from 'vs/workbench/parts/debu import { Separator } from 'vs/base/browser/ui/actionbar/actionbar'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; import { IViewletPanelOptions, ViewletPanel } from 'vs/workbench/browser/parts/views/panelViewlet'; -import { IDataSource } from 'vs/base/browser/ui/tree/asyncDataTree'; import { IAccessibilityProvider } from 'vs/base/browser/ui/list/listWidget'; import { IListVirtualDelegate } from 'vs/base/browser/ui/list/list'; -import { ITreeRenderer, ITreeNode, ITreeMouseEvent, ITreeContextMenuEvent } from 'vs/base/browser/ui/tree/tree'; +import { ITreeRenderer, ITreeNode, ITreeMouseEvent, ITreeContextMenuEvent, IDataSource } from 'vs/base/browser/ui/tree/tree'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { Emitter } from 'vs/base/common/event'; import { IContextKeyService } from 'vs/platform/contextkey/common/contextkey'; diff --git a/src/vs/workbench/parts/debug/electron-browser/watchExpressionsView.ts b/src/vs/workbench/parts/debug/electron-browser/watchExpressionsView.ts index a27a62b1250b42b76a4c70ec50b4f68e79eb296a..e20047369dc9c8b57bfbba0bc6dde0d6df974664 100644 --- a/src/vs/workbench/parts/debug/electron-browser/watchExpressionsView.ts +++ b/src/vs/workbench/parts/debug/electron-browser/watchExpressionsView.ts @@ -20,14 +20,13 @@ import { Separator } from 'vs/base/browser/ui/actionbar/actionbar'; import { renderExpressionValue, renderViewTree, IInputBoxOptions, AbstractExpressionsRenderer, IExpressionTemplateData } from 'vs/workbench/parts/debug/browser/baseDebugView'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; import { IViewletPanelOptions, ViewletPanel } from 'vs/workbench/browser/parts/views/panelViewlet'; -import { IDataSource } from 'vs/base/browser/ui/tree/asyncDataTree'; import { IListVirtualDelegate } from 'vs/base/browser/ui/list/list'; import { IAccessibilityProvider } from 'vs/base/browser/ui/list/listWidget'; import { VariablesRenderer, variableSetEmitter } from 'vs/workbench/parts/debug/electron-browser/variablesView'; import { IContextKeyService } from 'vs/platform/contextkey/common/contextkey'; import { WorkbenchAsyncDataTree, IListService } from 'vs/platform/list/browser/listService'; import { IThemeService } from 'vs/platform/theme/common/themeService'; -import { ITreeMouseEvent, ITreeContextMenuEvent } from 'vs/base/browser/ui/tree/tree'; +import { IDataSource, ITreeMouseEvent, ITreeContextMenuEvent } from 'vs/base/browser/ui/tree/tree'; const MAX_VALUE_RENDER_LENGTH_IN_VIEWLET = 1024;