feat(composer): act on the token under a right click
Right-clicking an address, a link or a path in the composer got a menu with Cut and Copy greyed out. Both are gated on a non-empty selection, snapshotted from the editor on open (contextSelectionActive), and a right click only moves the caret, so the only way to copy a token was to highlight it by hand first. A right click over the editing surface now selects the token under the pointer before either menu opens, so Cut and Copy apply to it with nothing selected by hand. The unit is the whitespace-delimited run with wrapping punctuation peeled off, classified as an address, a link, a path or a plain word by a pure helper (lib/text-token-at.ts). A right click inside a live selection leaves that selection alone, the way a native text field behaves. Where a token has somewhere to go, one row appears above the editing items: open a link, write to an address, open a local file. It routes through the same opener the transcript uses for its links, so the protocol allow list, the desktop/web/remote routing and the failure toasts are the ones already in place, and a token with no safe destination (a plain word, a bare relative path) simply gets no row. The selection step sits outside the radix trigger on purpose: in a non-secure web context the custom menu stays disabled and the browser own menu appears, and that one now opens over a selected token too.
A
Adam Dalloul committed
06a2a50361ca353ea9508bb40f4488e92ce293a5
Parent: 6f6bd64