From b0f0a1bf81b876e8f400b29fa88aa5e3413d67cd Mon Sep 17 00:00:00 2001 From: Benjamin Pasero Date: Tue, 25 Aug 2020 14:45:37 +0200 Subject: [PATCH] web - only add window indicator if running without remote --- src/vs/code/browser/workbench/workbench.ts | 31 ++++++++++++++++++---- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/src/vs/code/browser/workbench/workbench.ts b/src/vs/code/browser/workbench/workbench.ts index cd315f77cc0..4b0ac90a35a 100644 --- a/src/vs/code/browser/workbench/workbench.ts +++ b/src/vs/code/browser/workbench/workbench.ts @@ -16,6 +16,7 @@ import { isFolderToOpen, isWorkspaceToOpen } from 'vs/platform/windows/common/wi import { isEqual } from 'vs/base/common/resources'; import { isStandalone } from 'vs/base/browser/browser'; import { localize } from 'vs/nls'; +import { Schemas } from 'vs/base/common/network'; interface ICredential { service: string; @@ -277,6 +278,20 @@ class WorkspaceProvider implements IWorkspaceProvider { return false; } + + hasRemote(): boolean { + if (this.workspace) { + if (isFolderToOpen(this.workspace)) { + return this.workspace.folderUri.scheme === Schemas.vscodeRemote; + } + + if (isWorkspaceToOpen(this.workspace)) { + return this.workspace.workspaceUri.scheme === Schemas.vscodeRemote; + } + } + + return true; + } } class WindowIndicator implements IWindowIndicator { @@ -391,6 +406,9 @@ class WindowIndicator implements IWindowIndicator { } } + // Workspace Provider + const workspaceProvider = new WorkspaceProvider(workspace, payload); + // Home Indicator const homeIndicator: IHomeIndicator = { href: 'https://github.com/Microsoft/vscode', @@ -401,10 +419,13 @@ class WindowIndicator implements IWindowIndicator { // Commands const commands: ICommand[] = []; - // Window indicator - const windowIndicator = new WindowIndicator(workspace); - if (windowIndicator.commandImpl) { - commands.push(windowIndicator.commandImpl); + // Window indicator (unless connected to a remote) + let windowIndicator: WindowIndicator | undefined = undefined; + if (!workspaceProvider.hasRemote()) { + windowIndicator = new WindowIndicator(workspace); + if (windowIndicator.commandImpl) { + commands.push(windowIndicator.commandImpl); + } } // Product Quality Change Handler @@ -429,7 +450,7 @@ class WindowIndicator implements IWindowIndicator { commands, windowIndicator, productQualityChangeHandler, - workspaceProvider: new WorkspaceProvider(workspace, payload), + workspaceProvider, urlCallbackProvider: new PollingURLCallbackProvider(), credentialsProvider: new LocalStorageCredentialsProvider() });