diff --git a/src/vs/code/electron-browser/issue/issueReporterMain.ts b/src/vs/code/electron-browser/issue/issueReporterMain.ts index cd5c7bb1251..790b2886a72 100644 --- a/src/vs/code/electron-browser/issue/issueReporterMain.ts +++ b/src/vs/code/electron-browser/issue/issueReporterMain.ts @@ -784,7 +784,7 @@ export class IssueReporter extends Disposable { url = baseUrl + `&body=${encodeURIComponent(localize('pasteData', "We have written the needed data into your clipboard because it was too large to send. Please paste."))}`; } - shell.openExternal(url); + ipcRenderer.send('vscode:openExternal', url); return true; } diff --git a/src/vs/platform/issue/electron-main/issueService.ts b/src/vs/platform/issue/electron-main/issueService.ts index bef6d5a627b..9e7f4ddd8dc 100644 --- a/src/vs/platform/issue/electron-main/issueService.ts +++ b/src/vs/platform/issue/electron-main/issueService.ts @@ -16,6 +16,7 @@ import { PerformanceInfo, SystemInfo, IDiagnosticsService } from 'vs/platform/di import { IEnvironmentService } from 'vs/platform/environment/common/environment'; import { isMacintosh, IProcessEnvironment } from 'vs/base/common/platform'; import { ILogService } from 'vs/platform/log/common/log'; +import { IWindowsService } from 'vs/platform/windows/common/windows'; const DEFAULT_BACKGROUND_COLOR = '#1E1E1E'; @@ -31,7 +32,8 @@ export class IssueService implements IIssueService { @IEnvironmentService private environmentService: IEnvironmentService, @ILaunchService private launchService: ILaunchService, @ILogService private logService: ILogService, - @IDiagnosticsService private diagnosticsService: IDiagnosticsService + @IDiagnosticsService private diagnosticsService: IDiagnosticsService, + @IWindowsService private windowsService: IWindowsService ) { } openReporter(data: IssueReporterData): TPromise { @@ -51,6 +53,10 @@ export class IssueService implements IIssueService { this._issueParentWindow.webContents.send('vscode:runAction', { id: arg, from: 'issueReporter' }); }); + ipcMain.on('vscode:openExternal', (_, arg) => { + this.windowsService.openExternal(arg); + }); + ipcMain.on('vscode:closeIssueReporter', (event: Event) => { if (this._issueWindow) { this._issueWindow.close();