diff --git a/src/vs/workbench/browser/web.main.ts b/src/vs/workbench/browser/web.main.ts index 980ba375b1b..e824d04e5db 100644 --- a/src/vs/workbench/browser/web.main.ts +++ b/src/vs/workbench/browser/web.main.ts @@ -160,7 +160,7 @@ class BrowserMain extends Disposable { serviceCollection.set(IWorkbenchEnvironmentService, environmentService); // Product - const productService: IProductService = { _serviceBrand: undefined, ...product }; + const productService: IProductService = { _serviceBrand: undefined, ...product, ...this.configuration.productConfiguration }; serviceCollection.set(IProductService, productService); // Remote diff --git a/src/vs/workbench/workbench.web.api.ts b/src/vs/workbench/workbench.web.api.ts index 9aa26b82897..e2be11afcc1 100644 --- a/src/vs/workbench/workbench.web.api.ts +++ b/src/vs/workbench/workbench.web.api.ts @@ -17,6 +17,7 @@ import { Event, Emitter } from 'vs/base/common/event'; import { Disposable, IDisposable } from 'vs/base/common/lifecycle'; import { IWorkspaceProvider, IWorkspace } from 'vs/workbench/services/host/browser/browserHostService'; import { CommandsRegistry } from 'vs/platform/commands/common/commands'; +import { IProductConfiguration } from 'vs/platform/product/common/productService'; interface IResourceUriProvider { (uri: URI): URI; @@ -282,15 +283,25 @@ interface IWorkbenchConstructionOptions { */ readonly commands?: readonly ICommand[]; + /** + * Optional default layout to apply on first time the workspace is opened. + */ + readonly defaultLayout?: IDefaultLayout; + + //#endregion + + + //#region Branding + /** * Optional home indicator to appear above the hamburger menu in the activity bar. */ readonly homeIndicator?: IHomeIndicator; /** - * Optional default layout to apply on first time the workspace is opened. + * Optional override for the product configuration properties. */ - readonly defaultLayout?: IDefaultLayout; + readonly productConfiguration?: Partial; //#endregion @@ -438,8 +449,9 @@ export { ICommand, commands, - // Home Indicator + // Branding IHomeIndicator, + IProductConfiguration, // Default layout IDefaultView,