Skip to content

Separate CTA widget from update title bar entry#309723

Merged
dmitrivMS merged 5 commits intomainfrom
dev/dmitriv/post-update-cta
Apr 14, 2026
Merged

Separate CTA widget from update title bar entry#309723
dmitrivMS merged 5 commits intomainfrom
dev/dmitriv/post-update-cta

Conversation

@dmitrivMS
Copy link
Copy Markdown
Contributor

@dmitrivMS dmitrivMS commented Apr 14, 2026

This builds upon #308064 by @cwebster-99 to separate CTA widget from update title bar control and enrich support format to allow specifying custom buttons.

Co-authored-by: Copilot <copilot@github.com>
Copilot AI review requested due to automatic review settings April 14, 2026 05:25
@dmitrivMS dmitrivMS added the install-update VS Code installation and upgrade system issues label Apr 14, 2026
@dmitrivMS dmitrivMS self-assigned this Apr 14, 2026
@dmitrivMS dmitrivMS enabled auto-merge April 14, 2026 05:25
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 14, 2026

Screenshot Changes

Base: 182bcf49 Current: f867ca33

Changed (1)

editor/inlineCompletions/other/JumpToHint/Dark
Before After
before after

Copy link
Copy Markdown
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 separates the post-update “What’s New” call-to-action (CTA) experience from the update title bar indicator, moving post-install content rendering into a standalone widget and introducing a parser for richer update-info payloads (markdown + custom buttons).

Changes:

  • Added a new parseUpdateInfoInput utility to parse update-info payloads (JSON envelope or frontmatter) including optional button definitions.
  • Removed post-install markdown rendering/version-change detection from the title bar update entry and tooltip.
  • Introduced PostUpdateWidgetContribution to show a sticky hover widget after update installs, plus styling and a richer developer prompt for testing.
Show a summary per file
File Description
src/vs/workbench/contrib/update/common/updateInfoParser.ts New parsing utility for update info payloads supporting optional buttons.
src/vs/workbench/contrib/update/browser/updateTooltip.ts Removes post-install markdown section/rendering from the tooltip.
src/vs/workbench/contrib/update/browser/updateTitleBarEntry.ts Removes post-install/version-change logic so title bar entry focuses on update states only.
src/vs/workbench/contrib/update/browser/update.contribution.ts Registers PostUpdateWidgetContribution and updates dev command prompt text.
src/vs/workbench/contrib/update/browser/postUpdateWidget.ts New post-update widget shown via hover, fetching/parsing update info and rendering markdown/buttons.
src/vs/workbench/contrib/update/browser/media/postUpdateWidget.css Styles for the new post-update widget hover content.

Copilot's findings

Comments suppressed due to low confidence (1)

src/vs/workbench/contrib/update/browser/postUpdateWidget.ts:184

  • The click listeners added via dom.addDisposableListener aren't registered/disposed. When combined with a sticky hover that can be shown repeatedly, this risks retaining closures (services, args) longer than necessary. Please register these disposables (eg via a DisposableStore) and dispose them when the hover is closed (for example via the hover target's dispose).
				dom.addDisposableListener(button, 'click', () => {
					this.telemetryService.publicLog2<WorkbenchActionExecutedEvent, WorkbenchActionExecutedClassification>(
						'workbenchActionExecuted',
						{ id: commandId, from: 'postUpdateWidget' }
					);

					void this.commandService.executeCommand(commandId, ...(args ?? []));
					this.hoverService.hideHover(true);
				});
  • Files reviewed: 7/7 changed files
  • Comments generated: 4

dmitrivMS and others added 2 commits April 13, 2026 22:41
@dmitrivMS dmitrivMS merged commit c22a084 into main Apr 14, 2026
40 of 41 checks passed
@dmitrivMS dmitrivMS deleted the dev/dmitriv/post-update-cta branch April 14, 2026 06:56
@vs-code-engineering vs-code-engineering bot added this to the 1.117.0 milestone Apr 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

install-update VS Code installation and upgrade system issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants