diff --git a/src/vs/code/electron-main/sharedProcess.ts b/src/vs/code/electron-main/sharedProcess.ts index 8076c873cc682..c11152d8b6318 100644 --- a/src/vs/code/electron-main/sharedProcess.ts +++ b/src/vs/code/electron-main/sharedProcess.ts @@ -38,6 +38,7 @@ export class SharedProcess implements ISharedProcess { images: false, webaudio: false, webgl: false, + nodeIntegration: true, disableBlinkFeatures: 'Auxclick' // do NOT change, allows us to identify this window as shared-process in the process explorer } }); diff --git a/src/vs/code/electron-main/window.ts b/src/vs/code/electron-main/window.ts index b933aa0f33ba9..509aab26f74e6 100644 --- a/src/vs/code/electron-main/window.ts +++ b/src/vs/code/electron-main/window.ts @@ -133,7 +133,8 @@ export class CodeWindow extends Disposable implements ICodeWindow { // want to enforce that Code stays in the foreground. This triggers a disable_hidden_ // flag that Electron provides via patch: // https://github.com/electron/libchromiumcontent/blob/master/patches/common/chromium/disable_hidden.patch - backgroundThrottling: false + backgroundThrottling: false, + nodeIntegration: true } }; diff --git a/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts b/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts index 48e77cdadce56..95d335cf987e9 100644 --- a/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts @@ -393,7 +393,8 @@ export class WebviewElement extends Disposable implements Webview { this._webview = document.createElement('webview'); this._webview.setAttribute('partition', `webview${Date.now()}`); - this._webview.setAttribute('webpreferences', 'contextIsolation=yes'); + + this._webview.setAttribute('webpreferences', 'contextIsolation=yes,nodeIntegration=yes'); this._webview.style.flex = '0 1'; this._webview.style.width = '0'; diff --git a/test/electron/index.js b/test/electron/index.js index ebd97e3b98bf0..4c1d42d56a7c4 100644 --- a/test/electron/index.js +++ b/test/electron/index.js @@ -106,7 +106,8 @@ app.on('ready', () => { show: false, webPreferences: { backgroundThrottling: false, - webSecurity: false + webSecurity: false, + nodeIntegration: true } });