From af4ea4d46a4936f90048e8bd79f6455f46fc47c9 Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Wed, 23 Oct 2019 19:37:19 -0700 Subject: [PATCH] Make sure we render border in split webviews --- src/vs/workbench/contrib/customEditor/browser/customEditors.ts | 2 +- .../contrib/webview/browser/dynamicWebviewEditorOverlay.ts | 2 +- src/vs/workbench/contrib/webview/browser/webviewElement.ts | 2 +- .../contrib/webview/electron-browser/webviewElement.ts | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/vs/workbench/contrib/customEditor/browser/customEditors.ts b/src/vs/workbench/contrib/customEditor/browser/customEditors.ts index 5cc01a28ffa..e9d1440016c 100644 --- a/src/vs/workbench/contrib/customEditor/browser/customEditors.ts +++ b/src/vs/workbench/contrib/customEditor/browser/customEditors.ts @@ -180,7 +180,7 @@ export class CustomEditorService extends Disposable implements ICustomEditorServ ): CustomFileEditorInput { const id = generateUuid(); const webview = new Lazy(() => { - return new UnownedDisposable(this.webviewService.createWebviewEditorOverlay(id, { customClasses: options ? options.customClasses : undefined }, {})); + return new UnownedDisposable(this.webviewService.createWebviewEditorOverlay(id, { customClasses: options?.customClasses }, {})); }); const input = this.instantiationService.createInstance(CustomFileEditorInput, resource, viewType, id, webview); if (group) { diff --git a/src/vs/workbench/contrib/webview/browser/dynamicWebviewEditorOverlay.ts b/src/vs/workbench/contrib/webview/browser/dynamicWebviewEditorOverlay.ts index d5365f700f3..945e6be9f4b 100644 --- a/src/vs/workbench/contrib/webview/browser/dynamicWebviewEditorOverlay.ts +++ b/src/vs/workbench/contrib/webview/browser/dynamicWebviewEditorOverlay.ts @@ -143,7 +143,7 @@ export class DynamicWebviewEditorOverlay extends Disposable implements WebviewEd } public get options(): WebviewOptions { return this._options; } - public set options(value: WebviewOptions) { this._options = value; } + public set options(value: WebviewOptions) { this._options = { customClasses: this._options.customClasses, ...value }; } public get contentOptions(): WebviewContentOptions { return this._contentOptions; } public set contentOptions(value: WebviewContentOptions) { diff --git a/src/vs/workbench/contrib/webview/browser/webviewElement.ts b/src/vs/workbench/contrib/webview/browser/webviewElement.ts index cf6eac444d4..d4926d849b4 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewElement.ts @@ -60,7 +60,7 @@ export class IFrameWebview extends BaseWebview implements Web protected createElement(options: WebviewOptions) { const element = document.createElement('iframe'); - element.className = `webview ${options.customClasses}`; + element.className = `webview ${options.customClasses || ''}`; element.sandbox.add('allow-scripts', 'allow-same-origin'); element.setAttribute('src', `${this.externalEndpoint}/index.html?id=${this.id}`); element.style.border = 'none'; diff --git a/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts b/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts index 270746b76c8..929b367097b 100644 --- a/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts @@ -296,7 +296,7 @@ export class ElectronWebviewBasedWebview extends BaseWebview impleme const element = document.createElement('webview'); element.setAttribute('partition', `webview${Date.now()}`); element.setAttribute('webpreferences', 'contextIsolation=yes'); - element.className = `webview ${options.customClasses}`; + element.className = `webview ${options.customClasses || ''}`; element.style.flex = '0 1'; element.style.width = '0'; -- GitLab