2020-10-26 07:13:02 +01:00
|
|
|
package exh.recs
|
|
|
|
|
|
2022-08-31 20:41:35 +02:00
|
|
|
import android.os.Bundle
|
|
|
|
|
import androidx.paging.PagingSource
|
2022-07-03 19:37:27 +02:00
|
|
|
import eu.kanade.domain.manga.interactor.GetManga
|
2022-07-03 05:52:03 +02:00
|
|
|
import eu.kanade.domain.manga.model.Manga
|
2020-10-26 07:13:02 +01:00
|
|
|
import eu.kanade.tachiyomi.source.model.FilterList
|
2022-08-31 20:41:35 +02:00
|
|
|
import eu.kanade.tachiyomi.source.model.SManga
|
2020-10-26 07:13:02 +01:00
|
|
|
import eu.kanade.tachiyomi.ui.browse.source.browse.BrowseSourcePresenter
|
2022-08-31 20:41:35 +02:00
|
|
|
import exh.metadata.metadata.base.RaisedSearchMetadata
|
2022-07-03 05:52:03 +02:00
|
|
|
import kotlinx.coroutines.runBlocking
|
|
|
|
|
import uy.kohesive.injekt.Injekt
|
|
|
|
|
import uy.kohesive.injekt.api.get
|
2020-10-26 07:13:02 +01:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Presenter of [RecommendsController]. Inherit BrowseCataloguePresenter.
|
|
|
|
|
*/
|
2022-07-03 05:52:03 +02:00
|
|
|
class RecommendsPresenter(
|
|
|
|
|
val mangaId: Long,
|
|
|
|
|
sourceId: Long,
|
2022-07-03 19:37:27 +02:00
|
|
|
private val getManga: GetManga = Injekt.get(),
|
2022-07-03 05:52:03 +02:00
|
|
|
) : BrowseSourcePresenter(sourceId) {
|
2020-10-26 07:13:02 +01:00
|
|
|
|
|
|
|
|
var manga: Manga? = null
|
|
|
|
|
|
2022-08-31 20:41:35 +02:00
|
|
|
override fun onCreate(savedState: Bundle?) {
|
|
|
|
|
super.onCreate(savedState)
|
2022-07-03 19:37:27 +02:00
|
|
|
this.manga = runBlocking { getManga.await(mangaId) }
|
2022-08-31 20:41:35 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
override fun createPager(query: String, filters: FilterList): PagingSource<Long, Pair<SManga, RaisedSearchMetadata?>> {
|
|
|
|
|
return RecommendsPagingSource(manga!!)
|
2020-10-26 07:13:02 +01:00
|
|
|
}
|
|
|
|
|
}
|