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

Commit 7b475a41 authored by Nicolò Mazzucato's avatar Nicolò Mazzucato Committed by Automerger Merge Worker
Browse files

Merge "Only reinflate bouncer after rotation if flag enabled" into udc-qpr-dev am: 4b5d78bb

parents f6736493 4b5d78bb
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ import static com.android.keyguard.KeyguardSecurityContainer.USER_TYPE_PRIMARY;
import static com.android.keyguard.KeyguardSecurityContainer.USER_TYPE_SECONDARY_USER;
import static com.android.keyguard.KeyguardSecurityContainer.USER_TYPE_WORK_PROFILE;
import static com.android.systemui.DejankUtils.whitelistIpcs;
import static com.android.systemui.flags.Flags.LOCKSCREEN_ENABLE_LANDSCAPE;
import static com.android.systemui.flags.Flags.REVAMPED_BOUNCER_MESSAGES;

import android.app.ActivityManager;
@@ -370,9 +371,13 @@ public class KeyguardSecurityContainerController extends ViewController<Keyguard

                @Override
                public void onOrientationChanged(int orientation) {
                    if (mFeatureFlags.isEnabled(LOCKSCREEN_ENABLE_LANDSCAPE)) {
                        // TODO(b/295603468)
                        // Fix reinflation of views when flag is enabled.
                        KeyguardSecurityContainerController.this
                            .onDensityOrFontScaleOrOrientationChanged();
                    }
                }
            };
    private final KeyguardUpdateMonitorCallback mKeyguardUpdateMonitorCallback =
            new KeyguardUpdateMonitorCallback() {
+45 −0
Original line number Diff line number Diff line
@@ -620,6 +620,51 @@ class KeyguardSecurityContainerControllerTest : SysuiTestCase() {
        configurationListenerArgumentCaptor.value.onUiModeChanged()
        verify(view).reloadColors()
    }
    @Test
    fun onOrientationChanged_landscapeKeyguardFlagDisabled_blockReinflate() {
        featureFlags.set(Flags.LOCKSCREEN_ENABLE_LANDSCAPE, false)

        // Run onOrientationChanged
        val configurationListenerArgumentCaptor =
            ArgumentCaptor.forClass(ConfigurationController.ConfigurationListener::class.java)
        underTest.onViewAttached()
        verify(configurationController).addCallback(configurationListenerArgumentCaptor.capture())
        clearInvocations(viewFlipperController)
        configurationListenerArgumentCaptor.value.onOrientationChanged(
            Configuration.ORIENTATION_LANDSCAPE
        )
        // Verify view is reinflated when flag is on
        verify(viewFlipperController, never()).clearViews()
        verify(viewFlipperController, never())
            .asynchronouslyInflateView(
                eq(SecurityMode.PIN),
                any(),
                onViewInflatedCallbackArgumentCaptor.capture()
            )
    }

    @Test
    fun onOrientationChanged_landscapeKeyguardFlagEnabled_doesReinflate() {
        featureFlags.set(Flags.LOCKSCREEN_ENABLE_LANDSCAPE, true)

        // Run onOrientationChanged
        val configurationListenerArgumentCaptor =
            ArgumentCaptor.forClass(ConfigurationController.ConfigurationListener::class.java)
        underTest.onViewAttached()
        verify(configurationController).addCallback(configurationListenerArgumentCaptor.capture())
        clearInvocations(viewFlipperController)
        configurationListenerArgumentCaptor.value.onOrientationChanged(
            Configuration.ORIENTATION_LANDSCAPE
        )
        // Verify view is reinflated when flag is on
        verify(viewFlipperController).clearViews()
        verify(viewFlipperController)
            .asynchronouslyInflateView(
                eq(SecurityMode.PIN),
                any(),
                onViewInflatedCallbackArgumentCaptor.capture()
            )
    }

    @Test
    fun hasDismissActions() {