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

Commit eaeb4ad3 authored by Johannes Gallmann's avatar Johannes Gallmann
Browse files

Fix StatusBar chip location not updated after screen rotation

Bug: 289875579
Test: atest SystemEventChipAnimationController, Manual, i.e. checking chip locations after rotations
Change-Id: Ifd1df66f9615e61a569cc3f97ba9856c7b9e5baa
parent 985b432d
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -265,6 +265,11 @@ class SystemEventChipAnimationController @Inject constructor(
                // not animating then [prepareChipAnimation] will take care of it for us
                currentAnimatedView?.let {
                    updateChipBounds(it, newContentArea)
                    // Since updateCurrentAnimatedView can only be called during an animation, we
                    // have to create a dummy animator here to apply the new chip bounds
                    val animator = ValueAnimator.ofInt(0, 1).setDuration(0)
                    animator.addUpdateListener { updateCurrentAnimatedView() }
                    animator.start()
                }
            }
        })
+6 −1
Original line number Diff line number Diff line
@@ -18,6 +18,8 @@ package com.android.systemui.statusbar.events

import android.content.Context
import android.graphics.Rect
import android.testing.AndroidTestingRunner
import android.testing.TestableLooper
import android.util.Pair
import android.view.Gravity
import android.view.View
@@ -37,11 +39,14 @@ import org.junit.Assert.assertFalse
import org.junit.Assert.assertTrue
import org.junit.Before
import org.junit.Test
import org.junit.runner.RunWith
import org.mockito.Mock
import org.mockito.Mockito.verify
import org.mockito.MockitoAnnotations

@SmallTest
@RunWith(AndroidTestingRunner::class)
@TestableLooper.RunWithLooper
class SystemEventChipAnimationControllerTest : SysuiTestCase() {
    private lateinit var controller: SystemEventChipAnimationController

@@ -159,7 +164,7 @@ class SystemEventChipAnimationControllerTest : SysuiTestCase() {
        assertThat(chipRect).isEqualTo(Rect(890, 25, 990, 75))
    }

    class TestView(context: Context) : View(context), BackgroundAnimatableView {
    private class TestView(context: Context) : View(context), BackgroundAnimatableView {
        override val view: View
            get() = this