Retry failed extractions on unpause, fix delete callback deps
- triggerPendingExtractions() now runs when unpausing, so packages with extraction errors are automatically retried - executeDeleteSelection no longer depends on snapshot objects (prevents unnecessary re-renders with large queues) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
430ec7352b
commit
ecf56cb977
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "real-debrid-downloader",
|
||||
"version": "1.5.13",
|
||||
"version": "1.5.14",
|
||||
"description": "Real-Debrid Downloader Desktop (Electron + React + TypeScript)",
|
||||
"main": "build/main/main/main.js",
|
||||
"author": "Sucukdeluxe",
|
||||
|
||||
@ -2484,6 +2484,9 @@ export class DownloadManager extends EventEmitter {
|
||||
active.abortController.abort("stall");
|
||||
}
|
||||
}
|
||||
|
||||
// Retry failed extractions after unpause
|
||||
this.triggerPendingExtractions();
|
||||
}
|
||||
|
||||
this.persistSoon();
|
||||
|
||||
@ -1584,12 +1584,15 @@ export function App(): ReactElement {
|
||||
}, [contextMenu]);
|
||||
|
||||
const executeDeleteSelection = useCallback((ids: Set<string>): void => {
|
||||
for (const id of ids) {
|
||||
if (snapshot.session.items[id]) void window.rd.removeItem(id);
|
||||
else if (snapshot.session.packages[id]) onPackageCancel(id);
|
||||
}
|
||||
setSnapshot((prev) => {
|
||||
for (const id of ids) {
|
||||
if (prev.session.items[id]) void window.rd.removeItem(id);
|
||||
else if (prev.session.packages[id]) void window.rd.cancelPackage(id);
|
||||
}
|
||||
return prev;
|
||||
});
|
||||
setSelectedIds(new Set());
|
||||
}, [snapshot.session.items, snapshot.session.packages, onPackageCancel]);
|
||||
}, []);
|
||||
|
||||
const requestDeleteSelection = useCallback((): void => {
|
||||
if (selectedIds.size === 0) return;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user