Skip to content

[cherry-pick] sessions: revert Customizations sidebar reorganization - #337032

Merged
Sandeep Somavarapu (sandy081) merged 1 commit into
release/1.139from
cherry-pick/337007
Sep 21, 2026
Merged

Sandeep Somavarapu (sandy081) merged 1 commit into
release/1.139from
cherry-pick/337007

Conversation

@vs-code-engineering

Copy link
Copy Markdown
Contributor

Cherry-pick of #337007 from main.

Summary

  • revert sessions: move Customizations next to Automations #336787 for this release
  • restore the previous expandable Customizations pane above the Sessions list
  • restore the stable Sessions header outside the virtualized list
  • remove the temporary experiment implementation; the sidebar reorganization will return behind a proper experiment in a future release

Testing

  • npm run compile
  • npm run typecheck-client
  • npm run transpile-client && ./scripts/test.sh --run src/vs/sessions/contrib/sessions/test/browser/sessionsList.test.ts --run src/vs/sessions/contrib/sessions/test/browser/sessionsViewPane.test.ts (146 passing)
  • npm run hygiene
  • npm run valid-layers-check
  • component fixtures: all 10 restored Customizations widget variants and all 92 Sessions list variants render successfully
  • git diff --check

Copilot AI balanced review requested due to automatic review settings September 21, 2026 13:27
@vs-code-engineering vs-code-engineering Bot added the cherry-pick-artifact Auto-generated cherry-pick PR label Sep 21, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🟡 Changes recommended

Duplicate activation, broken toolbar focus and feature gating, and incomplete customization entries remain unresolved.

Get a fresh assessment by requesting another Copilot review.

Review effort: Balanced
Findings: 1 High severity · 7 Medium severity

Open (8)
What changed in this PR

Cherry-picks the release revert of the Sessions sidebar reorganization, restoring the expandable Customizations pane and stable Sessions header.

Changes:

  • Restores the Customizations toolbar and split-pane layout.
  • Removes Customizations and header entries from the virtualized Sessions list.
  • Updates tests, accessibility text, styles, fixtures, and screenshot baselines.
File Description
test/​componentFixtures/​blocks-ci-screenshots.md Updates Sessions screenshot baselines.
src/​vs/​workbench/​test/​browser/​componentFixtures/​sessions/​sessionsList.fixture.ts Removes obsolete editor-service setup.
src/​vs/​sessions/​sessions.common.main.ts Loads the restored toolbar contribution.
src/​vs/​sessions/​contrib/​sessions/​test/​browser/​sessionsViewPane.test.ts Tests responsive pane restoration.
src/​vs/​sessions/​contrib/​sessions/​test/​browser/​sessionsRename.test.ts Updates accessibility-help expectations.
src/​vs/​sessions/​contrib/​sessions/​test/​browser/​sessionsList.test.ts Removes temporary shortcut-list tests.
src/​vs/​sessions/​contrib/​sessions/​test/​browser/​aiCustomizationShortcutsWidget.fixture.ts Adds Customizations widget fixtures.
src/​vs/​sessions/​contrib/​sessions/​browser/​views/​sessionsViewActions.ts Restores section action conditions.
src/​vs/​sessions/​contrib/​sessions/​browser/​views/​sessionsView.ts Restores the split Customizations pane.
src/​vs/​sessions/​contrib/​sessions/​browser/​views/​sessionsList.ts Removes temporary embedded navigation entries.
src/​vs/​sessions/​contrib/​sessions/​browser/​media/​sessionsViewPane.css Restores pane and header styling.
src/​vs/​sessions/​contrib/​sessions/​browser/​media/​sessionsList.css Reverts temporary list-row styling.
src/​vs/​sessions/​contrib/​sessions/​browser/​media/​customizationsToolbar.css Adds Customizations toolbar styling.
src/​vs/​sessions/​contrib/​sessions/​browser/​media/​agentHostToolbar.css Clarifies toolbar separator styling.
src/​vs/​sessions/​contrib/​sessions/​browser/​customizationsToolbar.contribution.ts Registers Customizations actions and counts.
src/​vs/​sessions/​contrib/​sessions/​browser/​customizationsConstants.ts Removes the obsolete command constant.
src/​vs/​sessions/​contrib/​sessions/​browser/​customizations.contribution.ts Removes the temporary contribution.
src/​vs/​sessions/​contrib/​sessions/​browser/​aiCustomizationShortcutsWidget.ts Implements the expandable toolbar widget.
src/​vs/​sessions/​contrib/​sessions/​browser/​agentHostShortcutsWidget.ts Aligns comments with restored layout.
src/​vs/​sessions/​contrib/​providers/​remoteAgentHost/​browser/​media/​hostFilter.css Aligns host-picker container styling.
src/​vs/​sessions/​contrib/​providers/​remoteAgentHost/​browser/​hostFilterActionViewItem.ts Reuses Customizations row structure.
src/​vs/​sessions/​contrib/​chat/​browser/​sessionsChatAccessibilityHelp.ts Updates Customizations accessibility guidance.
src/​vs/​sessions/​browser/​menus.ts Adds the Customizations sidebar menu.

💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +203 to +205
this._viewItemDisposables.add(this._button.onDidClick(() => {
this._action.run();
}));
Comment on lines +112 to +123
for (const config of CUSTOMIZATION_ITEMS) {
if (config.section && hidden.has(config.section)) {
continue;
}
if (config.modelSection) {
total += this.itemsModel.getCount(config.modelSection).read(reader);
} else if (config.isMcp) {
total += this.mcpService.servers.read(reader).length;
} else if (config.isPlugins) {
total += this.itemsModel.getPluginCount().read(reader);
}
}
Comment on lines +98 to +102
{
id: 'sessions.customization.agents',
label: localize('agents', "Agents"),
icon: agentIcon,
section: AICustomizationManagementSection.Agents,
Comment on lines +180 to +184
protected override getTooltip(): string | undefined {
return undefined;
}

override render(container: HTMLElement): void {
Comment on lines +972 to +973
.monaco-list-row.focused:has(.session-section),
.monaco-list-row.selected:has(.session-section) {
Comment on lines 4553 to 4556
if (isSessionSection(element)) {
if (element.id === SESSIONS_HEADER_SECTION_ID || isShortcutSection(element.id)) {
return;
}
this.showSectionContextMenu(element, e.anchor);
return;
}
Comment on lines +381 to +388
if (isPhoneLayout(this.layoutService)) {
if (this._customizationsWidget) {
this.sidebarSplitView.removeView(1, Sizing.Distribute);
this._customizationsWidget = undefined;
this.customizationsPaneDisposables.clear();
}
return;
}
focusCustomizations(): void {
if (!isPhoneLayout(this.layoutService)) {
this.sessionsControl?.focusCustomizations();
this._customizationsWidget?.focus();
@github-actions

Copy link
Copy Markdown
Contributor

Screenshot Changes

Base: 3f11d906 Current: 5289893b

Changed (24)

sessions/sessionsList/SessionsList_AutomationsNewBadge/Dark
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge/Light
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge/DarkHighContrast
Before After
before after
sessions/sessionsList/SessionsList_LightweightNewButton/Dark
Before After
before after
sessions/sessionsList/SessionsList_LightweightNewButton/Light
Before After
before after
sessions/sessionsList/SessionsList_LightweightNewButton/DarkHighContrast
Before After
before after
sessions/sessionsList/SessionsList_LightweightNewButtonWithKeybindingBackground/Dark
Before After
before after
sessions/sessionsList/SessionsList_LightweightNewButtonWithKeybindingBackground/Light
Before After
before after
sessions/sessionsList/SessionsList_LightweightNewButtonWithKeybindingBackground/DarkHighContrast
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Accent/Dark
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Accent/Light
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Accent/DarkHighContrast
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Soft/Dark
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Soft/Light
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Soft/DarkHighContrast
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Unread/Dark
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Unread/Light
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Unread/DarkHighContrast
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Narrow/Dark
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Narrow/Light
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Narrow/DarkHighContrast
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Running/Dark
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Running/Light
Before After
before after
sessions/sessionsList/SessionsList_AutomationsNewBadge_Running/DarkHighContrast
Before After
before after

4 insignificant change(s) omitted (≤20 px, Δ≤2). See CI logs for details.

Added (10)

sessions/aiCustomizationShortcutsWidget/Expanded/Dark

current

sessions/aiCustomizationShortcutsWidget/Expanded/Light

current

sessions/aiCustomizationShortcutsWidget/MinimumHeight/Dark

current

sessions/aiCustomizationShortcutsWidget/MinimumHeight/Light

current

sessions/aiCustomizationShortcutsWidget/WithMcpServers/Dark

current

sessions/aiCustomizationShortcutsWidget/WithMcpServers/Light

current

sessions/aiCustomizationShortcutsWidget/MinimumHeightWithMcpServers/Dark

current

sessions/aiCustomizationShortcutsWidget/MinimumHeightWithMcpServers/Light

current

sessions/aiCustomizationShortcutsWidget/WithCounts/Dark

current

sessions/aiCustomizationShortcutsWidget/WithCounts/Light

current

@sandy081
Sandeep Somavarapu (sandy081) merged commit ca4c65a into release/1.139 Sep 21, 2026
34 checks passed
@sandy081
Sandeep Somavarapu (sandy081) deleted the cherry-pick/337007 branch September 21, 2026 14:03
@vs-code-engineering vs-code-engineering Bot added this to the 1.139.0 milestone Sep 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cherry-pick-artifact Auto-generated cherry-pick PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants