fix(ui): fence stale allocation status

- keep paused and completed rows authoritative over transient allocation state

- preserve allocation feedback for failed-download retries

- expose the table allocation phase as an accessible indeterminate progressbar
This commit is contained in:
NimBold
2026-08-16 00:09:21 +03:30
parent 6aa07db5df
commit bdbc11ad94
4 changed files with 40 additions and 10 deletions
+2 -1
View File
@@ -58,6 +58,7 @@ import {
TORRENT_ENCRYPTION_POLICY_DISABLED,
TORRENT_ENCRYPTION_POLICY_FORCE_ENCRYPTION,
TORRENT_ENCRYPTION_POLICY_REQUIRE_CRYPTO,
isAllocationPhaseVisible,
type TorrentEncryptionPolicy,
type TorrentFileAllocation,
} from '../utils/downloads';
@@ -1140,7 +1141,7 @@ export const PropertiesWindowApp = () => {
});
const isPromptFooter = footerActions.includes('keepEditing');
const fileSelectionEditingEnabled = editingEnabled && isTorrentFileSelectionEditable(snapshot.status);
const allocationPending = snapshot.allocationPending === true;
const allocationPending = isAllocationPhaseVisible(snapshot.allocationPending === true, snapshot.status);
const total = snapshot.size || (snapshot.totalBytes === undefined
? t($ => $.addDownloads.unknownSize)
: `${snapshot.totalIsEstimate ? '~' : ''}${formatDownloadBytes(snapshot.totalBytes)}`);