* get basics working in current dropdown
* filter profiles based on what we want in the dropdown and other info
* add copywright
* terminal.ts -> terminalProfile.ts
* seperate linux distro code
* improve terminalConfig setting description
* add passing tests and fix#79572
* add test for login args
* add wsl stuff
* fix#77652
* lengthen throttle time to 10s
* shell -> process and fire update profiles so dropdown is updated
* consolidate code in terminalProfile
* change profile selection logic
* change profile config structure
* use <ProfileName, IterminalProfileObject> and get wsl distro names to look normal
* provide terminalConfig to terminalProfiles
* move detection/validation to terminalProfiles
* isWorkspaceShellAllowed
* add quickPickOnly so Select Default Profiles returns all and otherwise filters based on config
* Add logs for errors within terminalProfiles
* change return type
* use sync
* fix bug, get custom generated to work
* workspace shell permissions
* add some comments and clean up
* when ext host ready update profiles
* improve terminalProfileObjectEqual check
* don't use windows powershell unless no other powershell
Phantom characters were showing up because type ahead was installing a
second onBeforeProcessData listener. The root cause was a refactor to
move and encapsulate the relaunching logic/concept inside TerminalProcessManager.
Fixes#118804
Co-authored-by: Megan Rogge <merogge@microsoft.com>
This was caused by the env var relaunch @debounce decorator that was added to
prevent the process from relaunching multiple times when multiple extensions
contribute to the environment. This caused the reuseTerminal call to not have
the new processReady promise ready immediately after reuseTerminal was called.
The fix which seems safe it to just move the @debounce over to relaunchTerminal
that tasks doesn't use.
Fixes#118256