Add a Craft-like sidebar row context menu #39
Labels
No labels
delivered
outstanding
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
kayg/hermternal-apple#39
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Ask
Add a Craft-like context menu to chat-sidebar session rows. The menu must expose at least Copy deep link and Pin, with pin state reflecting the pinned-session behavior tracked separately in the companion pinning issue.
Files and APIs
Sources/Hermternal/Views/SidebarView.swift:SessionRowand its row context menu.Sources/Hermternal/Views/RootView.swift:ChatWindow, if clipboard or row-action routing is composed there.Sources/Hermternal/HermternalApp.swift: existingonOpenURLhandling forMessageDeepLink.AppModel.openThenScroll(to:): the existing deep-link consumer. Reuse the URL scheme/path it already accepts; do not invent a second scheme.Acceptance
HermternalApp.swiftonOpenURL/MessageDeepLinkpath accepts and that reopens the copied chat (and message target when one is represented), without introducing another URL scheme.List(selection:)on macOS, so the no-selection-change requirement is achievable..contextMenuwas chosen overcontextMenu(forSelectionType:)because selection is single and a per-row menu provably acts on the clicked row.This is the sidebar action surface related to the broader deep-link work in #4, not a duplicate of that issue's URL/navigation design.