Skip to content

feat(sftp): add "Copy path" file-row context-menu action (desktop)#62

Merged
kipavy merged 1 commit into
devfrom
feat/sftp-copy-path-54
Jul 24, 2026
Merged

feat(sftp): add "Copy path" file-row context-menu action (desktop)#62
kipavy merged 1 commit into
devfrom
feat/sftp-copy-path-54

Conversation

@kipavy

@kipavy kipavy commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Closes #54.

Adds a Copy path item to the desktop SFTP file-browser row context menu, closing the desktop/mobile parity gap (mobile already has mobile.sftp.copyPath).

Change

  • New menu item in the shared buildSelectionActions() (FilePane.tsx), so it lands in both desktop views at once — single-pane RightPanel browser and the dual-pane SFTPPage.
  • Single selection copies that entry's full path; multi selection copies one path per line.
  • Works for both local and remote panes; reuses writeClipboard from src/utils/clipboard.ts.
  • Pure copyPathText helper extracted + unit-tested (single / multi / ordering / empty).
  • Labels added under fileTransfer.pane.menu.copyPath for en / fr / ru (pluralized; ru with few/many).

Verification

  • tsc clean; i18n key-parity test passes; full suite 786 tests green.
  • Live E2E in a headless build: single-select copied /root/alpha.txt; multi-select copied both paths one-per-line; menu renders with the clipboard icon between Edit and Rename.

Closes #54. Mirrors the mobile SFTP "Copy path" action in the shared desktop
FilePane context menu (both single- and dual-pane views). Single selection
copies the entry path; multi-selection copies one path per line. Works for
local and remote panes via writeClipboard. Adds en/fr/ru labels under
fileTransfer.pane.menu and a pure copyPathText helper with unit tests.
@kipavy
kipavy merged commit 58b5ebe into dev Jul 24, 2026
2 checks passed
@kipavy
kipavy deleted the feat/sftp-copy-path-54 branch July 24, 2026 09:59
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