From 323d258bc288f7eccddd8acc08f9e5158611d935 Mon Sep 17 00:00:00 2001 From: tarsin Date: Tue, 20 Dec 2022 20:57:45 +0800 Subject: [PATCH] Fix RTL load --- .../eu/kanade/tachiyomi/ui/reader/loader/PageLoader.kt | 7 ++++--- .../tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt | 2 +- .../tachiyomi/ui/reader/viewer/pager/PagerViewerAdapter.kt | 2 +- .../tachiyomi/ui/reader/viewer/webtoon/WebtoonAdapter.kt | 4 ++-- .../ui/reader/viewer/webtoon/WebtoonPageHolder.kt | 2 +- 5 files changed, 9 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/PageLoader.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/PageLoader.kt index 956bcb402..ab22c931d 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/PageLoader.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/PageLoader.kt @@ -30,7 +30,8 @@ abstract class PageLoader { abstract fun size(): Int - fun request(index: Int) { + fun request(page: ReaderPage) { + val index = mPages.indexOf(page) val image = mImageCache[index] if (image != null) notifyPageSucceed(index, image) @@ -38,8 +39,8 @@ abstract class PageLoader { onRequest(index) } - fun retryPage(index: Int) { - onForceRequest(index) + fun retryPage(page: ReaderPage) { + onForceRequest(mPages.indexOf(page)) } protected abstract fun onRequest(index: Int) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt index bc0f6c63c..94758e7a7 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt @@ -202,7 +202,7 @@ class PagerPageHolder( errorLayout = ReaderErrorBinding.inflate(LayoutInflater.from(context), this, true) errorLayout?.actionRetry?.viewer = viewer errorLayout?.actionRetry?.setOnClickListener { - viewer.activity.mGalleryProvider?.retryPage(page.index) + viewer.activity.mGalleryProvider?.retryPage(page) } } errorLayout?.root?.isVisible = true diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewerAdapter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewerAdapter.kt index bfca32bfe..d8b64431c 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewerAdapter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewerAdapter.kt @@ -54,7 +54,7 @@ class PagerViewerAdapter(private val viewer: PagerViewer) : ViewPagerAdapter() { * Creates a new view for the item at the given [position]. */ override fun createView(container: ViewGroup, position: Int): View { - currentChapter?.request(position) + currentChapter?.request(items[position] as ReaderPage) return when (val item = items[position]) { is ReaderPage -> PagerPageHolder(readerThemedContext, viewer, item) else -> throw NotImplementedError("Holder for ${item.javaClass} not implemented") diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonAdapter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonAdapter.kt index 40e2f6683..5f9da8160 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonAdapter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonAdapter.kt @@ -74,9 +74,9 @@ class WebtoonAdapter(val viewer: WebtoonViewer) : RecyclerView.Adapter holder.bind(item as ReaderPage) + is WebtoonPageHolder -> holder.bind(item) } } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt index cadf0d235..9adc20b4e 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt @@ -254,7 +254,7 @@ class WebtoonPageHolder( errorLayout = ReaderErrorBinding.inflate(LayoutInflater.from(context), frame, true) errorLayout?.root?.layoutParams = FrameLayout.LayoutParams(MATCH_PARENT, (parentHeight * 0.8).toInt()) errorLayout?.actionRetry?.setOnClickListener { - viewer.activity.mGalleryProvider?.retryPage(page!!.index) + viewer.activity.mGalleryProvider?.retryPage(page!!) } } return errorLayout!!