From 50751af48e58a373121997fed05da16bf1a5787b Mon Sep 17 00:00:00 2001 From: rebornix Date: Fri, 7 Feb 2020 11:12:34 -0800 Subject: [PATCH] Remove initial dimension update --- src/vs/editor/browser/widget/codeEditorWidget.ts | 9 ++------- .../contrib/webview/browser/baseWebviewElement.ts | 14 +------------- .../webview/browser/dynamicWebviewEditorOverlay.ts | 5 +---- .../workbench/contrib/webview/browser/pre/main.js | 1 - .../workbench/contrib/webview/browser/webview.ts | 1 - 5 files changed, 4 insertions(+), 26 deletions(-) diff --git a/src/vs/editor/browser/widget/codeEditorWidget.ts b/src/vs/editor/browser/widget/codeEditorWidget.ts index 0cd054b7a91..c9d8439196c 100644 --- a/src/vs/editor/browser/widget/codeEditorWidget.ts +++ b/src/vs/editor/browser/widget/codeEditorWidget.ts @@ -1579,13 +1579,8 @@ export class CodeEditorWidget extends Disposable implements editorBrowser.ICodeE this._modelData = null; this._domElement.removeAttribute('data-mode-id'); - if (removeDomNode) { - try { - // @todo Peng - this._domElement.removeChild(removeDomNode); - } catch { - - } + if (removeDomNode && this._domElement.contains(removeDomNode)) { + this._domElement.removeChild(removeDomNode); } return model; diff --git a/src/vs/workbench/contrib/webview/browser/baseWebviewElement.ts b/src/vs/workbench/contrib/webview/browser/baseWebviewElement.ts index ef31c4d9471..cc044bd3249 100644 --- a/src/vs/workbench/contrib/webview/browser/baseWebviewElement.ts +++ b/src/vs/workbench/contrib/webview/browser/baseWebviewElement.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { addClass, Dimension } from 'vs/base/browser/dom'; +import { addClass } from 'vs/base/browser/dom'; import { Emitter } from 'vs/base/common/event'; import { Disposable, IDisposable } from 'vs/base/common/lifecycle'; import { IEnvironmentService } from 'vs/platform/environment/common/environment'; @@ -28,7 +28,6 @@ export const enum WebviewMessageChannels { loadResource = 'load-resource', loadLocalhost = 'load-localhost', webviewReady = 'webview-ready', - didSetInitialDimension = 'did-set-initial-dimension', containsScripts = 'content-contains-scripts', wheel = 'did-scroll-wheel', ack = 'speed-test-ack' @@ -126,10 +125,6 @@ export abstract class BaseWebview extends Disposable { this.handleFocusChange(true); })); - this._register(this.on(WebviewMessageChannels.didSetInitialDimension, (dimension: Dimension) => { - this.handleInitialDimension(dimension); - })); - this._register(this.on(WebviewMessageChannels.containsScripts, (containsScript: boolean) => { this.containsScript = containsScript; })); @@ -202,9 +197,6 @@ export abstract class BaseWebview extends Disposable { private readonly _onDidFocus = this._register(new Emitter()); public readonly onDidFocus = this._onDidFocus.event; - private readonly _onDidSetInitialDimension = this._register(new Emitter()); - public readonly onDidSetInitialDimension = this._onDidSetInitialDimension.event; - public containsScript: boolean = false; public sendMessage(data: any): void { @@ -321,10 +313,6 @@ export abstract class BaseWebview extends Disposable { } } - protected handleInitialDimension(dimension: Dimension) { - this._onDidSetInitialDimension.fire(dimension); - } - private handleKeyDown(event: IKeydownEvent) { // Create a fake KeyboardEvent from the data provided const emulatedKeyboardEvent = new KeyboardEvent('keydown', event); diff --git a/src/vs/workbench/contrib/webview/browser/dynamicWebviewEditorOverlay.ts b/src/vs/workbench/contrib/webview/browser/dynamicWebviewEditorOverlay.ts index abe5acf3e1c..e6c6b34a9b2 100644 --- a/src/vs/workbench/contrib/webview/browser/dynamicWebviewEditorOverlay.ts +++ b/src/vs/workbench/contrib/webview/browser/dynamicWebviewEditorOverlay.ts @@ -16,12 +16,9 @@ import { IMouseWheelEvent } from 'vs/base/browser/mouseEvent'; * Webview editor overlay that creates and destroys the underlying webview as needed. */ export class DynamicWebviewEditorOverlay extends Disposable implements WebviewEditorOverlay { - private readonly _onDidWheel= this._register(new Emitter()); + private readonly _onDidWheel = this._register(new Emitter()); public readonly onDidWheel = this._onDidWheel.event; - private readonly _onDidSetInitialDimension = this._register(new Emitter()); - public readonly onDidSetInitialDimension = this._onDidSetInitialDimension.event; - private readonly _pendingMessages = new Set(); private readonly _webview = this._register(new MutableDisposable()); private readonly _webviewEvents = this._register(new DisposableStore()); diff --git a/src/vs/workbench/contrib/webview/browser/pre/main.js b/src/vs/workbench/contrib/webview/browser/pre/main.js index 3b9042986fd..320f16bb27b 100644 --- a/src/vs/workbench/contrib/webview/browser/pre/main.js +++ b/src/vs/workbench/contrib/webview/browser/pre/main.js @@ -506,7 +506,6 @@ newFrame.contentWindow.focus(); } - host.postMessage('did-set-initial-dimension', { width: newFrame.contentWindow.document.body.scrollWidth, height: newFrame.contentWindow.document.body.scrollHeight }); host.postMessage('content-contains-scripts', checkScripts(newFrame.contentWindow.document)); contentWindow.addEventListener('scroll', handleInnerScroll); diff --git a/src/vs/workbench/contrib/webview/browser/webview.ts b/src/vs/workbench/contrib/webview/browser/webview.ts index 9d09c43abf0..288d033a9fe 100644 --- a/src/vs/workbench/contrib/webview/browser/webview.ts +++ b/src/vs/workbench/contrib/webview/browser/webview.ts @@ -80,7 +80,6 @@ export interface Webview extends IDisposable { containsScript: boolean; readonly onDidFocus: Event; - readonly onDidSetInitialDimension: Event; readonly onDidClickLink: Event; readonly onDidScroll: Event<{ scrollYPercentage: number }>; readonly onDidWheel: Event; -- GitLab