Skip to content

Introduce context-menu submenus#119

Open
goanpeca wants to merge 5 commits into
mainfrom
feat/issue-102-context-menu-submenus
Open

Introduce context-menu submenus#119
goanpeca wants to merge 5 commits into
mainfrom
feat/issue-102-context-menu-submenus

Conversation

@goanpeca

@goanpeca goanpeca commented Jul 7, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Declare only the populated b2.file.copy context-menu submenu and keep future submenu IDs undeclared until they have at least two concrete members.
  • Move the file copy menu rows into the b2.file.copy submenu, keep bucket/folder copy as flat items, and gate file copy submenu plus inline file copy actions with b2.canListFiles.
  • Derive authenticated context state through AuthService so manual auth and auto-auth share the same capability mapping.
  • Add manifest tests for submenu declarations, anchor gating, inline file copy gating, and the no one-item submenu rule; update the release contract hash for contribution changes.

Linked issue

Closes #102

Tests run

  • npm run test:unit
  • npm run check
  • npm test

Follow-up notes

  • Future Bucket Copy, Bucket Settings, and Object Lock submenus should be declared when their second concrete command lands.

Copilot AI review requested due to automatic review settings July 7, 2026 13:20
@goanpeca goanpeca added this to the v0.3.0 milestone Jul 7, 2026
@goanpeca goanpeca added enhancement New feature or request priority: high High priority sdk-parity SDK capability not yet exposed in the extension UI labels Jul 7, 2026
@goanpeca goanpeca self-assigned this Jul 7, 2026
@github-actions

github-actions Bot commented Jul 7, 2026

Copy link
Copy Markdown

Extension Build Ready

Download the VSIX from the workflow artifacts above.

Installation

VS Code UI: Extensions > ... > Install from VSIX...

CLI:

code --install-extension b2-vscode-*.vsix

Copilot AI left a comment

Copy link
Copy Markdown

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 introduces initial VS Code context-menu submenu infrastructure for the B2 extension by declaring submenu IDs in the extension manifest, moving file “copy” actions under a file-only submenu anchor, and adding tests/contract updates to lock in the contribution shape.

Changes:

  • Added contributes.submenus declarations for the proposed file/bucket submenu structure.
  • Reworked view/item/context contributions so file copy commands live under a b2.file.copy submenu anchor (while bucket/folder copy remains flat until it has a second member).
  • Added/updated manifest-focused tests and updated the release contract contributesSha256.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
package.json Declares submenu IDs and introduces the b2.file.copy submenu + anchor in view item context menus.
src/test/suite/extension.test.ts Adds tests asserting submenu declarations, anchor gating behavior, and the “no one-item submenu” rule.
scripts/release-contract.js Updates the frozen contributesSha256 to reflect the manifest contribution change.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread package.json
Copilot AI review requested due to automatic review settings July 7, 2026 13:32

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 9 out of 9 changed files in this pull request and generated 1 comment.

Comment thread package.json

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 9 out of 9 changed files in this pull request and generated no new comments.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 10 out of 10 changed files in this pull request and generated no new comments.

@goanpeca goanpeca marked this pull request as ready for review July 7, 2026 13:56
Copilot AI review requested due to automatic review settings July 8, 2026 23:14
@goanpeca goanpeca force-pushed the feat/issue-102-context-menu-submenus branch from a0d133f to b031fc4 Compare July 8, 2026 23:14

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 10 out of 10 changed files in this pull request and generated no new comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request priority: high High priority sdk-parity SDK capability not yet exposed in the extension UI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Introduce context-menu submenus before features overflow the flat menus

2 participants