diff --git a/src/sql/workbench/api/browser/mainThreadModalDialog.ts b/src/sql/workbench/api/browser/mainThreadModalDialog.ts index 9074b327c5..015daec03a 100644 --- a/src/sql/workbench/api/browser/mainThreadModalDialog.ts +++ b/src/sql/workbench/api/browser/mainThreadModalDialog.ts @@ -5,7 +5,7 @@ import 'vs/css!sql/media/icons/common-icons'; -import { WebViewDialog } from 'sql/workbench/parts/webview/electron-browser/webViewDialog'; +import { WebViewDialog } from 'sql/workbench/parts/webview/browser/webViewDialog'; import { MainThreadModalDialogShape, SqlMainContext, SqlExtHostContext, ExtHostModalDialogsShape } from 'sql/workbench/api/common/sqlExtHost.protocol'; import { IExtHostContext } from 'vs/workbench/api/common/extHost.protocol'; diff --git a/src/sql/workbench/browser/modelComponents/components.contribution.ts b/src/sql/workbench/browser/modelComponents/components.contribution.ts index 076b3b303d..53eba6f630 100644 --- a/src/sql/workbench/browser/modelComponents/components.contribution.ts +++ b/src/sql/workbench/browser/modelComponents/components.contribution.ts @@ -16,7 +16,7 @@ import ButtonComponent from './button.component'; import CheckBoxComponent from './checkbox.component'; import TreeComponent from './tree.component'; import RadioButtonComponent from './radioButton.component'; -import WebViewComponent from '../../electron-browser/modelComponents/webview.component'; +import WebViewComponent from './webview.component'; import TableComponent from './table.component'; import TextComponent from './text.component'; import LoadingComponent from './loadingComponent.component'; diff --git a/src/sql/workbench/electron-browser/modelComponents/media/webview.css b/src/sql/workbench/browser/modelComponents/media/webview.css similarity index 100% rename from src/sql/workbench/electron-browser/modelComponents/media/webview.css rename to src/sql/workbench/browser/modelComponents/media/webview.css diff --git a/src/sql/workbench/electron-browser/modelComponents/webview.component.ts b/src/sql/workbench/browser/modelComponents/webview.component.ts similarity index 92% rename from src/sql/workbench/electron-browser/modelComponents/webview.component.ts rename to src/sql/workbench/browser/modelComponents/webview.component.ts index 5b0520cd96..fc5dffa7da 100644 --- a/src/sql/workbench/electron-browser/modelComponents/webview.component.ts +++ b/src/sql/workbench/browser/modelComponents/webview.component.ts @@ -13,13 +13,12 @@ import { addDisposableListener, EventType } from 'vs/base/browser/dom'; import { URI, UriComponents } from 'vs/base/common/uri'; import { IOpenerService } from 'vs/platform/opener/common/opener'; import { IWorkspaceContextService } from 'vs/platform/workspace/common/workspace'; +import { IContextKey } from 'vs/platform/contextkey/common/contextkey'; +import { WebviewContentOptions, IWebviewService, WebviewElement } from 'vs/workbench/contrib/webview/common/webview'; +import { generateUuid } from 'vs/base/common/uuid'; import { ComponentBase } from 'sql/workbench/browser/modelComponents/componentBase'; import { IComponent, IComponentDescriptor, IModelStore, ComponentEventType } from 'sql/workbench/browser/modelComponents/interfaces'; -import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; -import { IContextKey } from 'vs/platform/contextkey/common/contextkey'; -import { ElectronWebviewBasedWebview } from 'vs/workbench/contrib/webview/electron-browser/webviewElement'; -import { WebviewContentOptions } from 'vs/workbench/contrib/webview/common/webview'; function reviveWebviewOptions(options: vscode.WebviewOptions): vscode.WebviewOptions { return { @@ -38,7 +37,7 @@ export default class WebViewComponent extends ComponentBase implements IComponen private static readonly standardSupportedLinkSchemes = ['http', 'https', 'mailto']; - private _webview: ElectronWebviewBasedWebview; + private _webview: WebviewElement; private _renderedHtml: string; private _extensionLocationUri: URI; private _ready: Promise; @@ -46,12 +45,14 @@ export default class WebViewComponent extends ComponentBase implements IComponen protected contextKey: IContextKey; protected findInputFocusContextKey: IContextKey; + private readonly id = generateUuid(); + constructor( @Inject(forwardRef(() => ChangeDetectorRef)) changeRef: ChangeDetectorRef, @Inject(forwardRef(() => ElementRef)) el: ElementRef, @Inject(IOpenerService) private readonly _openerService: IOpenerService, @Inject(IWorkspaceContextService) private readonly _contextService: IWorkspaceContextService, - @Inject(IInstantiationService) private instantiationService: IInstantiationService, + @Inject(IWebviewService) private readonly webviewService: IWebviewService ) { super(changeRef, el); } @@ -65,7 +66,7 @@ export default class WebViewComponent extends ComponentBase implements IComponen } private _createWebview(): void { - this._webview = this.instantiationService.createInstance(ElectronWebviewBasedWebview, + this._webview = this.webviewService.createWebview(this.id, { allowSvgs: true }, diff --git a/src/sql/workbench/parts/dashboard/browser/containers/dashboardContainer.contribution.ts b/src/sql/workbench/parts/dashboard/browser/containers/dashboardContainer.contribution.ts index a35137147d..0dd99260ea 100644 --- a/src/sql/workbench/parts/dashboard/browser/containers/dashboardContainer.contribution.ts +++ b/src/sql/workbench/parts/dashboard/browser/containers/dashboardContainer.contribution.ts @@ -11,7 +11,7 @@ import { registerContainer, generateContainerTypeSchemaProperties } from 'sql/pl import { NAV_SECTION, validateNavSectionContributionAndRegisterIcon } from 'sql/workbench/parts/dashboard/browser/containers/dashboardNavSection.contribution'; import { WIDGETS_CONTAINER, validateWidgetContainerContribution } from 'sql/workbench/parts/dashboard/browser/containers/dashboardWidgetContainer.contribution'; import { GRID_CONTAINER, validateGridContainerContribution } from 'sql/workbench/parts/dashboard/browser/containers/dashboardGridContainer.contribution'; -import { WEBVIEW_CONTAINER } from 'sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.contribution'; +import { WEBVIEW_CONTAINER } from 'sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.contribution'; const containerTypes = [ WIDGETS_CONTAINER, diff --git a/src/sql/workbench/parts/dashboard/browser/containers/dashboardGridContainer.component.ts b/src/sql/workbench/parts/dashboard/browser/containers/dashboardGridContainer.component.ts index 90611b949d..1a29b41116 100644 --- a/src/sql/workbench/parts/dashboard/browser/containers/dashboardGridContainer.component.ts +++ b/src/sql/workbench/parts/dashboard/browser/containers/dashboardGridContainer.component.ts @@ -11,7 +11,7 @@ import { CommonServiceInterface } from 'sql/platform/bootstrap/browser/commonSer import { TabConfig, WidgetConfig } from 'sql/workbench/parts/dashboard/browser/core/dashboardWidget'; import { DashboardWidgetWrapper } from 'sql/workbench/parts/dashboard/browser/contents/dashboardWidgetWrapper.component'; import { DashboardTab } from 'sql/workbench/parts/dashboard/browser/core/interfaces'; -import { WebviewContent } from 'sql/workbench/parts/dashboard/electron-browser/contents/webviewContent.component'; +import { WebviewContent } from 'sql/workbench/parts/dashboard/browser/contents/webviewContent.component'; import { TabChild } from 'sql/base/browser/ui/panel/tab.component'; import { Event, Emitter } from 'vs/base/common/event'; diff --git a/src/sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.component.ts b/src/sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.component.ts similarity index 93% rename from src/sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.component.ts rename to src/sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.component.ts index 15dbdc0105..c6077eb8d8 100644 --- a/src/sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.component.ts +++ b/src/sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.component.ts @@ -11,7 +11,7 @@ import { Event, Emitter } from 'vs/base/common/event'; import { DashboardTab } from 'sql/workbench/parts/dashboard/browser/core/interfaces'; import { TabConfig } from 'sql/workbench/parts/dashboard/browser/core/dashboardWidget'; -import { WebviewContent } from 'sql/workbench/parts/dashboard/electron-browser/contents/webviewContent.component'; +import { WebviewContent } from 'sql/workbench/parts/dashboard/browser/contents/webviewContent.component'; import { TabChild } from 'sql/base/browser/ui/panel/tab.component'; @Component({ diff --git a/src/sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.contribution.ts b/src/sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.contribution.ts similarity index 100% rename from src/sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.contribution.ts rename to src/sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.contribution.ts diff --git a/src/sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.css b/src/sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.css similarity index 100% rename from src/sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.css rename to src/sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.css diff --git a/src/sql/workbench/parts/dashboard/browser/contents/dashboardWidgetWrapper.component.ts b/src/sql/workbench/parts/dashboard/browser/contents/dashboardWidgetWrapper.component.ts index c3d2fc3014..de8897ed6b 100644 --- a/src/sql/workbench/parts/dashboard/browser/contents/dashboardWidgetWrapper.component.ts +++ b/src/sql/workbench/parts/dashboard/browser/contents/dashboardWidgetWrapper.component.ts @@ -22,7 +22,7 @@ import { PropertiesWidgetComponent } from 'sql/workbench/parts/dashboard/browser import { ExplorerWidget } from 'sql/workbench/parts/dashboard/browser/widgets/explorer/explorerWidget.component'; import { TasksWidget } from 'sql/workbench/parts/dashboard/browser/widgets/tasks/tasksWidget.component'; import { InsightsWidget } from 'sql/workbench/parts/dashboard/browser/widgets/insights/insightsWidget.component'; -import { WebviewWidget } from 'sql/workbench/parts/dashboard/electron-browser/widgets/webview/webviewWidget.component'; +import { WebviewWidget } from 'sql/workbench/parts/dashboard/browser/widgets/webview/webviewWidget.component'; import { CommonServiceInterface } from 'sql/platform/bootstrap/browser/commonServiceInterface.service'; diff --git a/src/sql/workbench/parts/dashboard/electron-browser/contents/webviewContent.component.ts b/src/sql/workbench/parts/dashboard/browser/contents/webviewContent.component.ts similarity index 82% rename from src/sql/workbench/parts/dashboard/electron-browser/contents/webviewContent.component.ts rename to src/sql/workbench/parts/dashboard/browser/contents/webviewContent.component.ts index 59ff1ce55e..90fc676d90 100644 --- a/src/sql/workbench/parts/dashboard/electron-browser/contents/webviewContent.component.ts +++ b/src/sql/workbench/parts/dashboard/browser/contents/webviewContent.component.ts @@ -15,10 +15,9 @@ import { DashboardServiceInterface } from 'sql/workbench/parts/dashboard/browser import { CommonServiceInterface } from 'sql/platform/bootstrap/browser/commonServiceInterface.service'; import { IDashboardWebview, IDashboardViewService } from 'sql/platform/dashboard/common/dashboardViewService'; import { AngularDisposable } from 'sql/base/browser/lifecycle'; -import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import * as azdata from 'azdata'; -import { ElectronWebviewBasedWebview } from 'vs/workbench/contrib/webview/electron-browser/webviewElement'; +import { WebviewElement, IWebviewService } from 'vs/workbench/contrib/webview/common/webview'; @Component({ template: '', @@ -33,14 +32,14 @@ export class WebviewContent extends AngularDisposable implements OnInit, IDashbo public readonly onMessage: Event = this._onMessage.event; private _onMessageDisposable: IDisposable; - private _webview: ElectronWebviewBasedWebview; + private _webview: WebviewElement; private _html: string; constructor( - @Inject(forwardRef(() => CommonServiceInterface)) private _dashboardService: DashboardServiceInterface, - @Inject(forwardRef(() => ElementRef)) private _el: ElementRef, - @Inject(IDashboardViewService) private dashboardViewService: IDashboardViewService, - @Inject(IInstantiationService) private instantiationService: IInstantiationService + @Inject(forwardRef(() => CommonServiceInterface)) private readonly _dashboardService: DashboardServiceInterface, + @Inject(forwardRef(() => ElementRef)) private readonly _el: ElementRef, + @Inject(IDashboardViewService) private readonly dashboardViewService: IDashboardViewService, + @Inject(IWebviewService) private readonly webviewService: IWebviewService ) { super(); } @@ -100,7 +99,7 @@ export class WebviewContent extends AngularDisposable implements OnInit, IDashbo this._onMessageDisposable.dispose(); } - this._webview = this.instantiationService.createInstance(ElectronWebviewBasedWebview, + this._webview = this.webviewService.createWebview(this.id, {}, { allowScripts: true diff --git a/src/sql/workbench/parts/dashboard/electron-browser/contents/webviewContent.css b/src/sql/workbench/parts/dashboard/browser/contents/webviewContent.css similarity index 100% rename from src/sql/workbench/parts/dashboard/electron-browser/contents/webviewContent.css rename to src/sql/workbench/parts/dashboard/browser/contents/webviewContent.css diff --git a/src/sql/workbench/parts/dashboard/browser/core/dashboardHelper.ts b/src/sql/workbench/parts/dashboard/browser/core/dashboardHelper.ts index 6b0a562d31..9c58dd6f8d 100644 --- a/src/sql/workbench/parts/dashboard/browser/core/dashboardHelper.ts +++ b/src/sql/workbench/parts/dashboard/browser/core/dashboardHelper.ts @@ -15,7 +15,7 @@ import { ConnectionManagementInfo } from 'sql/platform/connection/common/connect import { DashboardServiceInterface } from 'sql/workbench/parts/dashboard/browser/services/dashboardServiceInterface.service'; import { WIDGETS_CONTAINER } from 'sql/workbench/parts/dashboard/browser/containers/dashboardWidgetContainer.contribution'; import { GRID_CONTAINER } from 'sql/workbench/parts/dashboard/browser/containers/dashboardGridContainer.contribution'; -import { WEBVIEW_CONTAINER } from 'sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.contribution'; +import { WEBVIEW_CONTAINER } from 'sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.contribution'; import { MODELVIEW_CONTAINER } from 'sql/workbench/parts/dashboard/browser/containers/dashboardModelViewContainer.contribution'; import { CONTROLHOST_CONTAINER } from 'sql/workbench/parts/dashboard/browser/containers/dashboardControlHostContainer.contribution'; import { NAV_SECTION } from 'sql/workbench/parts/dashboard/browser/containers/dashboardNavSection.contribution'; diff --git a/src/sql/workbench/parts/dashboard/browser/dashboard.module.ts b/src/sql/workbench/parts/dashboard/browser/dashboard.module.ts index 71f08c0bcc..ee6441ab5a 100644 --- a/src/sql/workbench/parts/dashboard/browser/dashboard.module.ts +++ b/src/sql/workbench/parts/dashboard/browser/dashboard.module.ts @@ -37,14 +37,14 @@ import { DashboardComponent } from 'sql/workbench/parts/dashboard/browser/dashbo import { DashboardWidgetWrapper } from 'sql/workbench/parts/dashboard/browser/contents/dashboardWidgetWrapper.component'; import { DashboardWidgetContainer } from 'sql/workbench/parts/dashboard/browser/containers/dashboardWidgetContainer.component'; import { DashboardGridContainer } from 'sql/workbench/parts/dashboard/browser/containers/dashboardGridContainer.component'; -import { DashboardWebviewContainer } from 'sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.component'; +import { DashboardWebviewContainer } from 'sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.component'; import { DashboardModelViewContainer } from 'sql/workbench/parts/dashboard/browser/containers/dashboardModelViewContainer.component'; import { DashboardErrorContainer } from 'sql/workbench/parts/dashboard/browser/containers/dashboardErrorContainer.component'; import { DashboardNavSection } from 'sql/workbench/parts/dashboard/browser/containers/dashboardNavSection.component'; import { WidgetContent } from 'sql/workbench/parts/dashboard/browser/contents/widgetContent.component'; import { ModelViewContent } from 'sql/workbench/browser/modelComponents/modelViewContent.component'; import { ModelComponentWrapper } from 'sql/workbench/browser/modelComponents/modelComponentWrapper.component'; -import { WebviewContent } from 'sql/workbench/parts/dashboard/electron-browser/contents/webviewContent.component'; +import { WebviewContent } from 'sql/workbench/parts/dashboard/browser/contents/webviewContent.component'; import { BreadcrumbComponent } from 'sql/base/browser/ui/breadcrumb/breadcrumb.component'; import { IBreadcrumbService } from 'sql/base/browser/ui/breadcrumb/interfaces'; import { DashboardHomeContainer } from 'sql/workbench/parts/dashboard/browser/containers/dashboardHomeContainer.component'; @@ -84,7 +84,7 @@ import { PropertiesWidgetComponent } from 'sql/workbench/parts/dashboard/browser import { ExplorerWidget } from 'sql/workbench/parts/dashboard/browser/widgets/explorer/explorerWidget.component'; import { TasksWidget } from 'sql/workbench/parts/dashboard/browser/widgets/tasks/tasksWidget.component'; import { InsightsWidget } from 'sql/workbench/parts/dashboard/browser/widgets/insights/insightsWidget.component'; -import { WebviewWidget } from 'sql/workbench/parts/dashboard/electron-browser/widgets/webview/webviewWidget.component'; +import { WebviewWidget } from 'sql/workbench/parts/dashboard/browser/widgets/webview/webviewWidget.component'; import { JobStepsViewComponent } from 'sql/workbench/parts/jobManagement/browser/jobStepsView.component'; import { IInstantiationService, _util } from 'vs/platform/instantiation/common/instantiation'; import { ILogService } from 'vs/platform/log/common/log'; diff --git a/src/sql/workbench/parts/dashboard/electron-browser/widgets/webview/webviewWidget.component.ts b/src/sql/workbench/parts/dashboard/browser/widgets/webview/webviewWidget.component.ts similarity index 81% rename from src/sql/workbench/parts/dashboard/electron-browser/widgets/webview/webviewWidget.component.ts rename to src/sql/workbench/parts/dashboard/browser/widgets/webview/webviewWidget.component.ts index 86c0f6a878..e2998cfc77 100644 --- a/src/sql/workbench/parts/dashboard/electron-browser/widgets/webview/webviewWidget.component.ts +++ b/src/sql/workbench/parts/dashboard/browser/widgets/webview/webviewWidget.component.ts @@ -15,8 +15,7 @@ import { CommonServiceInterface } from 'sql/platform/bootstrap/browser/commonSer import { IDashboardWebview, IDashboardViewService } from 'sql/platform/dashboard/common/dashboardViewService'; import * as azdata from 'azdata'; -import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; -import { ElectronWebviewBasedWebview } from 'vs/workbench/contrib/webview/electron-browser/webviewElement'; +import { WebviewElement, IWebviewService } from 'vs/workbench/contrib/webview/common/webview'; interface IWebviewWidgetConfig { id: string; @@ -31,18 +30,18 @@ const selector = 'webview-widget'; export class WebviewWidget extends DashboardWidget implements IDashboardWidget, OnInit, IDashboardWebview { private _id: string; - private _webview: ElectronWebviewBasedWebview; + private _webview: WebviewElement; private _html: string; private _onMessage = new Emitter(); public readonly onMessage: Event = this._onMessage.event; private _onMessageDisposable: IDisposable; constructor( - @Inject(forwardRef(() => CommonServiceInterface)) private _dashboardService: DashboardServiceInterface, - @Inject(WIDGET_CONFIG) protected _config: WidgetConfig, - @Inject(forwardRef(() => ElementRef)) private _el: ElementRef, - @Inject(IDashboardViewService) private dashboardViewService: IDashboardViewService, - @Inject(IInstantiationService) private instantiationService: IInstantiationService, + @Inject(forwardRef(() => CommonServiceInterface)) private readonly _dashboardService: DashboardServiceInterface, + @Inject(WIDGET_CONFIG) protected readonly _config: WidgetConfig, + @Inject(forwardRef(() => ElementRef)) private readonly _el: ElementRef, + @Inject(IDashboardViewService) private readonly dashboardViewService: IDashboardViewService, + @Inject(IWebviewService) private readonly webviewService: IWebviewService ) { super(); this._id = (_config.widget[selector] as IWebviewWidgetConfig).id; @@ -99,7 +98,7 @@ export class WebviewWidget extends DashboardWidget implements IDashboardWidget, this._onMessageDisposable.dispose(); } - this._webview = this.instantiationService.createInstance(ElectronWebviewBasedWebview, + this._webview = this.webviewService.createWebview(this.id, {}, { allowScripts: true, diff --git a/src/sql/workbench/parts/dashboard/electron-browser/widgets/webview/webviewWidget.contribution.ts b/src/sql/workbench/parts/dashboard/browser/widgets/webview/webviewWidget.contribution.ts similarity index 100% rename from src/sql/workbench/parts/dashboard/electron-browser/widgets/webview/webviewWidget.contribution.ts rename to src/sql/workbench/parts/dashboard/browser/widgets/webview/webviewWidget.contribution.ts diff --git a/src/sql/workbench/parts/webview/electron-browser/webViewDialog.ts b/src/sql/workbench/parts/webview/browser/webViewDialog.ts similarity index 91% rename from src/sql/workbench/parts/webview/electron-browser/webViewDialog.ts rename to src/sql/workbench/parts/webview/browser/webViewDialog.ts index 1f9f8a5c34..0788d06f1b 100644 --- a/src/sql/workbench/parts/webview/electron-browser/webViewDialog.ts +++ b/src/sql/workbench/parts/webview/browser/webViewDialog.ts @@ -15,11 +15,11 @@ import { IContextKeyService } from 'vs/platform/contextkey/common/contextkey'; import { IClipboardService } from 'vs/platform/clipboard/common/clipboardService'; import { localize } from 'vs/nls'; import { IDisposable, toDisposable } from 'vs/base/common/lifecycle'; -import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; -import { ElectronWebviewBasedWebview } from 'vs/workbench/contrib/webview/electron-browser/webviewElement'; import { IWorkbenchLayoutService } from 'vs/workbench/services/layout/browser/layoutService'; import * as DOM from 'vs/base/browser/dom'; import { ILogService } from 'vs/platform/log/common/log'; +import { IWebviewService, WebviewElement } from 'vs/workbench/contrib/webview/common/webview'; +import { generateUuid } from 'vs/base/common/uuid'; export class WebViewDialog extends Modal { @@ -27,7 +27,7 @@ export class WebViewDialog extends Modal { private _okButton: Button; private _okLabel: string; private _closeLabel: string; - private _webview: ElectronWebviewBasedWebview; + private _webview: WebviewElement; private _html: string; private _headerTitle: string; @@ -38,6 +38,8 @@ export class WebViewDialog extends Modal { private contentDisposables: IDisposable[] = []; private _onMessage = new Emitter(); + private readonly id = generateUuid(); + constructor( @IThemeService themeService: IThemeService, @IClipboardService clipboardService: IClipboardService, @@ -45,7 +47,7 @@ export class WebViewDialog extends Modal { @ITelemetryService telemetryService: ITelemetryService, @IContextKeyService contextKeyService: IContextKeyService, @ILogService logService: ILogService, - @IInstantiationService private _instantiationService: IInstantiationService + @IWebviewService private readonly webviewService: IWebviewService ) { super('', TelemetryKeys.WebView, telemetryService, layoutService, clipboardService, themeService, logService, contextKeyService, { isFlyout: false, hasTitleIcon: true }); this._okLabel = localize('webViewDialog.ok', "OK"); @@ -87,7 +89,7 @@ export class WebViewDialog extends Modal { protected renderBody(container: HTMLElement) { this._body = DOM.append(container, DOM.$('div.webview-dialog')); - this._webview = this._instantiationService.createInstance(ElectronWebviewBasedWebview, + this._webview = this.webviewService.createWebview(this.id, {}, { allowScripts: true diff --git a/src/vs/workbench/workbench.main.ts b/src/vs/workbench/workbench.main.ts index 4fa10015a4..933c4bd735 100644 --- a/src/vs/workbench/workbench.main.ts +++ b/src/vs/workbench/workbench.main.ts @@ -508,7 +508,7 @@ import 'sql/workbench/common/actions.contribution'; import 'sql/workbench/parts/dashboard/browser/widgets/insights/insightsWidget.contribution'; import 'sql/workbench/parts/dashboard/browser/widgets/explorer/explorerWidget.contribution'; import 'sql/workbench/parts/dashboard/browser/widgets/tasks/tasksWidget.contribution'; -import 'sql/workbench/parts/dashboard/electron-browser/widgets/webview/webviewWidget.contribution'; +import 'sql/workbench/parts/dashboard/browser/widgets/webview/webviewWidget.contribution'; import 'sql/workbench/parts/dashboard/browser/dashboardConfig.contribution'; /* Model-based Views */ import 'sql/workbench/browser/modelComponents/components.contribution'; @@ -517,7 +517,7 @@ import 'sql/workbench/browser/modelComponents/modelViewEditor.contribution'; /* Notebook Editor */ import 'sql/workbench/parts/notebook/browser/notebook.contribution'; /* Containers */ -import 'sql/workbench/parts/dashboard/electron-browser/containers/dashboardWebviewContainer.contribution'; +import 'sql/workbench/parts/dashboard/browser/containers/dashboardWebviewContainer.contribution'; import 'sql/workbench/parts/dashboard/browser/containers/dashboardControlHostContainer.contribution'; import 'sql/workbench/parts/dashboard/browser/containers/dashboardGridContainer.contribution'; import 'sql/workbench/parts/dashboard/browser/containers/dashboardWidgetContainer.contribution';