mirror of
https://github.com/mihonapp/mihon.git
synced 2026-10-16 13:48:09 -07:00
Always update library entries that were never initialized (#3179)
Closes #3179 Closes #3144 Co-authored-by: NarwhalHorns <onefailedgamer@gamil.com>
This commit is contained in:
co-authored by
NarwhalHorns
parent
36ec043a5c
commit
8c0419657b
@@ -189,6 +189,9 @@ class LibraryUpdateWorker(private val context: Context, workerParams: WorkerPara
|
||||
mangaToUpdate = listToUpdate
|
||||
.filter {
|
||||
when {
|
||||
// Entries added without opening them have no details yet
|
||||
!it.manga.initialized -> true
|
||||
|
||||
it.manga.updateStrategy == UpdateStrategy.ONLY_FETCH_ONCE && it.totalChapters > 0L -> {
|
||||
skippedUpdates.add(
|
||||
it.manga to context.stringResource(MR.strings.skipped_reason_not_always_update),
|
||||
@@ -347,7 +350,7 @@ class LibraryUpdateWorker(private val context: Context, workerParams: WorkerPara
|
||||
val update = updateMangaFromRemote(
|
||||
source = source,
|
||||
manga = manga,
|
||||
fetchDetails = libraryPreferences.autoUpdateMetadata.get(),
|
||||
fetchDetails = !manga.initialized || libraryPreferences.autoUpdateMetadata.get(),
|
||||
fetchChapters = true,
|
||||
fetchWindow = fetchWindow,
|
||||
)
|
||||
|
||||
@@ -69,7 +69,7 @@ class UpdateMangaFromRemote(
|
||||
fetchChapters = fetchChapters,
|
||||
)
|
||||
}
|
||||
awaitUpdateFromSource(manga, update.manga, manualFetch)
|
||||
awaitUpdateFromSource(manga, update.manga, fetchDetails, manualFetch)
|
||||
val newChapters = syncChaptersWithSource.await(
|
||||
rawSourceChapters = update.chapters,
|
||||
manga = manga,
|
||||
@@ -89,6 +89,7 @@ class UpdateMangaFromRemote(
|
||||
private suspend fun awaitUpdateFromSource(
|
||||
localManga: Manga,
|
||||
remoteManga: SManga,
|
||||
fetchDetails: Boolean,
|
||||
manualFetch: Boolean,
|
||||
): Boolean {
|
||||
val remoteTitle = try {
|
||||
@@ -134,7 +135,7 @@ class UpdateMangaFromRemote(
|
||||
thumbnailUrl = thumbnailUrl,
|
||||
status = remoteManga.status.toLong(),
|
||||
updateStrategy = remoteManga.update_strategy,
|
||||
initialized = true,
|
||||
initialized = localManga.initialized || fetchDetails,
|
||||
memo = remoteManga.memo,
|
||||
),
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user