Hide reader progress indicator right away (#5750)

The image will be drawn over it so the animation won't be visible anyway
This commit is contained in:
Ivan Iskandar 2021-08-20 05:12:31 +07:00 committed by GitHub
parent 3670d649b8
commit 4eaccc966e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 24 deletions

View File

@ -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 {

View File

@ -252,7 +252,7 @@ class PagerPageHolder(
* Called when the page is ready.
*/
private fun setImage() {
progressIndicator.setCompleteProgressAndHide()
progressIndicator.hide()
retryButton?.isVisible = false
decodeErrorLayout?.isVisible = false

View File

@ -265,7 +265,7 @@ class WebtoonPageHolder(
* Called when the page is ready.
*/
private fun setImage() {
progressIndicator.setCompleteProgressAndHide()
progressIndicator.hide()
retryContainer?.isVisible = false
removeDecodeErrorLayout()