提交 8d0ce970 编写于 作者: B Benjamin Pasero

schemas - add vscodeRemote

上级 29d9a9a8
......@@ -44,4 +44,6 @@ export namespace Schemas {
export const data: string = 'data';
export const command: string = 'command';
export const vscodeRemote: string = 'vscode-remote';
}
......@@ -67,7 +67,7 @@ import { storeBackgroundColor } from 'vs/code/electron-main/theme';
import { homedir } from 'os';
import { join, sep } from 'vs/base/common/path';
import { localize } from 'vs/nls';
import { REMOTE_HOST_SCHEME } from 'vs/platform/remote/common/remoteHosts';
import { Schemas } from 'vs/base/common/network';
import { REMOTE_FILE_SYSTEM_CHANNEL_NAME } from 'vs/platform/remote/common/remoteAgentFileSystemChannel';
import { ResolvedAuthority } from 'vs/platform/remote/common/remoteAuthorityResolver';
import { SnapUpdateService } from 'vs/platform/update/electron-main/updateService.snap';
......@@ -748,7 +748,7 @@ export class CodeApplication extends Disposable {
}
};
protocol.registerBufferProtocol(REMOTE_HOST_SCHEME, async (request, callback) => {
protocol.registerBufferProtocol(Schemas.vscodeRemote, async (request, callback) => {
if (request.method !== 'GET') {
return callback(undefined);
}
......
......@@ -4,8 +4,9 @@
*--------------------------------------------------------------------------------------------*/
import { URI } from 'vs/base/common/uri';
import { Schemas } from 'vs/base/common/network';
export const REMOTE_HOST_SCHEME = 'vscode-remote';
export const REMOTE_HOST_SCHEME = Schemas.vscodeRemote;
export function getRemoteAuthority(uri: URI): string | undefined {
return uri.scheme === REMOTE_HOST_SCHEME ? uri.authority : undefined;
......
......@@ -41,7 +41,6 @@ import { onUnexpectedError } from 'vs/base/common/errors';
import { basename } from 'vs/base/common/resources';
import { IDisposable, dispose } from 'vs/base/common/lifecycle';
import { IWorkbenchEnvironmentService } from 'vs/workbench/services/environment/common/environmentService';
import { REMOTE_HOST_SCHEME } from 'vs/platform/remote/common/remoteHosts';
// Commands
......@@ -140,7 +139,7 @@ function save(
savePromise = textFileService.save(resource, options).then(result => {
if (result) {
if (environmentService.configuration.remoteAuthority) {
return resource.with({ scheme: REMOTE_HOST_SCHEME });
return resource.with({ scheme: Schemas.vscodeRemote });
}
return resource.with({ scheme: Schemas.file });
......
......@@ -24,7 +24,6 @@ import { IEditorGroup } from 'vs/workbench/services/editor/common/editorGroupsSe
import { ExplorerItem } from 'vs/workbench/contrib/files/common/explorerModel';
import { once } from 'vs/base/common/functional';
import { IWorkbenchEnvironmentService } from 'vs/workbench/services/environment/common/environmentService';
import { REMOTE_HOST_SCHEME } from 'vs/platform/remote/common/remoteHosts';
/**
* Explorer viewlet id.
......@@ -199,7 +198,7 @@ export class FileOnDiskContentProvider implements ITextModelContentProvider {
private toSavedFileResource(resource: URI): URI {
if (this.environmentService.configuration.remoteAuthority) {
return resource.with({ scheme: REMOTE_HOST_SCHEME }); // assume file on disk is remote
return resource.with({ scheme: Schemas.vscodeRemote }); // assume file on disk is remote
}
return resource.with({ scheme: Schemas.file });
......
......@@ -46,7 +46,6 @@ import { IFileService } from 'vs/platform/files/common/files';
import { DiskFileSystemProvider } from 'vs/workbench/services/files2/electron-browser/diskFileSystemProvider';
import { IChannel } from 'vs/base/parts/ipc/common/ipc';
import { REMOTE_FILE_SYSTEM_CHANNEL_NAME, RemoteExtensionsFileSystemProvider } from 'vs/platform/remote/common/remoteAgentFileSystemChannel';
import { REMOTE_HOST_SCHEME } from 'vs/platform/remote/common/remoteHosts';
import { DefaultConfigurationExportHelper } from 'vs/workbench/services/configuration/node/configurationExportHelper';
import { ConfigurationCache } from 'vs/workbench/services/configuration/node/configurationCache';
import { ConfigurationFileService } from 'vs/workbench/services/configuration/node/configurationFileService';
......@@ -201,7 +200,7 @@ class CodeRendererMain extends Disposable {
if (connection) {
const channel = connection.getChannel<IChannel>(REMOTE_FILE_SYSTEM_CHANNEL_NAME);
const remoteFileSystemProvider = this._register(new RemoteExtensionsFileSystemProvider(channel, remoteAgentService.getEnvironment()));
fileService.registerProvider(REMOTE_HOST_SCHEME, remoteFileSystemProvider);
fileService.registerProvider(Schemas.vscodeRemote, remoteFileSystemProvider);
}
return this.resolveWorkspaceInitializationPayload(environmentService).then(payload => Promise.all([
......
......@@ -32,7 +32,6 @@ import { IModelService } from 'vs/editor/common/services/modelService';
import { INotificationService, Severity } from 'vs/platform/notification/common/notification';
import { isEqualOrParent, isEqual, joinPath, dirname, extname, basename } from 'vs/base/common/resources';
import { posix } from 'vs/base/common/path';
import { REMOTE_HOST_SCHEME } from 'vs/platform/remote/common/remoteHosts';
import { getConfirmMessage, IDialogService, IFileDialogService, ISaveDialogOptions, IConfirmation } from 'vs/platform/dialogs/common/dialogs';
import { IModeService } from 'vs/editor/common/services/modeService';
import { IEditorService } from 'vs/workbench/services/editor/common/editorService';
......@@ -615,7 +614,7 @@ export class TextFileService extends Disposable implements ITextFileService {
if (path && path[0] !== posix.sep) {
path = posix.sep + path;
}
return untitled.with({ scheme: REMOTE_HOST_SCHEME, authority, path });
return untitled.with({ scheme: Schemas.vscodeRemote, authority, path });
}
return untitled.with({ scheme: Schemas.file });
}
......@@ -800,7 +799,7 @@ export class TextFileService extends Disposable implements ITextFileService {
private suggestFileName(untitledResource: URI): URI {
const untitledFileName = this.untitledEditorService.suggestFileName(untitledResource);
const remoteAuthority = this.environmentService.configuration.remoteAuthority;
const schemeFilter = remoteAuthority ? REMOTE_HOST_SCHEME : Schemas.file;
const schemeFilter = remoteAuthority ? Schemas.vscodeRemote : Schemas.file;
const lastActiveFile = this.historyService.getLastActiveFile(schemeFilter);
if (lastActiveFile) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册