windowsMainServer: reuse doOpenEmpty & include arguments in traces

This commit is contained in:
Martin Aeschlimann 2021-11-19 15:48:09 +01:00
parent c28aeab310
commit cc30f1f967
No known key found for this signature in database
GPG key ID: 2609A01E695523E3

View file

@ -570,16 +570,7 @@ export class WindowsMainService extends Disposable implements IWindowsMainServic
const remoteAuthority = emptyWindowBackupInfo.remoteAuthority;
const filesToOpenInWindow = isEqualAuthority(filesToOpen?.remoteAuthority, remoteAuthority) ? filesToOpen : undefined;
addUsedWindow(this.openInBrowserWindow({
userEnv: openConfig.userEnv,
cli: openConfig.cli,
initialStartup: openConfig.initialStartup,
filesToOpen: filesToOpenInWindow,
remoteAuthority,
forceNewWindow: true,
forceNewTabbedWindow: openConfig.forceNewTabbedWindow,
emptyWindowBackupInfo
}), !!filesToOpenInWindow);
addUsedWindow(this.doOpenEmpty(openConfig, true, remoteAuthority, filesToOpenInWindow, emptyWindowBackupInfo), !!filesToOpenInWindow);
openFolderInNewWindow = true; // any other folders to open must open in new window then
});
@ -605,7 +596,7 @@ export class WindowsMainService extends Disposable implements IWindowsMainServic
}
private doOpenFilesInExistingWindow(configuration: IOpenConfiguration, window: ICodeWindow, filesToOpen?: IFilesToOpen): ICodeWindow {
this.logService.trace('windowsManager#doOpenFilesInExistingWindow');
this.logService.trace('windowsManager#doOpenFilesInExistingWindow', { filesToOpen });
window.focus(); // make sure window has focus
@ -621,7 +612,7 @@ export class WindowsMainService extends Disposable implements IWindowsMainServic
}
private doAddFoldersToExistingWindow(window: ICodeWindow, foldersToAdd: URI[]): ICodeWindow {
this.logService.trace('windowsManager#doAddFoldersToExistingWindow');
this.logService.trace('windowsManager#doAddFoldersToExistingWindow', { foldersToAdd });
window.focus(); // make sure window has focus
@ -631,8 +622,11 @@ export class WindowsMainService extends Disposable implements IWindowsMainServic
return window;
}
private doOpenEmpty(openConfig: IOpenConfiguration, forceNewWindow: boolean, remoteAuthority: string | undefined, filesToOpen: IFilesToOpen | undefined, windowToUse?: ICodeWindow): ICodeWindow {
if (!forceNewWindow && !windowToUse && typeof openConfig.contextWindowId === 'number') {
private doOpenEmpty(openConfig: IOpenConfiguration, forceNewWindow: boolean, remoteAuthority: string | undefined, filesToOpen: IFilesToOpen | undefined, emptyWindowBackupInfo?: IEmptyWindowBackupInfo): ICodeWindow {
this.logService.trace('windowsManager#doOpenEmpty', { restore: !!emptyWindowBackupInfo, remoteAuthority, filesToOpen, forceNewWindow });
let windowToUse: ICodeWindow | undefined;
if (!forceNewWindow && typeof openConfig.contextWindowId === 'number') {
windowToUse = this.getWindowById(openConfig.contextWindowId); // fix for https://github.com/microsoft/vscode/issues/97172
}
@ -644,11 +638,14 @@ export class WindowsMainService extends Disposable implements IWindowsMainServic
forceNewWindow,
forceNewTabbedWindow: openConfig.forceNewTabbedWindow,
filesToOpen,
windowToUse
windowToUse,
emptyWindowBackupInfo
});
}
private doOpenFolderOrWorkspace(openConfig: IOpenConfiguration, folderOrWorkspace: IWorkspacePathToOpen | ISingleFolderWorkspacePathToOpen, forceNewWindow: boolean, filesToOpen: IFilesToOpen | undefined, windowToUse?: ICodeWindow): ICodeWindow {
this.logService.trace('windowsManager#doOpenFolderOrWorkspace', { folderOrWorkspace, filesToOpen });
if (!forceNewWindow && !windowToUse && typeof openConfig.contextWindowId === 'number') {
windowToUse = this.getWindowById(openConfig.contextWindowId); // fix for https://github.com/microsoft/vscode/issues/49587
}