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:
parent
3670d649b8
commit
4eaccc966e
3 changed files with 5 additions and 24 deletions
|
@ -8,7 +8,6 @@ import android.view.animation.LinearInterpolator
|
||||||
import android.view.animation.RotateAnimation
|
import android.view.animation.RotateAnimation
|
||||||
import android.widget.FrameLayout
|
import android.widget.FrameLayout
|
||||||
import androidx.annotation.IntRange
|
import androidx.annotation.IntRange
|
||||||
import androidx.dynamicanimation.animation.DynamicAnimation
|
|
||||||
import com.google.android.material.progressindicator.CircularProgressIndicator
|
import com.google.android.material.progressindicator.CircularProgressIndicator
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -84,27 +83,9 @@ class ReaderProgressIndicator @JvmOverloads constructor(
|
||||||
updateRotateAnimation()
|
updateRotateAnimation()
|
||||||
}
|
}
|
||||||
|
|
||||||
fun setCompleteProgressAndHide() {
|
private fun updateRotateAnimation() {
|
||||||
val listener = object : DynamicAnimation.OnAnimationEndListener {
|
if (isAttachedToWindow && indicator.isShown && !indicator.isIndeterminate) {
|
||||||
override fun onAnimationEnd(
|
if (animation == null) {
|
||||||
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) {
|
|
||||||
startAnimation(rotateAnimation)
|
startAnimation(rotateAnimation)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -252,7 +252,7 @@ class PagerPageHolder(
|
||||||
* Called when the page is ready.
|
* Called when the page is ready.
|
||||||
*/
|
*/
|
||||||
private fun setImage() {
|
private fun setImage() {
|
||||||
progressIndicator.setCompleteProgressAndHide()
|
progressIndicator.hide()
|
||||||
retryButton?.isVisible = false
|
retryButton?.isVisible = false
|
||||||
decodeErrorLayout?.isVisible = false
|
decodeErrorLayout?.isVisible = false
|
||||||
|
|
||||||
|
|
|
@ -265,7 +265,7 @@ class WebtoonPageHolder(
|
||||||
* Called when the page is ready.
|
* Called when the page is ready.
|
||||||
*/
|
*/
|
||||||
private fun setImage() {
|
private fun setImage() {
|
||||||
progressIndicator.setCompleteProgressAndHide()
|
progressIndicator.hide()
|
||||||
retryContainer?.isVisible = false
|
retryContainer?.isVisible = false
|
||||||
removeDecodeErrorLayout()
|
removeDecodeErrorLayout()
|
||||||
|
|
||||||
|
|
Reference in a new issue