Simplify resolving of text

This commit is contained in:
Daniel Imms 2021-05-13 05:49:31 -07:00
parent 10ad00891d
commit 66d817c3cc
4 changed files with 8 additions and 4 deletions

View file

@ -252,7 +252,7 @@ export interface IPtyService {
export interface IRequestResolveVariablesEvent {
id: number;
text: string[];
originalText: string[];
}
export enum HeartbeatConstants {

View file

@ -311,7 +311,7 @@ export class PtyHostService extends Disposable implements IPtyService {
return new Promise<string[]>(resolve => {
const id = ++lastResolveVariablesRequestId;
this._pendingResolveVariablesRequests.set(id, resolve);
this._onPtyHostRequestResolveVariables.fire({ id, text });
this._onPtyHostRequestResolveVariables.fire({ id, originalText: text });
});
}
async acceptPtyHostResolvedVariables(id: number, resolved: string[]) {

View file

@ -135,7 +135,9 @@ export class RemoteTerminalService extends Disposable implements IRemoteTerminal
this._register(channel.onPtyHostRequestResolveVariables(async e => {
const activeWorkspaceRootUri = historyService.getLastActiveWorkspaceRoot(Schemas.file);
const lastActiveWorkspaceRoot = activeWorkspaceRootUri ? withNullAsUndefined(workspaceContextService.getWorkspaceFolder(activeWorkspaceRootUri)) : undefined;
const resolveCalls: Promise<string>[] = e.text.map(t => configurationResolverService.resolveAsync(lastActiveWorkspaceRoot, t));
const resolveCalls: Promise<string>[] = e.originalText.map(t => {
return configurationResolverService.resolveAsync(lastActiveWorkspaceRoot, t);
});
const result = await Promise.all(resolveCalls);
channel.acceptPtyHostResolvedVariables(e.id, result);
}));

View file

@ -106,7 +106,9 @@ export class LocalTerminalService extends Disposable implements ILocalTerminalSe
this._register(this._localPtyService.onPtyHostRequestResolveVariables(async e => {
const activeWorkspaceRootUri = historyService.getLastActiveWorkspaceRoot(Schemas.file);
const lastActiveWorkspaceRoot = activeWorkspaceRootUri ? withNullAsUndefined(this._workspaceContextService.getWorkspaceFolder(activeWorkspaceRootUri)) : undefined;
const resolveCalls: Promise<string>[] = e.text.map(t => configurationResolverService.resolveAsync(lastActiveWorkspaceRoot, t));
const resolveCalls: Promise<string>[] = e.originalText.map(t => {
return configurationResolverService.resolveAsync(lastActiveWorkspaceRoot, t);
});
const result = await Promise.all(resolveCalls);
this._localPtyService.acceptPtyHostResolvedVariables?.(e.id, result);
}));