Skip to content

actions: add WorkbenchActionBar with telemetry support#308215

Merged
jrieken merged 1 commit intomainfrom
joh/workbench-actionbar-telemetry
Apr 7, 2026
Merged

actions: add WorkbenchActionBar with telemetry support#308215
jrieken merged 1 commit intomainfrom
joh/workbench-actionbar-telemetry

Conversation

@jrieken
Copy link
Copy Markdown
Member

@jrieken jrieken commented Apr 7, 2026

Summary

Add a WorkbenchActionBar class that wraps ActionBar with automatic workbenchActionExecuted telemetry, analogous to how WorkbenchToolBar wraps ToolBar. Adopt it in the inline chat overlay widget.

Fixes #306432

Session Context

Key decisions from the development session:

  • New class instead of modifying ActionBar: Created a new WorkbenchActionBar in src/vs/platform/actions/browser/actionbar.ts rather than modifying the base ActionBar class, following the existing pattern of WorkbenchToolBar (wraps ToolBar) and WorkbenchButtonBar (wraps ButtonBar).
  • Separate file: Placed in its own file actionbar.ts alongside toolbar.ts and buttonbar.ts, consistent with the existing per-widget file organization.
  • Incremental adoption: Only the inline chat overlay widget's action bar is migrated in this PR. Other ActionBar usages can adopt WorkbenchActionBar separately.

Changes

  • New file src/vs/platform/actions/browser/actionbar.ts: WorkbenchActionBar extends ActionBar, injects ITelemetryService, and subscribes to onDidRun to log workbenchActionExecuted when telemetrySource is set.
  • src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.ts: Replaced new ActionBar(...) with instantiationService.createInstance(WorkbenchActionBar, ...) and added telemetrySource: 'inlineChatInput.actionBar'.

Copilot AI review requested due to automatic review settings April 7, 2026 13:41
@jrieken jrieken self-assigned this Apr 7, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 7, 2026

Screenshot Changes

Base: 77387b38 Current: 33955465

Changed (2)

editor/inlineCompletions/SideBySideView/Light
Before After
before after
editor/suggestWidget/MethodCompletions/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

Adds a new WorkbenchActionBar wrapper to automatically emit workbenchActionExecuted telemetry for ActionBar-based UI, and adopts it in the inline chat overlay action bar to capture action execution entry points (Fixes #306432).

Changes:

  • Added WorkbenchActionBar (extends ActionBar) that logs workbenchActionExecuted when telemetrySource is provided.
  • Updated inline chat overlay widget to instantiate WorkbenchActionBar and set telemetrySource: 'inlineChatInput.actionBar'.
Show a summary per file
File Description
src/vs/platform/actions/browser/actionbar.ts Introduces WorkbenchActionBar with opt-in workbenchActionExecuted telemetry logging.
src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.ts Switches the inline chat gutter action bar to WorkbenchActionBar and sets a telemetry source.

Copilot's findings

  • Files reviewed: 2/2 changed files
  • Comments generated: 1

Comment thread src/vs/platform/actions/browser/actionbar.ts
XavierMP14

This comment was marked as spam.

@jrieken jrieken merged commit e80adf2 into main Apr 7, 2026
23 checks passed
@jrieken jrieken deleted the joh/workbench-actionbar-telemetry branch April 7, 2026 14:47
@vs-code-engineering vs-code-engineering Bot added this to the 1.116.0 milestone Apr 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add telemetry when users trigger quick fix actions

4 participants