feat: resumable transfer UX — surface partial downloads to UI on reconnect
Daemon scans the download directory for .tmp.meta sidecars on network join and emits resumable_transfers IPC event. Web UI shows them in the Transfers panel with a dimmed progress bar and "will resume on reconnect" note. - proto: ResumableFile type, EvtResumableTransfers, resumable_files IpcMessage field - mesh: ScanResumable() scans download dir and emits the event - netmgr: call ScanResumable() after join (both Join and JoinByHash paths) - web: resumableFiles store state, resumable_transfers handler, Transfers UI section Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -162,6 +162,8 @@ func (mgr *Manager) Join(name, shareDir string) (string, error) {
|
||||
}()
|
||||
}
|
||||
|
||||
go m.ScanResumable()
|
||||
|
||||
mgr.emit(proto.IpcMessage{
|
||||
Type: proto.EvtNetworkJoined,
|
||||
NetworkID: netID,
|
||||
@@ -249,6 +251,8 @@ func (mgr *Manager) JoinByHash(netHash64, shareDir string) (string, error) {
|
||||
}()
|
||||
}
|
||||
|
||||
go m.ScanResumable()
|
||||
|
||||
mgr.emit(proto.IpcMessage{
|
||||
Type: proto.EvtNetworkJoined,
|
||||
NetworkID: netID,
|
||||
|
||||
Reference in New Issue
Block a user