ICustomHover -> IUpdatableHover

This commit is contained in:
Daniel Imms 2024-04-03 06:13:48 -07:00
parent 506cc7670a
commit bfb5b774c6
No known key found for this signature in database
GPG key ID: E5CF412B63651C69
26 changed files with 60 additions and 57 deletions

View file

@ -11,7 +11,7 @@ import { IActionViewItem } from 'vs/base/browser/ui/actionbar/actionbar';
import { IContextViewProvider } from 'vs/base/browser/ui/contextview/contextview';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { IHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegate';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { ISelectBoxOptions, ISelectBoxStyles, ISelectOptionItem, SelectBox } from 'vs/base/browser/ui/selectBox/selectBox';
import { IToggleStyles } from 'vs/base/browser/ui/toggle/toggle';
import { Action, ActionRunner, IAction, IActionChangeEvent, IActionRunner, Separator } from 'vs/base/common/actions';
@ -35,7 +35,7 @@ export class BaseActionViewItem extends Disposable implements IActionViewItem {
_context: unknown;
readonly _action: IAction;
private customHover?: ICustomHover;
private customHover?: IUpdatableHover;
get action() {
return this._action;

View file

@ -11,7 +11,7 @@ import { renderMarkdown, renderStringAsPlaintext } from 'vs/base/browser/markdow
import { Gesture, EventType as TouchEventType } from 'vs/base/browser/touch';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { IHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegate';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { renderLabelWithIcons } from 'vs/base/browser/ui/iconLabel/iconLabels';
import { Action, IAction, IActionRunner } from 'vs/base/common/actions';
import { Codicon } from 'vs/base/common/codicons';
@ -78,7 +78,7 @@ export class Button extends Disposable implements IButton {
protected _label: string | IMarkdownString = '';
protected _labelElement: HTMLElement | undefined;
protected _labelShortElement: HTMLElement | undefined;
private _hover: ICustomHover | undefined;
private _hover: IUpdatableHover | undefined;
private _onDidClick = this._register(new Emitter<Event>());
get onDidClick(): BaseEvent<Event> { return this._onDidClick.event; }

View file

@ -9,7 +9,7 @@ import { StandardKeyboardEvent } from 'vs/base/browser/keyboardEvent';
import { EventType as GestureEventType, Gesture } from 'vs/base/browser/touch';
import { AnchorAlignment } from 'vs/base/browser/ui/contextview/contextview';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IMenuOptions } from 'vs/base/browser/ui/menu/menu';
import { ActionRunner, IAction } from 'vs/base/common/actions';
import { Emitter } from 'vs/base/common/event';
@ -36,7 +36,7 @@ class BaseDropdown extends ActionRunner {
private _onDidChangeVisibility = this._register(new Emitter<boolean>());
readonly onDidChangeVisibility = this._onDidChangeVisibility.event;
private hover: ICustomHover | undefined;
private hover: IUpdatableHover | undefined;
constructor(container: HTMLElement, options: IBaseDropdownOptions) {
super();

View file

@ -6,7 +6,7 @@
import * as dom from 'vs/base/browser/dom';
import { IHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegate';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { renderLabelWithIcons } from 'vs/base/browser/ui/iconLabel/iconLabels';
import { Disposable } from 'vs/base/common/lifecycle';
import * as objects from 'vs/base/common/objects';
@ -42,7 +42,7 @@ export class HighlightedLabel extends Disposable {
private highlights: readonly IHighlight[] = [];
private supportIcons: boolean;
private didEverRender: boolean = false;
private customHover: ICustomHover | undefined;
private customHover: IUpdatableHover | undefined;
/**
* Create a new {@link HighlightedLabel}.

View file

@ -11,6 +11,9 @@ let baseHoverDelegate: IHoverDelegate2 = {
showAndFocusLastHover: () => undefined,
};
/**
* Sets the hover delegate for use **only in the `base/` layer**.
*/
export function setBaseLayerHoverDelegate(hoverDelegate: IHoverDelegate2): void {
baseHoverDelegate = hoverDelegate;
}

View file

@ -51,7 +51,7 @@ export interface IUpdatableHoverOptions {
linkHandler?(url: string): void;
}
export interface ICustomHover extends IDisposable {
export interface IUpdatableHover extends IDisposable {
/**
* Allows to programmatically open the hover.
@ -171,7 +171,7 @@ function getHoverTargetElement(element: HTMLElement, stopElement?: HTMLElement):
return element;
}
export function setupCustomHover(hoverDelegate: IHoverDelegate, htmlElement: HTMLElement, content: IHoverContentOrFactory, options?: IUpdatableHoverOptions): ICustomHover {
export function setupCustomHover(hoverDelegate: IHoverDelegate, htmlElement: HTMLElement, content: IHoverContentOrFactory, options?: IUpdatableHoverOptions): IUpdatableHover {
htmlElement.setAttribute('custom-hover', 'true');
if (htmlElement.title !== '') {
@ -275,7 +275,7 @@ export function setupCustomHover(hoverDelegate: IHoverDelegate, htmlElement: HTM
focusDomEmitter = dom.addDisposableListener(htmlElement, dom.EventType.FOCUS, onFocus, true);
}
const hover: ICustomHover = {
const hover: IUpdatableHover = {
show: focus => {
hideHover(false, true); // terminate a ongoing mouse over preparation
triggerShowHover(0, focus); // show hover immediately

View file

@ -5,13 +5,13 @@
import { reset } from 'vs/base/browser/dom';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { renderLabelWithIcons } from 'vs/base/browser/ui/iconLabel/iconLabels';
import { IDisposable } from 'vs/base/common/lifecycle';
export class SimpleIconLabel implements IDisposable {
private hover?: ICustomHover;
private hover?: IUpdatableHover;
constructor(
private readonly _container: HTMLElement

View file

@ -12,7 +12,7 @@ import { ActionBar } from 'vs/base/browser/ui/actionbar/actionbar';
import * as aria from 'vs/base/browser/ui/aria/aria';
import { AnchorAlignment, IContextViewProvider } from 'vs/base/browser/ui/contextview/contextview';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { ScrollableElement } from 'vs/base/browser/ui/scrollbar/scrollableElement';
import { Widget } from 'vs/base/browser/ui/widget';
import { IAction } from 'vs/base/common/actions';
@ -113,7 +113,7 @@ export class InputBox extends Widget {
private cachedContentHeight: number | undefined;
private maxHeight: number = Number.POSITIVE_INFINITY;
private scrollableElement: ScrollableElement | undefined;
private hover: ICustomHover | undefined;
private hover: IUpdatableHover | undefined;
private _onDidChange = this._register(new Emitter<string>());
public readonly onDidChange: Event<string> = this._onDidChange.event;

View file

@ -5,7 +5,7 @@
import * as dom from 'vs/base/browser/dom';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { UILabelProvider } from 'vs/base/common/keybindingLabels';
import { ResolvedKeybinding, ResolvedChord } from 'vs/base/common/keybindings';
import { Disposable } from 'vs/base/common/lifecycle';
@ -60,7 +60,7 @@ export class KeybindingLabel extends Disposable {
private readonly keyElements = new Set<HTMLSpanElement>();
private hover: ICustomHover;
private hover: IUpdatableHover;
private keybinding: ResolvedKeybinding | undefined;
private matches: Matches | undefined;
private didEverRender: boolean;

View file

@ -10,7 +10,7 @@ import { StandardKeyboardEvent } from 'vs/base/browser/keyboardEvent';
import { renderMarkdown } from 'vs/base/browser/markdownRenderer';
import { AnchorPosition, IContextViewProvider } from 'vs/base/browser/ui/contextview/contextview';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IListEvent, IListRenderer, IListVirtualDelegate } from 'vs/base/browser/ui/list/list';
import { List } from 'vs/base/browser/ui/list/listWidget';
import { ISelectBoxDelegate, ISelectBoxOptions, ISelectBoxStyles, ISelectData, ISelectOptionItem } from 'vs/base/browser/ui/selectBox/selectBox';
@ -103,7 +103,7 @@ export class SelectBoxList extends Disposable implements ISelectBoxDelegate, ILi
private selectionDetailsPane!: HTMLElement;
private _skipLayout: boolean = false;
private _cachedMaxDetailsHeight?: number;
private _hover?: ICustomHover;
private _hover?: IUpdatableHover;
private _sticky: boolean = false; // for dev purposes only

View file

@ -13,7 +13,7 @@ import { Emitter, Event } from 'vs/base/common/event';
import { KeyCode } from 'vs/base/common/keyCodes';
import 'vs/css!./toggle';
import { isActiveElement, $, addDisposableListener, EventType } from 'vs/base/browser/dom';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { IHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegate';
@ -112,7 +112,7 @@ export class Toggle extends Widget {
readonly domNode: HTMLElement;
private _checked: boolean;
private _hover: ICustomHover;
private _hover: IUpdatableHover;
constructor(opts: IToggleOpts) {
super();

View file

@ -12,7 +12,7 @@ import { KeyCode } from 'vs/base/common/keyCodes';
import { Disposable } from 'vs/base/common/lifecycle';
import { IOpenerService } from 'vs/platform/opener/common/opener';
import 'vs/css!./link';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { IHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegate';
@ -32,7 +32,7 @@ export interface ILinkOptions {
export class Link extends Disposable {
private el: HTMLAnchorElement;
private hover?: ICustomHover;
private hover?: IUpdatableHover;
private hoverDelegate: IHoverDelegate;
private _enabled: boolean = true;

View file

@ -29,7 +29,7 @@ import { Event } from 'vs/base/common/event';
import { defaultButtonStyles, defaultProgressBarStyles } from 'vs/platform/theme/browser/defaultStyles';
import { KeyCode } from 'vs/base/common/keyCodes';
import { StandardKeyboardEvent } from 'vs/base/browser/keyboardEvent';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
export class NotificationsListDelegate implements IListVirtualDelegate<INotificationViewItem> {
@ -422,7 +422,7 @@ export class NotificationTemplateRenderer extends Disposable {
this.template.icon.classList.add(...ThemeIcon.asClassNameArray(this.toSeverityIcon(notification.severity)));
}
private renderMessage(notification: INotificationViewItem, customHover: ICustomHover): boolean {
private renderMessage(notification: INotificationViewItem, customHover: IUpdatableHover): boolean {
clearNode(this.template.message);
this.template.message.appendChild(NotificationMessageRenderer.render(notification.message, {
callback: link => this.openerService.open(URI.parse(link), { allowCommands: true }),
@ -472,7 +472,7 @@ export class NotificationTemplateRenderer extends Disposable {
actions.forEach(action => this.template.toolbar.push(action, { icon: true, label: false, keybinding: this.getKeybindingLabel(action) }));
}
private renderSource(notification: INotificationViewItem, sourceCustomHover: ICustomHover): void {
private renderSource(notification: INotificationViewItem, sourceCustomHover: IUpdatableHover): void {
if (notification.expanded && notification.source) {
this.template.source.textContent = localize('notificationSource', "Source: {0}", notification.source);
sourceCustomHover.update(notification.source);

View file

@ -21,7 +21,7 @@ import { StandardKeyboardEvent } from 'vs/base/browser/keyboardEvent';
import { KeyCode } from 'vs/base/common/keyCodes';
import { renderIcon, renderLabelWithIcons } from 'vs/base/browser/ui/iconLabel/iconLabels';
import { spinningLoading, syncing } from 'vs/platform/theme/common/iconRegistry';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { isMarkdownString, markdownStringEqual } from 'vs/base/common/htmlContent';
import { IHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegate';
import { Gesture, EventType as TouchEventType } from 'vs/base/browser/touch';
@ -41,7 +41,7 @@ export class StatusbarEntryItem extends Disposable {
private readonly focusListener = this._register(new MutableDisposable());
private readonly focusOutListener = this._register(new MutableDisposable());
private hover: ICustomHover | undefined = undefined;
private hover: IUpdatableHover | undefined = undefined;
readonly labelContainer: HTMLElement;
readonly beakContainer: HTMLElement;

View file

@ -5,7 +5,7 @@
import * as DOM from 'vs/base/browser/dom';
import { IHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegate';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { Toggle } from 'vs/base/browser/ui/toggle/toggle';
import { Codicon } from 'vs/base/common/codicons';
import { Emitter, Event } from 'vs/base/common/event';
@ -27,7 +27,7 @@ export class TreeItemCheckbox extends Disposable {
public toggle: Toggle | undefined;
private checkboxContainer: HTMLDivElement;
public isDisposed = false;
private hover: ICustomHover | undefined;
private hover: IUpdatableHover | undefined;
public static readonly checkboxClass = 'custom-view-tree-node-item-checkbox';

View file

@ -47,7 +47,7 @@ import { FilterWidget, IFilterWidgetOptions } from 'vs/workbench/browser/parts/v
import { BaseActionViewItem } from 'vs/base/browser/ui/actionbar/actionViewItems';
import { ServiceCollection } from 'vs/platform/instantiation/common/serviceCollection';
import { defaultButtonStyles, defaultProgressBarStyles } from 'vs/platform/theme/browser/defaultStyles';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ILifecycleService } from 'vs/workbench/services/lifecycle/common/lifecycle';
@ -351,11 +351,11 @@ export abstract class ViewPane extends Pane implements IView {
private readonly showActions: ViewPaneShowActions;
private headerContainer?: HTMLElement;
private titleContainer?: HTMLElement;
private titleContainerHover?: ICustomHover;
private titleContainerHover?: IUpdatableHover;
private titleDescriptionContainer?: HTMLElement;
private titleDescriptionContainerHover?: ICustomHover;
private titleDescriptionContainerHover?: IUpdatableHover;
private iconContainer?: HTMLElement;
private iconContainerHover?: ICustomHover;
private iconContainerHover?: IUpdatableHover;
protected twistiesContainer?: HTMLElement;
private viewWelcomeController!: ViewWelcomeController;

View file

@ -5,7 +5,7 @@
import * as dom from 'vs/base/browser/dom';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { fromNow } from 'vs/base/common/date';
import { Disposable } from 'vs/base/common/lifecycle';
import { language } from 'vs/base/common/platform';
@ -17,7 +17,7 @@ export class TimestampWidget extends Disposable {
private _timestamp: Date | undefined;
private _useRelativeTime: boolean;
private hover: ICustomHover;
private hover: IUpdatableHover;
constructor(private configurationService: IConfigurationService, container: HTMLElement, timeStamp?: Date) {
super();

View file

@ -48,7 +48,7 @@ import { createDisconnectMenuItemAction } from 'vs/workbench/contrib/debug/brows
import { CALLSTACK_VIEW_ID, CONTEXT_CALLSTACK_ITEM_STOPPED, CONTEXT_CALLSTACK_ITEM_TYPE, CONTEXT_CALLSTACK_SESSION_HAS_ONE_THREAD, CONTEXT_CALLSTACK_SESSION_IS_ATTACH, CONTEXT_DEBUG_STATE, CONTEXT_FOCUSED_SESSION_IS_NO_DEBUG, CONTEXT_STACK_FRAME_SUPPORTS_RESTART, getStateLabel, IDebugModel, IDebugService, IDebugSession, IRawStoppedDetails, isFrameDeemphasized, IStackFrame, IThread, State } from 'vs/workbench/contrib/debug/common/debug';
import { StackFrame, Thread, ThreadAndSessionIds } from 'vs/workbench/contrib/debug/common/debugModel';
import { isSessionAttach } from 'vs/workbench/contrib/debug/common/debugUtils';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
const $ = dom.$;
@ -135,7 +135,7 @@ async function expandTo(session: IDebugSession, tree: WorkbenchCompressibleAsync
export class CallStackView extends ViewPane {
private stateMessage!: HTMLSpanElement;
private stateMessageLabel!: HTMLSpanElement;
private stateMessageLabelHover!: ICustomHover;
private stateMessageLabelHover!: IUpdatableHover;
private onCallStackChangeScheduler: RunOnceScheduler;
private needsRefresh = false;
private ignoreSelectionChangedEvent = false;

View file

@ -31,7 +31,7 @@ import { URI } from 'vs/base/common/uri';
import { IExtensionService } from 'vs/workbench/services/extensions/common/extensions';
import { areSameExtensions } from 'vs/platform/extensionManagement/common/extensionManagementUtil';
import Severity from 'vs/base/common/severity';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { Color } from 'vs/base/common/color';
import { renderMarkdown } from 'vs/base/browser/markdownRenderer';
import { IOpenerService } from 'vs/platform/opener/common/opener';
@ -126,7 +126,7 @@ export class InstallCountWidget extends ExtensionWidget {
export class RatingsWidget extends ExtensionWidget {
private readonly containerHover: ICustomHover;
private readonly containerHover: IUpdatableHover;
constructor(
private container: HTMLElement,
@ -191,7 +191,7 @@ export class RatingsWidget extends ExtensionWidget {
export class VerifiedPublisherWidget extends ExtensionWidget {
private disposables = this._register(new DisposableStore());
private readonly containerHover: ICustomHover;
private readonly containerHover: IUpdatableHover;
constructor(
private container: HTMLElement,
@ -383,7 +383,7 @@ export class RemoteBadgeWidget extends ExtensionWidget {
class RemoteBadge extends Disposable {
readonly element: HTMLElement;
readonly elementHover: ICustomHover;
readonly elementHover: IUpdatableHover;
constructor(
private readonly tooltip: boolean,

View file

@ -51,7 +51,7 @@ import { MarkersContextKeys, MarkersViewMode } from 'vs/workbench/contrib/marker
import { unsupportedSchemas } from 'vs/platform/markers/common/markerService';
import { defaultCountBadgeStyles } from 'vs/platform/theme/browser/defaultStyles';
import Severity from 'vs/base/common/severity';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
interface IResourceMarkersTemplateData {
@ -287,7 +287,7 @@ class MarkerWidget extends Disposable {
private readonly icon: HTMLElement;
private readonly iconContainer: HTMLElement;
private readonly messageAndDetailsContainer: HTMLElement;
private readonly messageAndDetailsContainerHover: ICustomHover;
private readonly messageAndDetailsContainerHover: IUpdatableHover;
private readonly disposables = this._register(new DisposableStore());
constructor(

View file

@ -9,7 +9,7 @@ import { EventType as TouchEventType } from 'vs/base/browser/touch';
import { IActionViewItemProvider } from 'vs/base/browser/ui/actionbar/actionbar';
import { IActionProvider } from 'vs/base/browser/ui/dropdown/dropdown';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { renderLabelWithIcons } from 'vs/base/browser/ui/iconLabel/iconLabels';
import { IAction } from 'vs/base/common/actions';
import { ThemeIcon } from 'vs/base/common/themables';
@ -48,7 +48,7 @@ export class ActionViewWithLabel extends MenuEntryActionViewItem {
}
export class UnifiedSubmenuActionView extends SubmenuEntryActionViewItem {
private _actionLabel?: HTMLAnchorElement;
private _hover?: ICustomHover;
private _hover?: IUpdatableHover;
private _primaryAction: IAction | undefined;
constructor(

View file

@ -58,7 +58,7 @@ import { IConfigurationService } from 'vs/platform/configuration/common/configur
import { AccessibilityVerbositySettingId } from 'vs/workbench/contrib/accessibility/browser/accessibilityConfiguration';
import { registerNavigableContainer } from 'vs/workbench/browser/actions/widgetNavigationCommands';
import { IActionViewItemOptions } from 'vs/base/browser/ui/actionbar/actionViewItems';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { IEditorGroup } from 'vs/workbench/services/editor/common/editorGroupsService';
@ -902,7 +902,7 @@ class ActionsColumnRenderer implements ITableRenderer<IKeybindingItemEntry, IAct
interface ICommandColumnTemplateData {
commandColumn: HTMLElement;
commandColumnHover: ICustomHover;
commandColumnHover: IUpdatableHover;
commandLabelContainer: HTMLElement;
commandLabel: HighlightedLabel;
commandDefaultLabelContainer: HTMLElement;
@ -1005,7 +1005,7 @@ class KeybindingColumnRenderer implements ITableRenderer<IKeybindingItemEntry, I
interface ISourceColumnTemplateData {
sourceColumn: HTMLElement;
sourceColumnHover: ICustomHover;
sourceColumnHover: IUpdatableHover;
sourceLabel: HighlightedLabel;
extensionContainer: HTMLElement;
extensionLabel: HTMLAnchorElement;

View file

@ -34,7 +34,7 @@ import { isWorkspaceFolder, IWorkspaceContextService, IWorkspaceFolder, Workbenc
import { settingsEditIcon, settingsScopeDropDownIcon } from 'vs/workbench/contrib/preferences/browser/preferencesIcons';
import { IWorkbenchEnvironmentService } from 'vs/workbench/services/environment/common/environmentService';
import { ILanguageService } from 'vs/editor/common/languages/language';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
export class FolderSettingsActionViewItem extends BaseActionViewItem {
@ -43,7 +43,7 @@ export class FolderSettingsActionViewItem extends BaseActionViewItem {
private container!: HTMLElement;
private anchorElement!: HTMLElement;
private anchorElementHover!: ICustomHover;
private anchorElementHover!: IUpdatableHover;
private labelElement!: HTMLElement;
private detailsElement!: HTMLElement;
private dropDownElement!: HTMLElement;

View file

@ -106,7 +106,7 @@ import { CancellationTokenSource } from 'vs/base/common/cancellation';
import { DropdownWithPrimaryActionViewItem } from 'vs/platform/actions/browser/dropdownWithPrimaryActionViewItem';
import { clamp } from 'vs/base/common/numbers';
import { ILogService } from 'vs/platform/log/common/log';
import { ICustomHover, ITooltipMarkdownString, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, ITooltipMarkdownString, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { MarkdownString } from 'vs/base/common/htmlContent';
@ -894,7 +894,7 @@ interface HistoryItemTemplate {
readonly iconContainer: HTMLElement;
readonly label: IconLabel;
readonly statsContainer: HTMLElement;
readonly statsCustomHover: ICustomHover;
readonly statsCustomHover: IUpdatableHover;
readonly filesLabel: HTMLElement;
readonly insertionsLabel: HTMLElement;
readonly deletionsLabel: HTMLElement;

View file

@ -5,7 +5,7 @@
import { h } from 'vs/base/browser/dom';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ICustomHover, ITooltipMarkdownString, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, ITooltipMarkdownString, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { assertNever } from 'vs/base/common/assert';
import { MarkdownString } from 'vs/base/common/htmlContent';
import { Lazy } from 'vs/base/common/lazy';
@ -63,7 +63,7 @@ export class ManagedTestCoverageBars extends Disposable {
});
private readonly visibleStore = this._register(new DisposableStore());
private readonly customHovers: ICustomHover[] = [];
private readonly customHovers: IUpdatableHover[] = [];
/** Gets whether coverage is currently visible for the resource. */
public get visible() {

View file

@ -9,7 +9,7 @@ import { IActionViewItemOptions } from 'vs/base/browser/ui/actionbar/actionViewI
import { ActionBar, IActionViewItem } from 'vs/base/browser/ui/actionbar/actionbar';
import { Button } from 'vs/base/browser/ui/button/button';
import { getDefaultHoverDelegate } from 'vs/base/browser/ui/hover/hoverDelegateFactory';
import { ICustomHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { IUpdatableHover, setupCustomHover } from 'vs/base/browser/ui/hover/updatableHoverWidget';
import { renderLabelWithIcons } from 'vs/base/browser/ui/iconLabel/iconLabels';
import { IIdentityProvider, IKeyboardNavigationLabelProvider, IListVirtualDelegate } from 'vs/base/browser/ui/list/list';
import { DefaultKeyboardNavigationDelegate, IListAccessibilityProvider } from 'vs/base/browser/ui/list/listWidget';
@ -446,7 +446,7 @@ class ResultSummaryView extends Disposable {
private elementsWereAttached = false;
private badgeType: TestingCountBadge;
private lastBadge?: NumberBadge | IconBadge;
private countHover: ICustomHover;
private countHover: IUpdatableHover;
private readonly badgeDisposable = this._register(new MutableDisposable());
private readonly renderLoop = this._register(new RunOnceScheduler(() => this.render(), SUMMARY_RENDER_INTERVAL));
private readonly elements = dom.h('div.result-summary', [