Skip to content

Commit

Permalink
remove codicon.registerCodicon: codicon are the default, built-in icons
Browse files Browse the repository at this point in the history
  • Loading branch information
aeschli committed Nov 11, 2021
1 parent 0db54ee commit cfebd1d
Show file tree
Hide file tree
Showing 19 changed files with 599 additions and 580 deletions.
9 changes: 5 additions & 4 deletions src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import * as dom from 'vs/base/browser/dom';
import { IMouseEvent } from 'vs/base/browser/mouseEvent';
import { DomScrollableElement } from 'vs/base/browser/ui/scrollbar/scrollableElement';
import { commonPrefixLength } from 'vs/base/common/arrays';
import { Codicon, registerCodicon } from 'vs/base/common/codicons';
import { CSSIcon } from 'vs/base/common/codicons';
import { Color } from 'vs/base/common/color';
import { Emitter, Event } from 'vs/base/common/event';
import { DisposableStore, dispose, IDisposable } from 'vs/base/common/lifecycle';
Expand Down Expand Up @@ -35,8 +35,6 @@ export interface IBreadcrumbsItemEvent {
payload: any;
}

const breadcrumbSeparatorIcon = registerCodicon('breadcrumb-separator', Codicon.chevronRight);

export class BreadcrumbsWidget {

private readonly _disposables = new DisposableStore();
Expand All @@ -55,6 +53,7 @@ export class BreadcrumbsWidget {
private readonly _items = new Array<BreadcrumbsItem>();
private readonly _nodes = new Array<HTMLDivElement>();
private readonly _freeNodes = new Array<HTMLDivElement>();
private readonly _separatorIcon: CSSIcon;

private _enabled: boolean = true;
private _focusedItemIdx: number = -1;
Expand All @@ -66,6 +65,7 @@ export class BreadcrumbsWidget {
constructor(
container: HTMLElement,
horizontalScrollbarSize: number,
separatorIcon: CSSIcon
) {
this._domNode = document.createElement('div');
this._domNode.className = 'monaco-breadcrumbs';
Expand All @@ -78,6 +78,7 @@ export class BreadcrumbsWidget {
useShadows: false,
scrollYToX: true
});
this._separatorIcon = separatorIcon;
this._disposables.add(this._scrollable);
this._disposables.add(dom.addStandardDisposableListener(this._domNode, 'click', e => this._onClick(e)));
container.appendChild(this._scrollable.getDomNode());
Expand Down Expand Up @@ -327,7 +328,7 @@ export class BreadcrumbsWidget {
container.tabIndex = -1;
container.setAttribute('role', 'listitem');
container.classList.add('monaco-breadcrumb-item');
const iconContainer = dom.$(breadcrumbSeparatorIcon.cssSelector);
const iconContainer = dom.$(CSSIcon.asCSSSelector(this._separatorIcon));
container.appendChild(iconContainer);
}

Expand Down
17 changes: 6 additions & 11 deletions src/vs/base/browser/ui/dialog/dialog.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import { ButtonBar, ButtonWithDescription, IButtonStyles } from 'vs/base/browser
import { ISimpleCheckboxStyles, SimpleCheckbox } from 'vs/base/browser/ui/checkbox/checkbox';
import { InputBox } from 'vs/base/browser/ui/inputbox/inputBox';
import { Action } from 'vs/base/common/actions';
import { Codicon, registerCodicon } from 'vs/base/common/codicons';
import { Codicon } from 'vs/base/common/codicons';
import { Color } from 'vs/base/common/color';
import { KeyCode, KeyMod } from 'vs/base/common/keyCodes';
import { mnemonicButtonLabel } from 'vs/base/common/labels';
Expand Down Expand Up @@ -65,11 +65,6 @@ interface ButtonMapEntry {
readonly index: number;
}

const dialogErrorIcon = registerCodicon('dialog-error', Codicon.error);
const dialogWarningIcon = registerCodicon('dialog-warning', Codicon.warning);
const dialogInfoIcon = registerCodicon('dialog-info', Codicon.info);
const dialogCloseIcon = registerCodicon('dialog-close', Codicon.close);

export class Dialog extends Disposable {
private readonly element: HTMLElement;
private readonly shadowElement: HTMLElement;
Expand Down Expand Up @@ -350,17 +345,17 @@ export class Dialog extends Disposable {

const spinModifierClassName = 'codicon-modifier-spin';

this.iconElement.classList.remove(...dialogErrorIcon.classNamesArray, ...dialogWarningIcon.classNamesArray, ...dialogInfoIcon.classNamesArray, ...Codicon.loading.classNamesArray, spinModifierClassName);
this.iconElement.classList.remove(...Codicon.dialogError.classNamesArray, ...Codicon.dialogWarning.classNamesArray, ...Codicon.dialogInfo.classNamesArray, ...Codicon.loading.classNamesArray, spinModifierClassName);

if (this.options.icon) {
this.iconElement.classList.add(...this.options.icon.classNamesArray);
} else {
switch (this.options.type) {
case 'error':
this.iconElement.classList.add(...dialogErrorIcon.classNamesArray);
this.iconElement.classList.add(...Codicon.dialogError.classNamesArray);
break;
case 'warning':
this.iconElement.classList.add(...dialogWarningIcon.classNamesArray);
this.iconElement.classList.add(...Codicon.dialogWarning.classNamesArray);
break;
case 'pending':
this.iconElement.classList.add(...Codicon.loading.classNamesArray, spinModifierClassName);
Expand All @@ -369,7 +364,7 @@ export class Dialog extends Disposable {
case 'info':
case 'question':
default:
this.iconElement.classList.add(...dialogInfoIcon.classNamesArray);
this.iconElement.classList.add(...Codicon.dialogInfo.classNamesArray);
break;
}
}
Expand All @@ -378,7 +373,7 @@ export class Dialog extends Disposable {
if (!this.options.disableCloseAction) {
const actionBar = this._register(new ActionBar(this.toolbarContainer, {}));

const action = this._register(new Action('dialog.close', nls.localize('dialogClose', "Close Dialog"), dialogCloseIcon.classNames, true, async () => {
const action = this._register(new Action('dialog.close', nls.localize('dialogClose', "Close Dialog"), Codicon.dialogClose.classNames, true, async () => {
resolve({
button: this.options.cancelId || 0,
checkboxChecked: this.checkbox ? this.checkbox.checked : undefined
Expand Down
13 changes: 6 additions & 7 deletions src/vs/base/browser/ui/menu/menu.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import { AnchorAlignment, layout, LayoutAnchorPosition } from 'vs/base/browser/u
import { DomScrollableElement } from 'vs/base/browser/ui/scrollbar/scrollableElement';
import { EmptySubmenuAction, IAction, IActionRunner, Separator, SubmenuAction } from 'vs/base/common/actions';
import { RunOnceScheduler } from 'vs/base/common/async';
import { Codicon, registerCodicon } from 'vs/base/common/codicons';
import { Codicon } from 'vs/base/common/codicons';
import { Color } from 'vs/base/common/color';
import { Event } from 'vs/base/common/event';
import { stripIcons } from 'vs/base/common/iconLabels';
Expand All @@ -30,8 +30,7 @@ import * as nls from 'vs/nls';
export const MENU_MNEMONIC_REGEX = /\(&([^\s&])\)|(^|[^&])&([^\s&])/;
export const MENU_ESCAPED_MNEMONIC_REGEX = /(&amp;)?(&amp;)([^\s&])/g;

const menuSelectionIcon = registerCodicon('menu-selection', Codicon.check);
const menuSubmenuIcon = registerCodicon('menu-submenu', Codicon.chevronRight);


export enum Direction {
Right,
Expand Down Expand Up @@ -520,7 +519,7 @@ class BaseMenuActionViewItem extends BaseActionViewItem {
}
}

this.check = append(this.item, $('span.menu-item-check' + menuSelectionIcon.cssSelector));
this.check = append(this.item, $('span.menu-item-check' + Codicon.menuSelection.cssSelector));
this.check.setAttribute('role', 'none');

this.label = append(this.item, $('span.action-label'));
Expand Down Expand Up @@ -771,7 +770,7 @@ class SubmenuMenuActionViewItem extends BaseMenuActionViewItem {
this.item.tabIndex = 0;
this.item.setAttribute('aria-haspopup', 'true');
this.updateAriaExpanded('false');
this.submenuIndicator = append(this.item, $('span.submenu-indicator' + menuSubmenuIcon.cssSelector));
this.submenuIndicator = append(this.item, $('span.submenu-indicator' + Codicon.menuSubmenu.cssSelector));
this.submenuIndicator.setAttribute('aria-hidden', 'true');
}

Expand Down Expand Up @@ -1023,8 +1022,8 @@ let MENU_WIDGET_CSS: string = /* css */`
}
${formatRule(menuSelectionIcon)}
${formatRule(menuSubmenuIcon)}
${formatRule(Codicon.menuSelection)}
${formatRule(Codicon.menuSubmenu)}
.monaco-menu .monaco-action-bar {
text-align: right;
Expand Down
6 changes: 2 additions & 4 deletions src/vs/base/browser/ui/menu/menubar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import { cleanMnemonic, Direction, IMenuOptions, IMenuStyles, Menu, MENU_ESCAPED
import { ActionRunner, IAction, IActionRunner, Separator, SubmenuAction } from 'vs/base/common/actions';
import { asArray } from 'vs/base/common/arrays';
import { RunOnceScheduler } from 'vs/base/common/async';
import { Codicon, registerCodicon } from 'vs/base/common/codicons';
import { Codicon } from 'vs/base/common/codicons';
import { Emitter, Event } from 'vs/base/common/event';
import { KeyCode, KeyMod, ScanCode, ScanCodeUtils } from 'vs/base/common/keyCodes';
import { ResolvedKeybinding } from 'vs/base/common/keybindings';
Expand All @@ -25,8 +25,6 @@ import * as nls from 'vs/nls';

const $ = DOM.$;

const menuBarMoreIcon = registerCodicon('menubar-more', Codicon.more);

export interface IMenuBarOptions {
enableMnemonics?: boolean;
disableAltFocus?: boolean;
Expand Down Expand Up @@ -317,7 +315,7 @@ export class MenuBar extends Disposable {
const label = this.isCompact ? nls.localize('mAppMenu', 'Application Menu') : nls.localize('mMore', 'More');
const title = this.isCompact ? label : undefined;
const buttonElement = $('div.menubar-menu-button', { 'role': 'menuitem', 'tabindex': this.isCompact ? 0 : -1, 'aria-label': label, 'title': title, 'aria-haspopup': true });
const titleElement = $('div.menubar-menu-title.toolbar-toggle-more' + menuBarMoreIcon.cssSelector, { 'role': 'none', 'aria-hidden': true });
const titleElement = $('div.menubar-menu-title.toolbar-toggle-more' + Codicon.menuBarMore.cssSelector, { 'role': 'none', 'aria-hidden': true });

buttonElement.appendChild(titleElement);
this.container.appendChild(buttonElement);
Expand Down
9 changes: 4 additions & 5 deletions src/vs/base/browser/ui/scrollbar/horizontalScrollbar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,11 @@ import { AbstractScrollbar, ISimplifiedMouseEvent, ScrollbarHost } from 'vs/base
import { ScrollableElementResolvedOptions } from 'vs/base/browser/ui/scrollbar/scrollableElementOptions';
import { ARROW_IMG_SIZE } from 'vs/base/browser/ui/scrollbar/scrollbarArrow';
import { ScrollbarState } from 'vs/base/browser/ui/scrollbar/scrollbarState';
import { Codicon, registerCodicon } from 'vs/base/common/codicons';
import { Codicon } from 'vs/base/common/codicons';
import { INewScrollPosition, Scrollable, ScrollbarVisibility, ScrollEvent } from 'vs/base/common/scrollable';


const scrollbarButtonLeftIcon = registerCodicon('scrollbar-button-left', Codicon.triangleLeft);
const scrollbarButtonRightIcon = registerCodicon('scrollbar-button-right', Codicon.triangleRight);


export class HorizontalScrollbar extends AbstractScrollbar {

Expand Down Expand Up @@ -43,7 +42,7 @@ export class HorizontalScrollbar extends AbstractScrollbar {

this._createArrow({
className: 'scra',
icon: scrollbarButtonLeftIcon,
icon: Codicon.scrollbarButtonLeft,
top: scrollbarDelta,
left: arrowDelta,
bottom: undefined,
Expand All @@ -55,7 +54,7 @@ export class HorizontalScrollbar extends AbstractScrollbar {

this._createArrow({
className: 'scra',
icon: scrollbarButtonRightIcon,
icon: Codicon.scrollbarButtonRight,
top: scrollbarDelta,
left: undefined,
bottom: undefined,
Expand Down
9 changes: 4 additions & 5 deletions src/vs/base/browser/ui/scrollbar/verticalScrollbar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,10 @@ import { AbstractScrollbar, ISimplifiedMouseEvent, ScrollbarHost } from 'vs/base
import { ScrollableElementResolvedOptions } from 'vs/base/browser/ui/scrollbar/scrollableElementOptions';
import { ARROW_IMG_SIZE } from 'vs/base/browser/ui/scrollbar/scrollbarArrow';
import { ScrollbarState } from 'vs/base/browser/ui/scrollbar/scrollbarState';
import { Codicon, registerCodicon } from 'vs/base/common/codicons';
import { Codicon } from 'vs/base/common/codicons';
import { INewScrollPosition, Scrollable, ScrollbarVisibility, ScrollEvent } from 'vs/base/common/scrollable';

const scrollbarButtonUpIcon = registerCodicon('scrollbar-button-up', Codicon.triangleUp);
const scrollbarButtonDownIcon = registerCodicon('scrollbar-button-down', Codicon.triangleDown);


export class VerticalScrollbar extends AbstractScrollbar {

Expand Down Expand Up @@ -43,7 +42,7 @@ export class VerticalScrollbar extends AbstractScrollbar {

this._createArrow({
className: 'scra',
icon: scrollbarButtonUpIcon,
icon: Codicon.scrollbarButtonUp,
top: arrowDelta,
left: scrollbarDelta,
bottom: undefined,
Expand All @@ -55,7 +54,7 @@ export class VerticalScrollbar extends AbstractScrollbar {

this._createArrow({
className: 'scra',
icon: scrollbarButtonDownIcon,
icon: Codicon.scrollbarButtonDown,
top: undefined,
left: scrollbarDelta,
bottom: arrowDelta,
Expand Down
6 changes: 3 additions & 3 deletions src/vs/base/browser/ui/toolbar/toolbar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,15 @@ import { ActionBar, ActionsOrientation, IActionViewItemProvider } from 'vs/base/
import { AnchorAlignment } from 'vs/base/browser/ui/contextview/contextview';
import { DropdownMenuActionViewItem } from 'vs/base/browser/ui/dropdown/dropdownActionViewItem';
import { Action, IAction, IActionRunner, SubmenuAction } from 'vs/base/common/actions';
import { Codicon, CSSIcon, registerCodicon } from 'vs/base/common/codicons';
import { Codicon, CSSIcon } from 'vs/base/common/codicons';
import { EventMultiplexer } from 'vs/base/common/event';
import { ResolvedKeybinding } from 'vs/base/common/keybindings';
import { Disposable, DisposableStore } from 'vs/base/common/lifecycle';
import { withNullAsUndefined } from 'vs/base/common/types';
import 'vs/css!./toolbar';
import * as nls from 'vs/nls';

const toolBarMoreIcon = registerCodicon('toolbar-more', Codicon.more);


export interface IToolBarOptions {
orientation?: ActionsOrientation;
Expand Down Expand Up @@ -73,7 +73,7 @@ export class ToolBar extends Disposable {
actionViewItemProvider: this.options.actionViewItemProvider,
actionRunner: this.actionRunner,
keybindingProvider: this.options.getKeyBinding,
classNames: CSSIcon.asClassNameArray(options.moreIcon ?? toolBarMoreIcon),
classNames: CSSIcon.asClassNameArray(options.moreIcon ?? Codicon.toolBarMore),
anchorAlignmentProvider: this.options.anchorAlignmentProvider,
menuAsChild: !!this.options.renderDropdownAsChildElement
}
Expand Down
16 changes: 8 additions & 8 deletions src/vs/base/browser/ui/tree/abstractTree.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ import { ElementsDragAndDropData } from 'vs/base/browser/ui/list/listView';
import { DefaultKeyboardNavigationDelegate, IListOptions, IListStyles, isInputElement, isMonacoEditor, List, MouseController } from 'vs/base/browser/ui/list/listWidget';
import { getVisibleState, isFilterResult } from 'vs/base/browser/ui/tree/indexTreeModel';
import { ICollapseStateChangeEvent, ITreeContextMenuEvent, ITreeDragAndDrop, ITreeEvent, ITreeFilter, ITreeModel, ITreeModelSpliceEvent, ITreeMouseEvent, ITreeNavigator, ITreeNode, ITreeRenderer, TreeDragOverBubble, TreeFilterResult, TreeMouseEventTarget, TreeVisibility } from 'vs/base/browser/ui/tree/tree';
import { treeFilterClearIcon, treeFilterOnTypeOffIcon, treeFilterOnTypeOnIcon, treeItemExpandedIcon } from 'vs/base/browser/ui/tree/treeIcons';
import { distinct, equals, firstOrDefault, range } from 'vs/base/common/arrays';
import { disposableTimeout } from 'vs/base/common/async';
import { Codicon } from 'vs/base/common/codicons';
import { SetMap } from 'vs/base/common/collections';
import { Emitter, Event, EventBufferer, Relay } from 'vs/base/common/event';
import { fuzzyScore, FuzzyScore } from 'vs/base/common/filters';
Expand Down Expand Up @@ -400,7 +400,7 @@ class TreeRenderer<T, TFilterData, TRef, TTemplateData> implements IListRenderer
}

private renderTwistie(node: ITreeNode<T, TFilterData>, templateData: ITreeListTemplateData<TTemplateData>) {
templateData.twistie.classList.remove(...treeItemExpandedIcon.classNamesArray);
templateData.twistie.classList.remove(...Codicon.treeItemExpanded.classNamesArray);

let twistieRendered = false;

Expand All @@ -410,7 +410,7 @@ class TreeRenderer<T, TFilterData, TRef, TTemplateData> implements IListRenderer

if (node.collapsible && (!this.hideTwistiesOfChildlessElements || node.visibleChildrenCount > 0)) {
if (!twistieRendered) {
templateData.twistie.classList.add(...treeItemExpandedIcon.classNamesArray);
templateData.twistie.classList.add(...Codicon.treeItemExpanded.classNamesArray);
}

templateData.twistie.classList.add('collapsible');
Expand Down Expand Up @@ -663,7 +663,7 @@ class TypeFilterController<T, TFilterData> implements IDisposable {
this.updateFilterOnTypeTitleAndIcon();
this.disposables.add(addDisposableListener(this.filterOnTypeDomNode, 'input', () => this.onDidChangeFilterOnType()));

this.clearDomNode = append(controls, $<HTMLInputElement>('button.clear' + treeFilterClearIcon.cssSelector));
this.clearDomNode = append(controls, $<HTMLInputElement>('button.clear' + Codicon.treeFilterClear.cssSelector));
this.clearDomNode.tabIndex = -1;
this.clearDomNode.title = localize('clear', "Clear");

Expand Down Expand Up @@ -876,12 +876,12 @@ class TypeFilterController<T, TFilterData> implements IDisposable {

private updateFilterOnTypeTitleAndIcon(): void {
if (this.filterOnType) {
this.filterOnTypeDomNode.classList.remove(...treeFilterOnTypeOffIcon.classNamesArray);
this.filterOnTypeDomNode.classList.add(...treeFilterOnTypeOnIcon.classNamesArray);
this.filterOnTypeDomNode.classList.remove(...Codicon.treeFilterOnTypeOff.classNamesArray);
this.filterOnTypeDomNode.classList.add(...Codicon.treeFilterOnTypeOn.classNamesArray);
this.filterOnTypeDomNode.title = localize('disable filter on type', "Disable Filter on Type");
} else {
this.filterOnTypeDomNode.classList.remove(...treeFilterOnTypeOnIcon.classNamesArray);
this.filterOnTypeDomNode.classList.add(...treeFilterOnTypeOffIcon.classNamesArray);
this.filterOnTypeDomNode.classList.remove(...Codicon.treeFilterOnTypeOn.classNamesArray);
this.filterOnTypeDomNode.classList.add(...Codicon.treeFilterOnTypeOff.classNamesArray);
this.filterOnTypeDomNode.title = localize('enable filter on type', "Enable Filter on Type");
}
}
Expand Down
10 changes: 5 additions & 5 deletions src/vs/base/browser/ui/tree/asyncDataTree.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ import { ICompressedTreeElement, ICompressedTreeNode } from 'vs/base/browser/ui/
import { getVisibleState, isFilterResult } from 'vs/base/browser/ui/tree/indexTreeModel';
import { CompressibleObjectTree, ICompressibleKeyboardNavigationLabelProvider, ICompressibleObjectTreeOptions, ICompressibleTreeRenderer, IObjectTreeOptions, IObjectTreeSetChildrenOptions, ObjectTree } from 'vs/base/browser/ui/tree/objectTree';
import { IAsyncDataSource, ICollapseStateChangeEvent, ITreeContextMenuEvent, ITreeDragAndDrop, ITreeElement, ITreeEvent, ITreeFilter, ITreeMouseEvent, ITreeNode, ITreeRenderer, ITreeSorter, TreeError, TreeFilterResult, TreeVisibility, WeakMapper } from 'vs/base/browser/ui/tree/tree';
import { treeItemLoadingIcon } from 'vs/base/browser/ui/tree/treeIcons';
import { CancelablePromise, createCancelablePromise, Promises, timeout } from 'vs/base/common/async';
import { Codicon } from 'vs/base/common/codicons';
import { isPromiseCanceledError, onUnexpectedError } from 'vs/base/common/errors';
import { Emitter, Event } from 'vs/base/common/event';
import { Iterable } from 'vs/base/common/iterator';
Expand Down Expand Up @@ -109,10 +109,10 @@ class AsyncDataTreeRenderer<TInput, T, TFilterData, TTemplateData> implements IT

renderTwistie(element: IAsyncDataTreeNode<TInput, T>, twistieElement: HTMLElement): boolean {
if (element.slow) {
twistieElement.classList.add(...treeItemLoadingIcon.classNamesArray);
twistieElement.classList.add(...Codicon.treeItemLoading.classNamesArray);
return true;
} else {
twistieElement.classList.remove(...treeItemLoadingIcon.classNamesArray);
twistieElement.classList.remove(...Codicon.treeItemLoading.classNamesArray);
return false;
}
}
Expand Down Expand Up @@ -1073,10 +1073,10 @@ class CompressibleAsyncDataTreeRenderer<TInput, T, TFilterData, TTemplateData> i

renderTwistie(element: IAsyncDataTreeNode<TInput, T>, twistieElement: HTMLElement): boolean {
if (element.slow) {
twistieElement.classList.add(...treeItemLoadingIcon.classNamesArray);
twistieElement.classList.add(...Codicon.treeItemLoading.classNamesArray);
return true;
} else {
twistieElement.classList.remove(...treeItemLoadingIcon.classNamesArray);
twistieElement.classList.remove(...Codicon.treeItemLoading.classNamesArray);
return false;
}
}
Expand Down
Loading

0 comments on commit cfebd1d

Please sign in to comment.