Skip to content

Resend files from History #2

Description

@mxmgorin

Description

Add a Resend action on History rows: reuse the file set from a past transfer and send it to a device picked fresh from the radar (not auto-sent back to the original peer). Works both directions — Sent (original source files) and Received (locally saved copies).

Plan

  1. Store source file paths on each HistoryEntry (src/transfer/history.rs) — Sent: the sent paths; Received: the saved destination paths. Add as Option / #[serde(default)] so existing history.json stays loadable.
  2. History row A = Resend → stage that entry's file paths.
  3. Jump to the radar in a "pick a device to send N files" mode (files-first, the inverse of the normal device→browser→send flow).
  4. A on a peer → outbound::spawn(alias, base_url, me, staged_paths, …), reusing the existing send path (src/app/mod.rs:520) with no file-browser step.
  5. Contextual History footer hint: A Resend · L1/R1 Tabs.

Notes

  • Destination is picked live from the radar, so no need to persist the peer's device id/address — the stored peer alias stays display-only.
  • Source files moved/deleted since: disable Resend on that row (or skip missing) with a clear reason.
  • Respect the one-transfer-at-a-time guard ("A send is already running").
  • Current state: History tab is read-only (footer just L1/R1 Tabs), entries lack file paths.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions