Fix webtoon mode

remotes/Isira-Seneviratne/java.time v6.4.2
Koitharu 2 years ago
parent 910069ec99
commit ef0cf4766a
Signed by: Koitharu
GPG Key ID: 676DEE768C17A9D7

@ -5,6 +5,7 @@ import android.view.View
import androidx.core.view.isVisible import androidx.core.view.isVisible
import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.LifecycleOwner
import com.davemorrissey.labs.subscaleview.ImageSource import com.davemorrissey.labs.subscaleview.ImageSource
import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView
import org.koitharu.kotatsu.R import org.koitharu.kotatsu.R
import org.koitharu.kotatsu.core.exceptions.resolve.ExceptionResolver import org.koitharu.kotatsu.core.exceptions.resolve.ExceptionResolver
import org.koitharu.kotatsu.core.os.NetworkState import org.koitharu.kotatsu.core.os.NetworkState
@ -96,6 +97,9 @@ class WebtoonHolder(
override fun onImageShowing(settings: ReaderSettings) { override fun onImageShowing(settings: ReaderSettings) {
binding.ssiv.colorFilter = settings.colorFilter?.toColorFilter() binding.ssiv.colorFilter = settings.colorFilter?.toColorFilter()
with(binding.ssiv) { with(binding.ssiv) {
minimumScaleType = SubsamplingScaleImageView.SCALE_TYPE_CUSTOM
minScale = width / sWidth.toFloat()
maxScale = minScale
scrollTo( scrollTo(
when { when {
scrollToRestore != 0 -> scrollToRestore scrollToRestore != 0 -> scrollToRestore

@ -100,17 +100,6 @@ class WebtoonImageView @JvmOverloads constructor(
} }
} }
override fun onReady() {
super.onReady()
adjustScale()
}
override fun onDownsamplingChanged() {
super.onDownsamplingChanged()
adjustScale()
computeScrollRange()
}
private fun scrollToInternal(pos: Int) { private fun scrollToInternal(pos: Int) {
scrollPos = pos scrollPos = pos
ct.set(sWidth / 2f, (height / 2f + pos.toFloat()) / minScale) ct.set(sWidth / 2f, (height / 2f + pos.toFloat()) / minScale)
@ -128,10 +117,4 @@ class WebtoonImageView @JvmOverloads constructor(
private fun parentHeight(): Int { private fun parentHeight(): Int {
return ancestors.firstNotNullOfOrNull { it as? RecyclerView }?.height ?: 0 return ancestors.firstNotNullOfOrNull { it as? RecyclerView }?.height ?: 0
} }
private fun adjustScale() {
minScale = width / sWidth.toFloat()
maxScale = minScale
minimumScaleType = SCALE_TYPE_CUSTOM
}
} }

Loading…
Cancel
Save