From fbbcd0ea143b729b6d4b580732cdc38fa1aeae1e Mon Sep 17 00:00:00 2001 From: Benjamin Pasero Date: Thu, 1 Jun 2023 09:01:56 +0200 Subject: [PATCH] Workspace folder picker entry descriptions are suboptimal for some filesystems (fix #183418) (#184018) --- .../terminal/browser/terminalActions.ts | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/vs/workbench/contrib/terminal/browser/terminalActions.ts b/src/vs/workbench/contrib/terminal/browser/terminalActions.ts index 018b4bd55bc..617621ae600 100644 --- a/src/vs/workbench/contrib/terminal/browser/terminalActions.ts +++ b/src/vs/workbench/contrib/terminal/browser/terminalActions.ts @@ -1721,14 +1721,19 @@ async function pickTerminalCwd(accessor: ServicesAccessor, cancel?: Cancellation } type Item = IQuickPickItem & { pair: WorkspaceFolderCwdPair }; - const folderPicks: Item[] = shrinkedPairs.map(pair => ({ - label: pair.folder.name, - description: pair.isOverridden + const folderPicks: Item[] = shrinkedPairs.map(pair => { + const label = pair.folder.name; + const description = pair.isOverridden ? localize('workbench.action.terminal.overriddenCwdDescription', "(Overriden) {0}", labelService.getUriLabel(pair.cwd, { relative: !pair.isAbsolute })) - : labelService.getUriLabel(dirname(pair.cwd), { relative: true }), - pair: pair, - iconClasses: getIconClasses(modelService, languageService, pair.cwd, FileKind.ROOT_FOLDER) - })); + : labelService.getUriLabel(dirname(pair.cwd), { relative: true }); + + return { + label, + description: description !== label ? description : undefined, + pair: pair, + iconClasses: getIconClasses(modelService, languageService, pair.cwd, FileKind.ROOT_FOLDER) + }; + }); const options: IPickOptions = { placeHolder: localize('workbench.action.terminal.newWorkspacePlaceholder', "Select current working directory for new terminal"), matchOnDescription: true,