From 2124bf22d0f00ed4a8d88b36735fad3bdd3052d3 Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Tue, 6 Mar 2018 14:36:20 -0800 Subject: [PATCH] Move find widget dispose to widget itself --- src/vs/editor/contrib/find/simpleFindWidget.ts | 8 ++++++++ src/vs/workbench/parts/html/browser/webview.ts | 6 +++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/vs/editor/contrib/find/simpleFindWidget.ts b/src/vs/editor/contrib/find/simpleFindWidget.ts index 91200d7a3b8..88727a5dc73 100644 --- a/src/vs/editor/contrib/find/simpleFindWidget.ts +++ b/src/vs/editor/contrib/find/simpleFindWidget.ts @@ -149,6 +149,14 @@ export abstract class SimpleFindWidget extends Widget { this._findInput.style(inputStyles); } + dipose() { + super.dispose(); + + if (this._domNode && this._domNode.parentElement) { + this._domNode.parentElement.removeChild(this._domNode); + } + } + public getDomNode(): HTMLElement { return this._domNode; } diff --git a/src/vs/workbench/parts/html/browser/webview.ts b/src/vs/workbench/parts/html/browser/webview.ts index 33a00e419d3..ebeb734569b 100644 --- a/src/vs/workbench/parts/html/browser/webview.ts +++ b/src/vs/workbench/parts/html/browser/webview.ts @@ -204,9 +204,9 @@ export class Webview { if (this._webview.parentElement) { this._webview.parentElement.removeChild(this._webview); - const findWidgetDomNode = this._webviewFindWidget.getDomNode(); - findWidgetDomNode.parentElement.removeChild(findWidgetDomNode); } + + this._webviewFindWidget.dispose(); } private readonly _onDidClickLink = new Emitter(); @@ -331,7 +331,7 @@ export class Webview { this._environmentService.extensionDevelopmentPath ]); registerFileProtocol(contents, 'vscode-workspace-resource', () => - this._options.localResourceRoots.map(uri => uri.fsPath) + (this._options.localResourceRoots || []).map(uri => uri.fsPath) ); } -- GitLab