diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderProgressIndicator.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderProgressIndicator.kt index 2d17a4d95..bc9f796dc 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderProgressIndicator.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderProgressIndicator.kt @@ -8,7 +8,6 @@ import android.view.animation.LinearInterpolator import android.view.animation.RotateAnimation import android.widget.FrameLayout import androidx.annotation.IntRange -import androidx.dynamicanimation.animation.DynamicAnimation import com.google.android.material.progressindicator.CircularProgressIndicator /** @@ -84,27 +83,9 @@ class ReaderProgressIndicator @JvmOverloads constructor( updateRotateAnimation() } - fun setCompleteProgressAndHide() { - val listener = object : DynamicAnimation.OnAnimationEndListener { - override fun onAnimationEnd( - animation: DynamicAnimation<*>?, - canceled: Boolean, - value: Float, - velocity: Float - ) { - hide() - indicator.progressDrawable?.removeSpringAnimationEndListener(this) - } - } - - indicator.progressDrawable?.addSpringAnimationEndListener(listener) - indicator.setProgressCompat(100, true) - updateRotateAnimation(forceRotate = true) - } - - private fun updateRotateAnimation(forceRotate: Boolean = false) { - if (forceRotate || (indicator.isShown && !indicator.isIndeterminate)) { - if (animation == null && isAttachedToWindow) { + private fun updateRotateAnimation() { + if (isAttachedToWindow && indicator.isShown && !indicator.isIndeterminate) { + if (animation == null) { startAnimation(rotateAnimation) } } else { 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 3afb45210..11148511f 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 @@ -339,7 +339,7 @@ class PagerPageHolder( */ private fun setImage() { if (extraPage == null) { - progressIndicator.setCompleteProgressAndHide() + progressIndicator.hide() } else { progressIndicator.setProgress(95) } @@ -480,7 +480,7 @@ class PagerPageHolder( return ImageUtil.mergeBitmaps(imageBitmap, imageBitmap2, isLTR, viewer.config.pageCanvasColor) { scope?.launchUI { if (it == 100) { - progressIndicator.setCompleteProgressAndHide() + progressIndicator.hide() } else { progressIndicator.setProgress(it) } 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 75a0a4938..27d72cd93 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 @@ -265,7 +265,7 @@ class WebtoonPageHolder( * Called when the page is ready. */ private fun setImage() { - progressIndicator.setCompleteProgressAndHide() + progressIndicator.hide() retryContainer?.isVisible = false removeDecodeErrorLayout()