diff --git a/src/vs/code/electron-main/sharedProcess.ts b/src/vs/code/electron-main/sharedProcess.ts index b937a61d079..01358983fb3 100644 --- a/src/vs/code/electron-main/sharedProcess.ts +++ b/src/vs/code/electron-main/sharedProcess.ts @@ -6,7 +6,6 @@ import { assign } from 'vs/base/common/objects'; import { memoize } from 'vs/base/common/decorators'; import { IEnvironmentService } from 'vs/platform/environment/common/environment'; -import { TPromise } from 'vs/base/common/winjs.base'; import { IProcessEnvironment } from 'vs/base/common/platform'; import { BrowserWindow, ipcMain } from 'electron'; import { ISharedProcess } from 'vs/platform/windows/electron-main/windows'; @@ -30,11 +29,10 @@ export class SharedProcess implements ISharedProcess { @ILifecycleService private readonly lifecycleService: ILifecycleService, @IStateService private readonly stateService: IStateService, @ILogService private readonly logService: ILogService - ) { - } + ) { } @memoize - private get _whenReady(): TPromise { + private get _whenReady(): Promise { this.window = new BrowserWindow({ show: false, backgroundColor: getBackgroundColor(this.stateService), @@ -99,7 +97,7 @@ export class SharedProcess implements ISharedProcess { }, 0); }); - return new TPromise((c, e) => { + return new Promise(c => { ipcMain.once('handshake:hello', ({ sender }: { sender: any }) => { sender.send('handshake:hey there', { sharedIPCHandle: this.environmentService.sharedIPCHandle, @@ -117,8 +115,9 @@ export class SharedProcess implements ISharedProcess { this.barrier.open(); } - whenReady(): TPromise { - return this.barrier.wait().then(() => this._whenReady); + async whenReady(): Promise { + await this.barrier.wait(); + await this._whenReady; } toggle(): void {