mirror of
https://github.com/microsoft/vscode.git
synced 2026-05-19 14:49:48 +01:00
@@ -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<void> {
|
||||
private get _whenReady(): Promise<void> {
|
||||
this.window = new BrowserWindow({
|
||||
show: false,
|
||||
backgroundColor: getBackgroundColor(this.stateService),
|
||||
@@ -99,7 +97,7 @@ export class SharedProcess implements ISharedProcess {
|
||||
}, 0);
|
||||
});
|
||||
|
||||
return new TPromise<void>((c, e) => {
|
||||
return new Promise<void>(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<void> {
|
||||
return this.barrier.wait().then(() => this._whenReady);
|
||||
async whenReady(): Promise<void> {
|
||||
await this.barrier.wait();
|
||||
await this._whenReady;
|
||||
}
|
||||
|
||||
toggle(): void {
|
||||
|
||||
Reference in New Issue
Block a user