Use ChapterInfo wherever possible

This commit is contained in:
Jobobby04
2022-07-22 15:09:40 -04:00
parent 450aeb5a9d
commit 8ef4a7fbbf
6 changed files with 22 additions and 32 deletions
@@ -4,10 +4,7 @@ import androidx.compose.runtime.Composable
import eu.kanade.domain.manga.interactor.GetFlatMetadataById
import eu.kanade.domain.manga.interactor.GetManga
import eu.kanade.domain.manga.interactor.InsertFlatMetadata
import eu.kanade.tachiyomi.data.database.models.Chapter
import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.source.CatalogueSource
import eu.kanade.tachiyomi.source.model.SChapter
import eu.kanade.tachiyomi.source.model.SManga
import eu.kanade.tachiyomi.source.model.toMangaInfo
import eu.kanade.tachiyomi.ui.manga.MangaScreenState
@@ -118,6 +115,4 @@ interface MetadataSource<M : RaisedSearchMetadata, I> : CatalogueSource {
fun DescriptionComposable(state: MangaScreenState.Success, openMetadataViewer: () -> Unit, search: (String) -> Unit)
suspend fun MangaInfo.id() = getManga.await(key, id)?.id
val SManga.id get() = (this as? Manga)?.id
val SChapter.mangaId get() = (this as? Chapter)?.manga_id
}
@@ -14,6 +14,7 @@ import eu.kanade.tachiyomi.source.model.MetadataMangasPage
import eu.kanade.tachiyomi.source.model.Page
import eu.kanade.tachiyomi.source.model.SChapter
import eu.kanade.tachiyomi.source.model.SManga
import eu.kanade.tachiyomi.source.model.toChapterInfo
import eu.kanade.tachiyomi.source.online.BrowseSourceFilterHeader
import eu.kanade.tachiyomi.source.online.FollowsSource
import eu.kanade.tachiyomi.source.online.HttpSource
@@ -198,7 +199,7 @@ class MangaDex(delegate: HttpSource, val context: Context) :
}
override fun fetchPageList(chapter: SChapter): Observable<List<Page>> {
return runAsObservable { pageHandler.fetchPageList(chapter, isLogged(), usePort443Only(), dataSaver(), delegate) }
return runAsObservable { pageHandler.fetchPageList(chapter.toChapterInfo(), isLogged(), usePort443Only(), dataSaver(), delegate) }
}
override fun fetchImage(page: Page): Observable<Response> {
@@ -38,7 +38,6 @@ import tachiyomi.source.model.MangaInfo
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import uy.kohesive.injekt.injectLazy
import eu.kanade.tachiyomi.data.database.models.Chapter as DbChapter
class MergedSource : HttpSource() {
private val getManga: GetManga by injectLazy()
@@ -123,10 +122,6 @@ class MergedSource : HttpSource() {
return if (dedupe) dedupeChapterList(mangaReferences, chapters) else chapters
}
fun getChaptersAsBlockingAsDbChapter(mangaId: Long, editScanlators: Boolean = false, dedupe: Boolean = true): List<DbChapter> {
return getChaptersAsBlocking(mangaId, editScanlators, dedupe).map(Chapter::toDbChapter)
}
fun getChaptersAsBlocking(mangaId: Long, editScanlators: Boolean = false, dedupe: Boolean = true): List<Chapter> {
return runBlocking { getChapters(mangaId, editScanlators, dedupe) }
}