Skip to content

feat: Support registration for submenus on context menu for plugins#2830

Open
cheneyveron wants to merge 2 commits into
opencloud-eu:mainfrom
cheneyveron:cheney/feat/plugin-action-submenus
Open

feat: Support registration for submenus on context menu for plugins#2830
cheneyveron wants to merge 2 commits into
opencloud-eu:mainfrom
cheneyveron:cheney/feat/plugin-action-submenus

Conversation

@cheneyveron

Copy link
Copy Markdown

Description

Enhance web extension's ability to support using sub menus by plugins, for a more organized context menu.

These enhancements were triggered by an archiver operating plugin I'm working on: opencloud-file-archiver, and to better support its frontend. Here're main features:

  • Backend compress: .tar.gz, .zip, AES-256 encrypted .zip
  • Choose between Create and stream Download compressed archives
  • Backend extract: .zip, .7z, .tar, .tar.gz / .tgz, .gz
  • Choose extraction location
  • Preview text/image/PDF, and partial extract
  • Display job status and cancel during runtime

This plugin is mainly for my personal need, if you're interested or have more ideas or concerns, feel free to submit issues and PRs to opencloud-file-archiver!

How Has This Been Tested?

  • test environment:
    • Debian 13 x86_64
    • OpenCloud image: opencloudeu/opencloud:7.2.0-posix-fastpath-20260704, bundled reva
    • Related extension tested with: opencloud-file-archiver@d2d565a
  • Unit tests:
$ pnpm test:unit packages/web-pkg/tests/unit/components/ContextActions/ContextActionMenu.spec.ts

 Test Files  1 passed (1)
      Tests  3 passed (3)
   Start at  14:35:47
   Duration  2.95s (transform 1.52s, setup 22ms, import 2.53s, tests 32ms, environment 286ms)
  • Type Check & Build
pnpm check:types
Result: passed.

pnpm build
Result: passed.
  • Manual test:
    • Registered menus and sub-menus are showing and working correctly
    • Existing features, such as upload, download, preview, and client sync are working.

Types of changes

  • Enhancement (a change that doesn't break existing code or deployments)
  • Breaking change (a modification that affects current functionality)
  • Technical debt (addressing code that needs refactoring or improvements)
  • Tests (adding or improving tests)
  • Documentation (updates or additions to documentation)
  • Maintenance (like dependency updates or tooling adjustments)

@cheneyveron cheneyveron changed the title Support registration for submenus on context menu for plugins feat: Support registration for submenus on context menu for plugins Jul 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.

1 participant