diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d466aab..98736a13 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,6 +40,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). - (**Migration**) Fix being able to start search without selected destination sources - (**Migration**) Fix search hotkey (ctrl+f) in the single manga migration search page not focusing the search textfield - (**Migration**) Fix missing manual search option for in progress entry search without a selected match on mobile +- (**Migration**) Fix being unable to retry failed search for a match without a selected match - (**Reader**) Fix scrollbar appearing with "fit to widt/height/screen" page scale mode and applied safe area insets - (**Reader**) Fix wrongly positioned mobile progress bar current page indicator - (**Reader**) Fix mobile progress bar previous/next chapter button visibility on hover and while disabled diff --git a/src/features/migration/MigrationManager.ts b/src/features/migration/MigrationManager.ts index 5c9f25e9..de51c4cc 100644 --- a/src/features/migration/MigrationManager.ts +++ b/src/features/migration/MigrationManager.ts @@ -1153,6 +1153,9 @@ export class MigrationManager { if (MigrationEntries.hasStatus(entry, MigrationEntryStatus.SEARCH_FAILED)) { MigrationManager.updateState((draft) => { + const draftEntry = draft.entries[id]; + draftEntry.status = MigrationEntryStatus.SEARCH_PENDING; + draftEntry.error = undefined; draft.searchProgress.completed -= 1; draft.searchProgress.failed -= 1; }); @@ -1168,6 +1171,9 @@ export class MigrationManager { if (MigrationEntries.hasStatus(entry, MigrationEntryStatus.MIGRATION_FAILED)) { MigrationManager.updateState((draft) => { + const draftEntry = draft.entries[id]; + draftEntry.status = MigrationEntryStatus.MIGRATION_PENDING; + draftEntry.error = undefined; draft.migrationProgress.completed -= 1; draft.migrationProgress.failed -= 1; }); diff --git a/src/features/migration/components/migration-entry/MigrationDestinationEntry.tsx b/src/features/migration/components/migration-entry/MigrationDestinationEntry.tsx index 7b248042..3fe9b094 100644 --- a/src/features/migration/components/migration-entry/MigrationDestinationEntry.tsx +++ b/src/features/migration/components/migration-entry/MigrationDestinationEntry.tsx @@ -72,11 +72,9 @@ const EntryError = ({ id, title, isMigrating, - sourceMangaId, error, status, }: { - sourceMangaId: MangaIdInfo['id']; isMigrating: boolean; } & Pick & Pick) => { @@ -138,9 +136,7 @@ const EntryError = ({ color="error" startIcon={} onClick={() => - MigrationManager.retryEntry(sourceMangaId).catch( - defaultPromiseErrorHandler('MigrationEntryRow::retry'), - ) + MigrationManager.retryEntry(id).catch(defaultPromiseErrorHandler('MigrationEntryRow::retry')) } > {t`Retry`} @@ -239,6 +235,17 @@ export const MigrationDestinationEntry = ({ > {(() => { + if (error) { + return ( + + ); + } if (!entry) { return ( - ); - } - return ; })()}