Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9d6e679a authored by Hawkwood Glazier's avatar Hawkwood Glazier
Browse files

Deflake Lockscreen Clock Screenshot Tests

Disabling the TextAnimator when animation is disabled should produce
consistent text between runs of the screenshot test.

Fixes: 243942947
Test: atest KeyguardClockSwitchScreenshotTest
Change-Id: Ifaa060a1212331756ad412f1e6027c140fa35921
parent 38b3e558
Loading
Loading
Loading
Loading
+13 −2
Original line number Diff line number Diff line
@@ -189,8 +189,13 @@ class AnimatableClockView @JvmOverloads constructor(

    override fun onDraw(canvas: Canvas) {
        lastDraw = getTimestamp()
        // intentionally doesn't call super.onDraw here or else the text will be rendered twice
        // Use textAnimator to render text if animation is enabled.
        // Otherwise default to using standard draw functions.
        if (isAnimationEnabled) {
            textAnimator?.draw(canvas)
        } else {
            super.onDraw(canvas)
        }
    }

    override fun invalidate() {
@@ -345,6 +350,9 @@ class AnimatableClockView @JvmOverloads constructor(
                onAnimationEnd = onAnimationEnd
            )
            textAnimator?.glyphFilter = glyphFilter
            if (color != null && !isAnimationEnabled) {
                setTextColor(color)
            }
        } else {
            // when the text animator is set, update its start values
            onTextAnimatorInitialized = Runnable {
@@ -359,6 +367,9 @@ class AnimatableClockView @JvmOverloads constructor(
                    onAnimationEnd = onAnimationEnd
                )
                textAnimator?.glyphFilter = glyphFilter
                if (color != null && !isAnimationEnabled) {
                    setTextColor(color)
                }
            }
        }
    }