workspace is virtual if all folders are virtual

This commit is contained in:
Martin Aeschlimann 2021-04-15 16:07:13 +02:00
parent d13686a860
commit 0287003973
No known key found for this signature in database
GPG key ID: 2609A01E695523E3

View file

@ -30,16 +30,11 @@ function isVirtualResource(resource: URI) {
return resource.scheme !== Schemas.file && resource.scheme !== Schemas.vscodeRemote;
}
export function getVirtualWorkspaceLocation(workspace: IWorkspace): URI | undefined {
const configFile = workspace.configuration;
if (configFile && isVirtualResource(configFile)) {
return configFile;
}
export function getVirtualWorkspaceLocation(workspace: IWorkspace): { scheme: string, authority: string } | undefined {
if (workspace.folders.length) {
const firstFolder = workspace.folders[0].uri;
if (isVirtualResource(firstFolder)) {
return firstFolder;
}
return workspace.folders.every(f => isVirtualResource(f.uri)) ? workspace.folders[0].uri : undefined;
} else if (workspace.configuration && isVirtualResource(workspace.configuration)) {
return workspace.configuration;
}
return undefined;
}