diff --git a/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts b/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts index 22065b584f52b848e0322acbaaf67e9b2995e56c..5afb9bf1931abbc1859701c2b7c6265571407ccc 100644 --- a/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts +++ b/src/vs/workbench/browser/parts/activitybar/activitybarActions.ts @@ -29,6 +29,7 @@ import { IViewletService } from 'vs/workbench/services/viewlet/browser/viewlet'; import { IContextKeyService } from 'vs/platform/contextkey/common/contextkey'; import { createAndFillInActionBarActions } from 'vs/platform/actions/browser/menuEntryActionViewItem'; import { ICommandService } from 'vs/platform/commands/common/commands'; +import { Codicon } from 'vs/base/common/codicons'; export class ViewletActivityAction extends ActivityAction { @@ -344,10 +345,10 @@ export class HomeAction extends Action { constructor( private readonly command: string, name: string, - icon: string, + icon: Codicon, @ICommandService private readonly commandService: ICommandService ) { - super('workbench.action.home', name, `codicon-${icon}`); + super('workbench.action.home', name, icon.classNames); } async run(): Promise { diff --git a/src/vs/workbench/browser/parts/activitybar/activitybarPart.ts b/src/vs/workbench/browser/parts/activitybar/activitybarPart.ts index c6241772562631712d07105ecafd8f0fc35bae83..52fc869b7d174a5282b52696dda3e320a4e625d7 100644 --- a/src/vs/workbench/browser/parts/activitybar/activitybarPart.ts +++ b/src/vs/workbench/browser/parts/activitybar/activitybarPart.ts @@ -42,7 +42,7 @@ import { IStorageKeysSyncRegistryService } from 'vs/platform/userDataSync/common import { getUserDataSyncStore } from 'vs/platform/userDataSync/common/userDataSync'; import { IProductService } from 'vs/platform/product/common/productService'; import { Before2D } from 'vs/workbench/browser/dnd'; -import { Codicon } from 'vs/base/common/codicons'; +import { Codicon, iconRegistry } from 'vs/base/common/codicons'; interface IPlaceholderViewlet { id: string; @@ -327,7 +327,12 @@ export class ActivitybarPart extends Part implements IActivityBarService { // Home action bar const homeIndicator = this.environmentService.options?.homeIndicator; if (homeIndicator) { - this.createHomeBar(homeIndicator.command, homeIndicator.title, homeIndicator.icon); + let codicon = iconRegistry.get(homeIndicator.icon); + if (!codicon) { + console.warn(`Unknown home indicator icon ${homeIndicator.icon}`); + codicon = Codicon.code; + } + this.createHomeBar(homeIndicator.command, homeIndicator.title, codicon); } // Install menubar if compact @@ -348,7 +353,7 @@ export class ActivitybarPart extends Part implements IActivityBarService { return this.content; } - private createHomeBar(command: string, title: string, icon: string): void { + private createHomeBar(command: string, title: string, icon: Codicon): void { const homeBarContainer = document.createElement('div'); homeBarContainer.setAttribute('aria-label', nls.localize('homeIndicator', "Home")); homeBarContainer.setAttribute('role', 'toolbar');