-
Notifications
You must be signed in to change notification settings - Fork 48
Comparing changes
Open a pull request
base repository: coder/vscode-coder
base: v1.16.2
head repository: coder/vscode-coder
compare: v1.16.3
- 10 commits
- 133 files changed
- 3 contributors
Commits on Aug 25, 2026
-
fix: skip Pixel-flaky menu/spinner/icon/progress-bar motion, fix VSCo…
…deParity Menu capture (#1085)
Configuration menu - View commit details
-
Copy full SHA for 3449c8b - Browse repository at this point
Copy the full SHA 3449c8bView commit details
Commits on Sep 4, 2026
-
docs: remove Coder Tasks mention from README (#1104)
Removes the **Coder Tasks** bullet from the Features list in the README. > 🤖 This PR was created with the help of Coder Agents, and needs a human review. 🧑💻
Configuration menu - View commit details
-
Copy full SHA for 4a8c25b - Browse repository at this point
Copy the full SHA 4a8c25bView commit details
Commits on Sep 8, 2026
-
feat(ui): add an accessible VS Code-parity Tree (#1065)
Adds a controlled, accessible Tree to `@repo/ui` that follows current VS Code workbench behavior and visuals. Every visible node renders as a flat `treeitem` row with declared `aria-level`, `posinset`, and `setsize`, while keyboard navigation keeps DOM focus on the container and names the active row with `aria-activedescendant`. Focus and selection stay independent, as they do natively. The model, input policy, and interaction transitions are pure modules, with `useTreeAdapter` as the only place React state and the DOM meet — keeping rows as memoized presentation so a keystroke only re-renders the rows it touched. - Flat, data-driven row projection with `aria-activedescendant` - Independent focus and selection, including hidden selection behavior - Single selection, cleared by Escape before the key returns to the host - Arrow, Home, and End navigation, into and out of branches - Single-click and double-click expansion modes, twistie isolated from selection - Explorer styling, indent guides, row actions, high-contrast support, and Storybook coverage
Configuration menu - View commit details
-
Copy full SHA for be8c406 - Browse repository at this point
Copy the full SHA be8c406View commit details -
feat(ui): add tree multi-select, type navigation, paging, and sticky …
…scroll (#1079) Second of three stacked PRs (#1065 -> this one -> #1078), adding the interaction VS Code trees support beyond moving and selecting one row at a time. Multi-selection puts a range anchor in the interaction state alongside focus and selection, and sticky scroll needs the pointer policy to know which surface a click originated from, which is why these land together rather than as separate PRs. Multi-select, Ctrl/Cmd+A scoping, type navigation, and paging build on the pure model, policy, and transition layers from #1065, while sticky scroll adds its own pinned region with independent tab-stop behavior. - Multi-selection with selectedItemIds, anchored ranges, and modifier toggling (multiSelectModifier: "ctrlCmd" or "alt") - Ctrl/Cmd+A scoped the way list.selectAll scopes it for a tree: visible descendants of the focused row's parent, widening once fully selected - Buffered prefix and fuzzy type navigation, with an 800ms buffer expiry and repeated-key cycling - PageUp and PageDown measured against the scroller's viewport - Sticky scroll with stickyScrollMaxItemCount and 40% viewport caps, per-level indentation, and its own keyboard tab stop - 1,916 lines added / 149 deleted, generalizing single-selection shapes into multi-select-capable discriminated unions
Configuration menu - View commit details
-
Copy full SHA for 7ad09c3 - Browse repository at this point
Copy the full SHA 7ad09c3View commit details -
feat(ui): add native-style shared hovers for tree rows and actions (#…
…1078) Give tree labels and icon buttons VS Code-style tooltips without mounting a tooltip root for every row. A shared tree widget handles placement, timing, and dismissal, while keeping visual stories focused on presentation and regression coverage in unit tests. - Default tree tooltips to the row’s text value and icon-button tooltips to their accessible label, with custom content and `null` opt-out support. - Position label hovers relative to the cursor and action hovers beneath their buttons, matching native placement. - Apply the configured hover delay between targets and allow instant transitions within the same row’s action bar. - Support Ctrl+K Ctrl+I to show the focused row’s tooltip and dismiss it immediately on subsequent keyboard input or focus loss. - Cancel pending and visible tree hovers on pointer presses, including actions that stop propagation, and reject hidden or detached targets before showing. - Keep tooltips above sticky tree rows and provide fallback tooltip context for standalone trees and icon buttons. - Restore the menu-parity positioning anchor and clean up tree-story pointer state to prevent unintended visual changes. - Add concise, parameterized hover regressions and validate affected visual states across all four themes.
Configuration menu - View commit details
-
Copy full SHA for d9b0131 - Browse repository at this point
Copy the full SHA d9b0131View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3618d71 - Browse repository at this point
Copy the full SHA 3618d71View commit details
Commits on Sep 10, 2026
-
feat(workspaces): IPC API and extension-side data layer for the panel (…
…#1099) Adds the typed IPC contract and extension-side data layer for the experimental Workspaces panel (behind `coder.experimental.workspacesPanel`), porting the tree views' polling and metadata logic to push state through IPC. No UI yet, the webview just prints the pushed state to verify the data flow. - Defines the contract in `packages/shared/src/workspaces`: a single `stateChanged` notification carries the whole `WorkspacesState`; `ready`, `openWorkspace`, `viewInDashboard`, `refresh`, `setFilter`, and `watchAgents` flow back from the webview - `WorkspaceStore` owns the active filter, its list, selectable filters (minus any the deployment rejected via HTTP 400, until a refresh re-validates), and watched agents — pushes full state only when something changed, skipping the push otherwise - Adds `Poller` (`src/util/poller.ts`), running one cancellable task at a time with backoff-capped retries - Adds `AgentMetadataTracker` (`src/workspace/agentMetadataTracker.ts`) to manage watched agents and their sockets, with a short linger on release - Moves filter definitions into `src/workspace/filters.ts`, shared with the tree views via a `WorkspaceFilter` type (replacing the `WorkspaceQuery` enum) - Adds `dispatchWebviewMessage` in `src/webviews/dispatch.ts`, shared routing for the Tasks, Workspaces, and result panels - Adds `WorkspacesPanelProvider`, tracking view visibility via `syncVisibility` and pushing store changes to the retained view - Relocates `isOwner` to `api-helper.ts`; adds `openWorkspaceFromSidebar`/`openWorkspaceInDashboard` to `Commands`, shared with tree sidebar commands - Shares a mock `WebviewView` helper (`testHelpers.createMockWebviewView`) between the Workspaces and Tasks panel tests Closes DEVEX-622.
Configuration menu - View commit details
-
Copy full SHA for a91ae70 - Browse repository at this point
Copy the full SHA a91ae70View commit details
Commits on Sep 14, 2026
-
feat(ui): add form controls for webview parameter forms (#1101)
Adds the form-control vocabulary packages/ui needs for the #972 dynamic-parameter webview form: Input (text / number / password with reveal toggle), Textarea, Checkbox, Select (Radix), and Field/Label. Controls render like VS Code's settings editor rather than the dashboard, so richer dashboard form_types map onto this vocabulary (input+mask, textarea, dropdown/radio, checkbox/switch, slider, multi-select, tag-select). - Input/Textarea are controlled with value + onChange(next); Checkbox uses checked + onChange(next). Select preserves Radix controlled and uncontrolled modes with flat compound exports. - Shared text-control.css paints Input, SearchInput, and Textarea from one set of ui-text-control rules; new --ui-checkbox-*, --ui-dropdown-*, and --ui-list-focus-* tokens with high-contrast fallbacks. - Fixed select value clipping (trigger line-height) and a duplicate --ui-list-focus-outline declaration that painted a focus outline on highlighted rows in regular themes. - Split PasswordInput out of Input and unified overlay row styles between Menu and Select. - Behavior covered by per-component unit tests consolidated into forms.test.tsx; Pixel-snapshot stories drive state only, with separate unfocused/Focused variants per control.
Configuration menu - View commit details
-
Copy full SHA for 41fa903 - Browse repository at this point
Copy the full SHA 41fa903View commit details -
feat: default coder.useKeyring to true and harden shared credential h…
…andling (#1107) Session tokens now also go to the OS keyring through the Coder CLI on macOS and Windows, so the terminal `coder` shares the extension's session. The extension's own secret storage is unchanged. Sharing the CLI's store made sign-out, missing-binary, and redirect handling explicit, and the CLI store model is now a single `CliAuth` type that every CLI call derives its flags from. - Default `coder.useKeyring` to `true`; Linux and CLIs below 2.29 keep using a file. Pass `--use-keyring` explicitly and honor `CODER_CONFIG_DIR`. - Ask at logout whether to sign the CLI out too when it holds the same token; leave a CLI signed in with another token alone, and always log the extension's own store out to revoke the token. - Ask before adopting the CLI's session for a different user. - Skip CLI credential steps with one info line when the binary is not downloaded yet; connect stores the token. - Pass `--allow-redirects` to CLI 2.38+ so redirected deployment URLs keep working; require CLI 2.32 for CLI token reads. - Cache `coder version` per binary and skip CLI reads when settings rule out the CLI's own store; run the logout check under cancellable progress. - Show the CLI's error with Open Settings when storing fails, and Show Output when logout cannot remove every credential. - Telemetry: `cli_token` replaces `keyring_token`; credential spans carry `store` and `outcome`; `auth.logout` gains `user_dismissed`. Closes #1106
Configuration menu - View commit details
-
Copy full SHA for fdabe5e - Browse repository at this point
Copy the full SHA fdabe5eView commit details -
chore: group the workspaces overflow menu and release v1.16.3 (#1111)
Group the workspaces view's "..." menu so Switch Deployment and Logout come first, with Network Check on its own. Bump the version to 1.16.3 and add the changelog section covering the keyring default and the --allow-redirects fix from #1107
Configuration menu - View commit details
-
Copy full SHA for 96dd908 - Browse repository at this point
Copy the full SHA 96dd908View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v1.16.2...v1.16.3