From b05887f21b3bc759c0aba9207ef8d5a7aadbee6a Mon Sep 17 00:00:00 2001 From: Johannes Rieken Date: Mon, 5 Oct 2020 09:51:21 +0200 Subject: [PATCH] extract suggest widget renderer into its own file --- .../editor/contrib/suggest/suggestWidget.ts | 266 ++---------------- .../contrib/suggest/suggestWidgetRenderer.ts | 241 ++++++++++++++++ 2 files changed, 268 insertions(+), 239 deletions(-) create mode 100644 src/vs/editor/contrib/suggest/suggestWidgetRenderer.ts diff --git a/src/vs/editor/contrib/suggest/suggestWidget.ts b/src/vs/editor/contrib/suggest/suggestWidget.ts index d541b4ed016..3adbc317763 100644 --- a/src/vs/editor/contrib/suggest/suggestWidget.ts +++ b/src/vs/editor/contrib/suggest/suggestWidget.ts @@ -8,13 +8,12 @@ import 'vs/css!./media/suggestStatusBar'; import 'vs/base/browser/ui/codicons/codiconStyles'; // The codicon symbol styles are defined here and must be loaded import 'vs/editor/contrib/documentSymbols/outlineTree'; // The codicon symbol colors are defined here and must be loaded import * as nls from 'vs/nls'; -import { createMatches } from 'vs/base/common/filters'; import * as strings from 'vs/base/common/strings'; import { Event, Emitter } from 'vs/base/common/event'; import { onUnexpectedError } from 'vs/base/common/errors'; import { IDisposable, DisposableStore, Disposable } from 'vs/base/common/lifecycle'; import { append, $, hide, show, getDomNodePagePosition, addDisposableListener, addStandardDisposableListener } from 'vs/base/browser/dom'; -import { IListVirtualDelegate, IListEvent, IListRenderer, IListMouseEvent, IListGestureEvent } from 'vs/base/browser/ui/list/list'; +import { IListVirtualDelegate, IListEvent, IListMouseEvent, IListGestureEvent } from 'vs/base/browser/ui/list/list'; import { List } from 'vs/base/browser/ui/list/listWidget'; import { IKeybindingService } from 'vs/platform/keybinding/common/keybinding'; import { IContextKey, IContextKeyService } from 'vs/platform/contextkey/common/contextkey'; @@ -31,47 +30,15 @@ import { MarkdownRenderer } from 'vs/editor/contrib/markdown/markdownRenderer'; import { IModeService } from 'vs/editor/common/services/modeService'; import { IOpenerService } from 'vs/platform/opener/common/opener'; import { TimeoutTimer, CancelablePromise, createCancelablePromise, disposableTimeout } from 'vs/base/common/async'; -import { CompletionItemKind, completionKindToCssClass, CompletionItemTag } from 'vs/editor/common/modes'; -import { IconLabel, IIconLabelValueOptions } from 'vs/base/browser/ui/iconLabel/iconLabel'; -import { getIconClasses } from 'vs/editor/common/services/getIconClasses'; -import { IModelService } from 'vs/editor/common/services/modelService'; -import { URI } from 'vs/base/common/uri'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; -import { FileKind } from 'vs/platform/files/common/files'; -import { flatten } from 'vs/base/common/arrays'; import { IKeyboardEvent } from 'vs/base/browser/keyboardEvent'; -import { Codicon, registerIcon } from 'vs/base/common/codicons'; import { SuggestionDetails, canExpandCompletionItem } from './suggestWidgetDetails'; import { SuggestWidgetStatus } from 'vs/editor/contrib/suggest/suggestWidgetStatus'; +import { getAriaId, ItemRenderer } from './suggestWidgetRenderer'; const expandSuggestionDocsByDefault = false; -const suggestMoreInfoIcon = registerIcon('suggest-more-info', Codicon.chevronRight); -interface ISuggestionTemplateData { - root: HTMLElement; - - /** - * Flexbox - * < ------------- left ------------ > < --- right -- > - *