Skip to content

Commit 1f80e39

Browse files
author
Benjamin Pasero
committed
debt - extract node only window options
1 parent 00fa26e commit 1f80e39

5 files changed

Lines changed: 24 additions & 10 deletions

File tree

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

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@
66
import { Event } from 'vs/base/common/event';
77
import { IWindowsMainService } from 'vs/platform/windows/electron-main/windows';
88
import { MessageBoxOptions, MessageBoxReturnValue, shell, OpenDevToolsOptions, SaveDialogOptions, SaveDialogReturnValue, OpenDialogOptions, OpenDialogReturnValue, CrashReporterStartOptions, crashReporter, Menu, BrowserWindow, app } from 'electron';
9+
import { INativeOpenInWindowOptions } from 'vs/platform/windows/node/window';
910
import { ILifecycleMainService } from 'vs/platform/lifecycle/electron-main/lifecycleMainService';
10-
import { IOpenedWindow, OpenContext, IWindowOpenable, IOpenInWindowOptions, IOpenEmptyWindowOptions } from 'vs/platform/windows/common/windows';
11+
import { IOpenedWindow, OpenContext, IWindowOpenable, IOpenEmptyWindowOptions } from 'vs/platform/windows/common/windows';
1112
import { INativeOpenDialogOptions } from 'vs/platform/dialogs/node/dialogs';
1213
import { isMacintosh, IProcessEnvironment } from 'vs/base/common/platform';
1314
import { IElectronService } from 'vs/platform/electron/node/electron';
@@ -72,7 +73,7 @@ export class ElectronMainService implements AddFirstParameterToFunctions<IElectr
7273
this.windowsMainService.openEmptyWindow(OpenContext.API, options);
7374
}
7475

75-
async openInWindow(windowId: number, toOpen: IWindowOpenable[], options: IOpenInWindowOptions = Object.create(null)): Promise<void> {
76+
async openInWindow(windowId: number, toOpen: IWindowOpenable[], options: INativeOpenInWindowOptions = Object.create(null)): Promise<void> {
7677
if (toOpen.length > 0) {
7778
this.windowsMainService.open({
7879
context: OpenContext.API,

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

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@
66
import { Event } from 'vs/base/common/event';
77
import { MessageBoxOptions, MessageBoxReturnValue, OpenDevToolsOptions, SaveDialogOptions, OpenDialogOptions, OpenDialogReturnValue, SaveDialogReturnValue, CrashReporterStartOptions } from 'electron';
88
import { createDecorator } from 'vs/platform/instantiation/common/instantiation';
9-
import { IWindowOpenable, IOpenInWindowOptions, IOpenEmptyWindowOptions, IOpenedWindow } from 'vs/platform/windows/common/windows';
9+
import { IWindowOpenable, IOpenEmptyWindowOptions, IOpenedWindow } from 'vs/platform/windows/common/windows';
1010
import { INativeOpenDialogOptions } from 'vs/platform/dialogs/node/dialogs';
1111
import { ISerializableCommandAction } from 'vs/platform/actions/common/actions';
1212
import { ParsedArgs } from 'vscode-minimist';
1313
import { IProcessEnvironment } from 'vs/base/common/platform';
14+
import { INativeOpenInWindowOptions } from 'vs/platform/windows/node/window';
1415

1516
export const IElectronService = createDecorator<IElectronService>('electronService');
1617

@@ -33,7 +34,7 @@ export interface IElectronService {
3334
getActiveWindowId(): Promise<number | undefined>;
3435

3536
openEmptyWindow(options?: IOpenEmptyWindowOptions): Promise<void>;
36-
openInWindow(toOpen: IWindowOpenable[], options?: IOpenInWindowOptions): Promise<void>;
37+
openInWindow(toOpen: IWindowOpenable[], options?: INativeOpenInWindowOptions): Promise<void>;
3738

3839
toggleFullScreen(): Promise<void>;
3940

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

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,8 @@ export interface IOpenedWindow {
2222
export interface IOpenInWindowOptions {
2323
forceNewWindow?: boolean;
2424
forceReuseWindow?: boolean;
25-
diffMode?: boolean;
26-
addMode?: boolean;
27-
gotoLineMode?: boolean;
25+
2826
noRecentEntry?: boolean;
29-
waitMarkerFileURI?: URI;
3027
}
3128

3229
export interface IOpenEmptyWindowOptions {
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/*---------------------------------------------------------------------------------------------
2+
* Copyright (c) Microsoft Corporation. All rights reserved.
3+
* Licensed under the MIT License. See License.txt in the project root for license information.
4+
*--------------------------------------------------------------------------------------------*/
5+
6+
import { IOpenInWindowOptions } from 'vs/platform/windows/common/windows';
7+
import { URI } from 'vs/base/common/uri';
8+
9+
export interface INativeOpenInWindowOptions extends IOpenInWindowOptions {
10+
diffMode?: boolean;
11+
addMode?: boolean;
12+
gotoLineMode?: boolean;
13+
waitMarkerFileURI?: URI;
14+
}

src/vs/workbench/api/node/extHostCLIServer.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ import { generateRandomPipeName } from 'vs/base/parts/ipc/node/ipc.net';
77
import * as http from 'http';
88
import * as fs from 'fs';
99
import { IExtHostCommands } from 'vs/workbench/api/common/extHostCommands';
10-
import { IWindowOpenable, IOpenInWindowOptions } from 'vs/platform/windows/common/windows';
10+
import { IWindowOpenable } from 'vs/platform/windows/common/windows';
1111
import { URI } from 'vs/base/common/uri';
1212
import { hasWorkspaceFileExtension } from 'vs/platform/workspaces/common/workspaces';
13+
import { INativeOpenInWindowOptions } from 'vs/platform/windows/node/window';
1314

1415
export interface OpenCommandPipeArgs {
1516
type: 'open';
@@ -126,7 +127,7 @@ export class CLIServer {
126127
}
127128
if (urisToOpen.length) {
128129
const waitMarkerFileURI = waitMarkerFilePath ? URI.file(waitMarkerFilePath) : undefined;
129-
const windowOpenArgs: IOpenInWindowOptions = { forceNewWindow, diffMode, addMode, gotoLineMode, forceReuseWindow, waitMarkerFileURI };
130+
const windowOpenArgs: INativeOpenInWindowOptions = { forceNewWindow, diffMode, addMode, gotoLineMode, forceReuseWindow, waitMarkerFileURI };
130131
this._commands.executeCommand('_files.windowOpen', urisToOpen, windowOpenArgs);
131132
}
132133
res.writeHead(200);

0 commit comments

Comments
 (0)