Skip to content

Add toggle support for QuickInput/QuickPick, resourceUri support for QuickPickItem#271598

Merged
TylerLeonhardt merged 44 commits intomainfrom
dev/dmitriv/quick-input-toggle
Oct 18, 2025
Merged

Add toggle support for QuickInput/QuickPick, resourceUri support for QuickPickItem#271598
TylerLeonhardt merged 44 commits intomainfrom
dev/dmitriv/quick-input-toggle

Conversation

@dmitrivMS
Copy link
Contributor

@dmitrivMS dmitrivMS commented Oct 15, 2025

Fixes #144956 and #59826

@dmitrivMS dmitrivMS self-assigned this Oct 15, 2025
@dmitrivMS dmitrivMS linked an issue Oct 15, 2025 that may be closed by this pull request
Copy link

@joe10832 joe10832 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dmitrivMS dmitrivMS changed the title Add toggle support for QuickInput and QuickPick Add toggle support for QuickInput/QuickPick, resourceUri support for QuickPickItem Oct 16, 2025
Copilot AI review requested due to automatic review settings October 16, 2025 17:00
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds toggle support for QuickInput/QuickPick widgets and resourceUri support for QuickPickItems. The changes enable extensions to add toggle buttons within the input box area and automatically derive labels, descriptions, and icons for items that represent file/folder resources.

Key Changes

  • Added toggle button support for QuickInput with a new Input location type in QuickInputButtonLocation enum
  • Added resourceUri property to QuickPickItem for automatic resource-based label/icon derivation
  • Refactored icon handling to use a unified IconPathDto type and converter functions

Reviewed Changes

Copilot reviewed 7 out of 9 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/vs/workbench/api/common/extHostTypes.ts Added Input = 3 to QuickInputButtonLocation enum for toggle buttons
src/vs/workbench/api/common/extHostTypeConverters.ts Added IconPath.from() and IconPath.to() converters for unified icon handling
src/vs/workbench/api/common/extHostQuickOpen.ts Updated QuickInput implementation to support toggles and resourceUri, removed duplicate icon conversion logic
src/vs/workbench/api/common/extHost.protocol.ts Added IconPathDto type and protocol updates for toggle/resourceUri support
src/vs/workbench/api/browser/mainThreadQuickOpen.ts Implemented toggle widget creation and resource URI expansion logic
src/vs/platform/quickinput/common/quickInput.ts Moved toggles property from IQuickPick to base IQuickInput interface
src/vs/platform/extensions/common/extensionsApiProposals.ts Added quickPickItemResource API proposal

@vs-code-engineering vs-code-engineering bot added this to the October 2025 milestone Oct 16, 2025
@vs-code-engineering
Copy link

vs-code-engineering bot commented Oct 16, 2025

📬 CODENOTIFY

The following users are being notified based on files changed in this PR:

@bpasero

Matched files:

  • src/vs/workbench/browser/parts/views/treeView.ts

@TylerLeonhardt TylerLeonhardt merged commit bfba6b0 into main Oct 18, 2025
28 checks passed
@TylerLeonhardt TylerLeonhardt deleted the dev/dmitriv/quick-input-toggle branch October 18, 2025 22:57
@vs-code-engineering vs-code-engineering bot locked and limited conversation to collaborators Dec 2, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Toggle support for QuickInput in API File icons for QuickPickItem

3 participants