Skip to content

Commit 8d3e7c6

Browse files
author
Benjamin Pasero
committed
debt - crash reporter is electron only
1 parent ff5eabc commit 8d3e7c6

9 files changed

Lines changed: 25 additions & 55 deletions

File tree

src/vs/platform/electron/electron-main/electronMainService.ts

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*--------------------------------------------------------------------------------------------*/
55

66
import { IWindowsMainService } from 'vs/platform/windows/electron-main/windows';
7-
import { MessageBoxOptions, MessageBoxReturnValue, shell, OpenDevToolsOptions, SaveDialogOptions, SaveDialogReturnValue, OpenDialogOptions, OpenDialogReturnValue } from 'electron';
7+
import { MessageBoxOptions, MessageBoxReturnValue, shell, OpenDevToolsOptions, SaveDialogOptions, SaveDialogReturnValue, OpenDialogOptions, OpenDialogReturnValue, CrashReporterStartOptions, crashReporter } from 'electron';
88
import { ILifecycleMainService } from 'vs/platform/lifecycle/electron-main/lifecycleMainService';
99
import { OpenContext, INativeOpenDialogOptions } from 'vs/platform/windows/common/windows';
1010
import { isMacintosh } from 'vs/base/common/platform';
@@ -143,6 +143,21 @@ export class ElectronMainService implements ElectronServiceInterface {
143143

144144
//#endregion
145145

146+
//#region Connectivity
147+
148+
async resolveProxy(windowId: number, url: string): Promise<string | undefined> {
149+
return new Promise(resolve => {
150+
const window = this.windowsMainService.getWindowById(windowId);
151+
if (window && window.win && window.win.webContents && window.win.webContents.session) {
152+
window.win.webContents.session.resolveProxy(url, proxy => resolve(proxy));
153+
} else {
154+
resolve();
155+
}
156+
});
157+
}
158+
159+
//#endregion
160+
146161
//#region Development
147162

148163
async openDevTools(windowId: number, options?: OpenDevToolsOptions): Promise<void> {
@@ -164,19 +179,8 @@ export class ElectronMainService implements ElectronServiceInterface {
164179
}
165180
}
166181

167-
//#endregion
168-
169-
//#region Connectivity
170-
171-
async resolveProxy(windowId: number, url: string): Promise<string | undefined> {
172-
return new Promise(resolve => {
173-
const window = this.windowsMainService.getWindowById(windowId);
174-
if (window && window.win && window.win.webContents && window.win.webContents.session) {
175-
window.win.webContents.session.resolveProxy(url, proxy => resolve(proxy));
176-
} else {
177-
resolve();
178-
}
179-
});
182+
async startCrashReporter(windowId: number, options: CrashReporterStartOptions): Promise<void> {
183+
crashReporter.start(options);
180184
}
181185

182186
//#endregion

src/vs/platform/electron/node/electron.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* Licensed under the MIT License. See License.txt in the project root for license information.
44
*--------------------------------------------------------------------------------------------*/
55

6-
import { MessageBoxOptions, MessageBoxReturnValue, OpenDevToolsOptions, SaveDialogOptions, OpenDialogOptions, OpenDialogReturnValue, SaveDialogReturnValue } from 'electron';
6+
import { MessageBoxOptions, MessageBoxReturnValue, OpenDevToolsOptions, SaveDialogOptions, OpenDialogOptions, OpenDialogReturnValue, SaveDialogReturnValue, CrashReporterStartOptions } from 'electron';
77
import { createDecorator } from 'vs/platform/instantiation/common/instantiation';
88
import { INativeOpenDialogOptions } from 'vs/platform/windows/common/windows';
99
import { ISerializableCommandAction } from 'vs/platform/actions/common/actions';
@@ -46,6 +46,7 @@ export interface IElectronService {
4646
// Development
4747
openDevTools(options?: OpenDevToolsOptions): Promise<void>;
4848
toggleDevTools(): Promise<void>;
49+
startCrashReporter(options: CrashReporterStartOptions): Promise<void>;
4950

5051
// Connectivity
5152
resolveProxy(url: string): Promise<string | undefined>;

src/vs/platform/windows/common/windows.ts

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -33,16 +33,6 @@ export interface IEnterWorkspaceResult {
3333
backupPath?: string;
3434
}
3535

36-
export interface CrashReporterStartOptions {
37-
companyName?: string;
38-
submitURL: string;
39-
productName?: string;
40-
uploadToServer?: boolean;
41-
ignoreSystemCrashHandler?: boolean;
42-
extra?: any;
43-
crashesDirectory?: string;
44-
}
45-
4636
export interface OpenDialogOptions {
4737
title?: string;
4838
defaultPath?: string;
@@ -122,9 +112,6 @@ export interface IWindowsService {
122112
openExtensionDevelopmentHostWindow(args: ParsedArgs, env: IProcessEnvironment): Promise<void>;
123113
getWindows(): Promise<{ id: number; workspace?: IWorkspaceIdentifier; folderUri?: ISingleFolderWorkspaceIdentifier; title: string; filename?: string; }[]>;
124114
getActiveWindowId(): Promise<number | undefined>;
125-
126-
// TODO: this is a bit backwards
127-
startCrashReporter(config: CrashReporterStartOptions): Promise<void>;
128115
}
129116

130117
export const IWindowService = createDecorator<IWindowService>('windowService');

src/vs/platform/windows/common/windowsIpc.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,6 @@ export class WindowsChannel implements IServerChannel {
9090
case 'whenSharedProcessReady': return this.service.whenSharedProcessReady();
9191
case 'toggleSharedProcess': return this.service.toggleSharedProcess();
9292
case 'getActiveWindowId': return this.service.getActiveWindowId();
93-
case 'startCrashReporter': return this.service.startCrashReporter(arg);
9493
}
9594

9695
throw new Error(`Call not found: ${command}`);

src/vs/platform/windows/electron-browser/windowsService.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
import { Event } from 'vs/base/common/event';
77
import { IChannel } from 'vs/base/parts/ipc/common/ipc';
8-
import { IWindowsService, IEnterWorkspaceResult, CrashReporterStartOptions, IURIToOpen, IOpenSettings } from 'vs/platform/windows/common/windows';
8+
import { IWindowsService, IEnterWorkspaceResult, IURIToOpen, IOpenSettings } from 'vs/platform/windows/common/windows';
99
import { IWorkspaceIdentifier, ISingleFolderWorkspaceIdentifier, reviveWorkspaceIdentifier } from 'vs/platform/workspaces/common/workspaces';
1010
import { IRecentlyOpened, IRecent, isRecentWorkspace } from 'vs/platform/history/common/history';
1111
import { URI } from 'vs/base/common/uri';
@@ -152,8 +152,4 @@ export class WindowsService implements IWindowsService {
152152
getActiveWindowId(): Promise<number | undefined> {
153153
return this.channel.call('getActiveWindowId');
154154
}
155-
156-
startCrashReporter(config: CrashReporterStartOptions): Promise<void> {
157-
return this.channel.call('startCrashReporter', config);
158-
}
159155
}

src/vs/platform/windows/electron-main/legacyWindowsMainService.ts

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { assign } from 'vs/base/common/objects';
88
import { URI } from 'vs/base/common/uri';
99
import { IWindowsService, OpenContext, IEnterWorkspaceResult, IOpenSettings, IURIToOpen } from 'vs/platform/windows/common/windows';
1010
import { IEnvironmentService, ParsedArgs } from 'vs/platform/environment/common/environment';
11-
import { crashReporter, app, Menu, MessageBoxReturnValue, SaveDialogReturnValue, OpenDialogReturnValue, CrashReporterStartOptions, BrowserWindow, MessageBoxOptions, SaveDialogOptions, OpenDialogOptions } from 'electron';
11+
import { app, Menu, MessageBoxReturnValue, SaveDialogReturnValue, OpenDialogReturnValue, BrowserWindow, MessageBoxOptions, SaveDialogOptions, OpenDialogOptions } from 'electron';
1212
import { Event } from 'vs/base/common/event';
1313
import { IURLService, IURLHandler } from 'vs/platform/url/common/url';
1414
import { IWindowsMainService, ISharedProcess, ICodeWindow } from 'vs/platform/windows/electron-main/windows';
@@ -243,12 +243,6 @@ export class LegacyWindowsMainService extends Disposable implements IWindowsServ
243243
return this._activeWindowId;
244244
}
245245

246-
async startCrashReporter(config: CrashReporterStartOptions): Promise<void> {
247-
this.logService.trace('windowsService#startCrashReporter');
248-
249-
crashReporter.start(config);
250-
}
251-
252246
async whenSharedProcessReady(): Promise<void> {
253247
this.logService.trace('windowsService#whenSharedProcessReady');
254248

src/vs/workbench/browser/web.simpleservices.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import { Event } from 'vs/base/common/event';
1010
import { ILogService } from 'vs/platform/log/common/log';
1111
import { Disposable } from 'vs/base/common/lifecycle';
1212
import { IStorageService, StorageScope } from 'vs/platform/storage/common/storage';
13-
import { IWindowService, IEnterWorkspaceResult, IURIToOpen, IWindowsService, IOpenSettings, IWindowSettings, CrashReporterStartOptions } from 'vs/platform/windows/common/windows';
13+
import { IWindowService, IEnterWorkspaceResult, IURIToOpen, IWindowsService, IOpenSettings, IWindowSettings } from 'vs/platform/windows/common/windows';
1414
import { IWorkspaceIdentifier, ISingleFolderWorkspaceIdentifier } from 'vs/platform/workspaces/common/workspaces';
1515
import { IRecentlyOpened, IRecent, isRecentFile, isRecentFolder } from 'vs/platform/history/common/history';
1616
import { IWorkspaceContextService, WorkbenchState } from 'vs/platform/workspace/common/workspace';
@@ -320,11 +320,6 @@ export class SimpleWindowsService implements IWindowsService {
320320
getActiveWindowId(): Promise<number | undefined> {
321321
return Promise.resolve(0);
322322
}
323-
324-
// TODO: this is a bit backwards
325-
startCrashReporter(_config: CrashReporterStartOptions): Promise<void> {
326-
return Promise.resolve();
327-
}
328323
}
329324

330325
registerSingleton(IWindowsService, SimpleWindowsService);

src/vs/workbench/electron-browser/window.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,6 @@ export class ElectronWindow extends Disposable {
8989

9090
constructor(
9191
@IEditorService private readonly editorService: EditorServiceImpl,
92-
@IWindowsService private readonly windowsService: IWindowsService,
9392
@IWindowService private readonly windowService: IWindowService,
9493
@IConfigurationService private readonly configurationService: IConfigurationService,
9594
@ITitleService private readonly titleService: ITitleService,
@@ -567,7 +566,7 @@ export class ElectronWindow extends Disposable {
567566
crashReporter.start(deepClone(options));
568567

569568
// start crash reporter in the main process
570-
return this.windowsService.startCrashReporter(options);
569+
return this.electronService.startCrashReporter(options);
571570
}
572571

573572
private onAddFoldersRequest(request: IAddFoldersRequest): void {

src/vs/workbench/test/workbenchTestServices.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ import { IModeService } from 'vs/editor/common/services/modeService';
3535
import { IHistoryService } from 'vs/workbench/services/history/common/history';
3636
import { IInstantiationService, ServicesAccessor } from 'vs/platform/instantiation/common/instantiation';
3737
import { TestConfigurationService } from 'vs/platform/configuration/test/common/testConfigurationService';
38-
import { IWindowsService, IWindowService, IEnterWorkspaceResult, MenuBarVisibility, IURIToOpen, IOpenSettings, IWindowConfiguration, CrashReporterStartOptions } from 'vs/platform/windows/common/windows';
38+
import { IWindowsService, IWindowService, IEnterWorkspaceResult, MenuBarVisibility, IURIToOpen, IOpenSettings, IWindowConfiguration } from 'vs/platform/windows/common/windows';
3939
import { TestWorkspace } from 'vs/platform/workspace/test/common/testWorkspace';
4040
import { createTextBufferFactoryFromStream } from 'vs/editor/common/model/textModel';
4141
import { IEnvironmentService, ParsedArgs } from 'vs/platform/environment/common/environment';
@@ -1389,11 +1389,6 @@ export class TestWindowsService implements IWindowsService {
13891389
getActiveWindowId(): Promise<number | undefined> {
13901390
return Promise.resolve(undefined);
13911391
}
1392-
1393-
// TODO: this is a bit backwards
1394-
startCrashReporter(_config: CrashReporterStartOptions): Promise<void> {
1395-
return Promise.resolve();
1396-
}
13971392
}
13981393

13991394
export class TestTextResourceConfigurationService implements ITextResourceConfigurationService {

0 commit comments

Comments
 (0)