diff --git a/web/src/store/index.ts b/web/src/store/index.ts index 571bfd2..66b185f 100644 --- a/web/src/store/index.ts +++ b/web/src/store/index.ts @@ -347,10 +347,13 @@ export const useWaste = create((set, get) => ({ break } case 'file_complete': { - if (msg.path && msg.offer?.name) { - // clear progress entry - const xid = msg.offer.xid + // Always clear progress — transfer_id is the xid in daemon mode; offer.xid in browser mode. + const xid = msg.transfer_id ?? msg.offer?.xid + if (xid) { set(s => { const fp = { ...s.fileProgress }; delete fp[xid]; return { fileProgress: fp } }) + } + // Browser mode: trigger download via anchor click. + if (msg.path && msg.offer?.name) { const a = document.createElement('a') a.href = msg.path a.download = msg.offer.name