feat(mobile): workspace header ⋯ is a menu, with Delete back in it

Merged
SA
1mo ago
+110-7

Why

#7782 dropped Delete from the workspace sheet, which left no way to delete a workspace from its own screen on mobile. The header's ⋯ button only opened the sheet, so the menu it should have been was sparse.

What

The ⋯ in the workspace header is now a native menu, grouped like the reference (Cursor's chat menu):

  • Workspace details, Rename, Pin / Unpin, Mark as Unread
  • Copy (submenu: Copy link, Copy ID), Share
  • Delete workspace (destructive)

Every item reuses a handler that already exists. Rename, share, copy and delete come from useWorkspaceHeaderActions; deleteWorkspace is the handler #7782 removed, restored as it was. Pin reads the pinned store. Mark as Unread sets the manual mark, which opening the screen normally clears, so it holds until you leave. Copies thread the screen's onCopied so the header's "Copied" pill confirms them.

The unread icon is a bell on this menu and on the home row's long-press menu, in place of the envelope.

Verified

iPhone 17 Pro Max simulator, iOS 26, against production, driven by Maestro through the real menu:

  • Menu and Copy submenu render with the separators.
  • Pin flips the item to Unpin and back.
  • Copy link and Copy ID put the right values on the pasteboard, with the "Copied" pill.
  • Delete workspace shows its confirm (cancelled, nothing deleted).

Screenshots: https://app.superset.sh/page/mobile-workspace-delete-is-back-63kapj

The home row's bell swap is an icon-name change only and was not rendered.

Lint, typecheck (all packages), mobile tests via turbo, and check:i18n are clean; every string already had translations.


Summary by cubic

Turns the workspace header ⋯ into a native menu, restoring Delete workspace on mobile.

  • Groups actions like Cursor's chat menu: details, rename, pin/unpin, mark unread, copy (link/ID) and share, then delete.
  • Restores the deleteWorkspace handler that #7782 removed; delete leaves for the list once confirmed.
  • Copy actions thread the screen's copied callback so the "Copied" pill confirms them.
  • Marks the unread icon as a bell in both the header menu and the home row's long-press menu.

Summary by CodeRabbit

  • New Features
    • Expanded the workspace toolbar menu with shortcuts to view details, rename, pin or unpin, mark as unread, copy the workspace link or ID, share, and delete the workspace.
  • Updates
    • Updated the Mark as Read/Unread menu icons to use bell icons instead of envelope icons.