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

Commit 81229f82 authored by Josh Tsuji's avatar Josh Tsuji Committed by Automerger Merge Worker
Browse files

Merge "Revert "Keep keyguard visible if we're launching an occluding activity...

Merge "Revert "Keep keyguard visible if we're launching an occluding activity over a going-away keyguard."" into tm-qpr-dev am: 0330bedc

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22223355



Change-Id: I2e4f1d6fa69d6280da92465db379fd235ca33522
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents f5428fad 0330bedc
Loading
Loading
Loading
Loading
+0 −5
Original line number Original line Diff line number Diff line
@@ -2733,7 +2733,6 @@ public final class NotificationPanelViewController implements Dumpable {
    public void setIsLaunchAnimationRunning(boolean running) {
    public void setIsLaunchAnimationRunning(boolean running) {
        boolean wasRunning = mIsLaunchAnimationRunning;
        boolean wasRunning = mIsLaunchAnimationRunning;
        mIsLaunchAnimationRunning = running;
        mIsLaunchAnimationRunning = running;
        mCentralSurfaces.updateIsKeyguard();
        if (wasRunning != mIsLaunchAnimationRunning) {
        if (wasRunning != mIsLaunchAnimationRunning) {
            mShadeExpansionStateManager.notifyLaunchingActivityChanged(running);
            mShadeExpansionStateManager.notifyLaunchingActivityChanged(running);
        }
        }
@@ -3805,10 +3804,6 @@ public final class NotificationPanelViewController implements Dumpable {
        return mClosing || mIsLaunchAnimationRunning;
        return mClosing || mIsLaunchAnimationRunning;
    }
    }


    public boolean isLaunchAnimationRunning() {
        return mIsLaunchAnimationRunning;
    }

    public boolean isTracking() {
    public boolean isTracking() {
        return mTracking;
        return mTracking;
    }
    }
+2 −4
Original line number Original line Diff line number Diff line
@@ -301,11 +301,9 @@ public class NotificationShadeWindowControllerImpl implements NotificationShadeW
    }
    }


    private void applyKeyguardFlags(NotificationShadeWindowState state) {
    private void applyKeyguardFlags(NotificationShadeWindowState state) {
        // Keyguard is visible if it's showing or if it's fading away (in which case we're animating
        final boolean keyguardOrAod = state.keyguardShowing
        // it out, but the wallpaper should remain visible as a backdrop for the animation);
        final boolean keyguardOrAodVisible = (state.keyguardShowing || state.keyguardFadingAway)
                || (state.dozing && mDozeParameters.getAlwaysOn());
                || (state.dozing && mDozeParameters.getAlwaysOn());
        if ((keyguardOrAodVisible && !state.mediaBackdropShowing && !state.lightRevealScrimOpaque)
        if ((keyguardOrAod && !state.mediaBackdropShowing && !state.lightRevealScrimOpaque)
                || mKeyguardViewMediator.isAnimatingBetweenKeyguardAndSurfaceBehind()) {
                || mKeyguardViewMediator.isAnimatingBetweenKeyguardAndSurfaceBehind()) {
            // Show the wallpaper if we're on keyguard/AOD and the wallpaper is not occluded by a
            // Show the wallpaper if we're on keyguard/AOD and the wallpaper is not occluded by a
            // solid backdrop. Also, show it if we are currently animating between the
            // solid backdrop. Also, show it if we are currently animating between the
+1 −14
Original line number Original line Diff line number Diff line
@@ -1007,8 +1007,6 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
                // The light reveal scrim should always be fully revealed by the time the keyguard
                // The light reveal scrim should always be fully revealed by the time the keyguard
                // is done going away. Double check that this is true.
                // is done going away. Double check that this is true.
                if (!mKeyguardStateController.isKeyguardGoingAway()) {
                if (!mKeyguardStateController.isKeyguardGoingAway()) {
                    updateIsKeyguard();

                    if (mLightRevealScrim.getRevealAmount() != 1f) {
                    if (mLightRevealScrim.getRevealAmount() != 1f) {
                        Log.e(TAG, "Keyguard is done going away, but someone left the light reveal "
                        Log.e(TAG, "Keyguard is done going away, but someone left the light reveal "
                                + "scrim at reveal amount: " + mLightRevealScrim.getRevealAmount());
                                + "scrim at reveal amount: " + mLightRevealScrim.getRevealAmount());
@@ -2895,10 +2893,6 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
                showKeyguardImpl();
                showKeyguardImpl();
            }
            }
        } else {
        } else {
            final boolean isLaunchingOrGoingAway =
                    mNotificationPanelViewController.isLaunchAnimationRunning()
                            || mKeyguardStateController.isKeyguardGoingAway();

            // During folding a foldable device this might be called as a result of
            // During folding a foldable device this might be called as a result of
            // 'onScreenTurnedOff' call for the inner display.
            // 'onScreenTurnedOff' call for the inner display.
            // In this case:
            // In this case:
@@ -2910,14 +2904,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
            if (!mScreenOffAnimationController.isKeyguardHideDelayed()
            if (!mScreenOffAnimationController.isKeyguardHideDelayed()
                    // If we're animating occluded, there's an activity launching over the keyguard
                    // If we're animating occluded, there's an activity launching over the keyguard
                    // UI. Wait to hide it until after the animation concludes.
                    // UI. Wait to hide it until after the animation concludes.
                    && !mKeyguardViewMediator.isOccludeAnimationPlaying()
                    && !mKeyguardViewMediator.isOccludeAnimationPlaying()) {
                    // If we're occluded, but playing an animation (launch or going away animations)
                    // the keyguard is visible behind the animation.
                    && !(mKeyguardStateController.isOccluded() && isLaunchingOrGoingAway)) {
                    // If we're going away and occluded, it means we are launching over the
                    // unsecured keyguard, which will subsequently go away. Wait to hide it until
                    // after the animation concludes to avoid the lockscreen UI changing into the
                    // shade UI behind the launch animation.
                return hideKeyguardImpl(forceStateChange);
                return hideKeyguardImpl(forceStateChange);
            }
            }
        }
        }
+0 −10
Original line number Original line Diff line number Diff line
@@ -222,16 +222,6 @@ public class NotificationShadeWindowControllerImplTest extends SysuiTestCase {
        assertThat((mLayoutParameters.getValue().flags & FLAG_SHOW_WALLPAPER) != 0).isTrue();
        assertThat((mLayoutParameters.getValue().flags & FLAG_SHOW_WALLPAPER) != 0).isTrue();
    }
    }


    @Test
    public void attach_fadingAway_wallpaperVisible() {
        clearInvocations(mWindowManager);
        mNotificationShadeWindowController.attach();
        mNotificationShadeWindowController.setKeyguardFadingAway(true);

        verify(mWindowManager).updateViewLayout(any(), mLayoutParameters.capture());
        assertThat((mLayoutParameters.getValue().flags & FLAG_SHOW_WALLPAPER) != 0).isTrue();
    }

    @Test
    @Test
    public void setBackgroundBlurRadius_expandedWithBlurs() {
    public void setBackgroundBlurRadius_expandedWithBlurs() {
        mNotificationShadeWindowController.setBackgroundBlurRadius(10);
        mNotificationShadeWindowController.setBackgroundBlurRadius(10);
+0 −12
Original line number Original line Diff line number Diff line
@@ -1286,18 +1286,6 @@ public class CentralSurfacesImplTest extends SysuiTestCase {
        verify(mPowerManagerService, never()).wakeUp(anyLong(), anyInt(), anyString(), anyString());
        verify(mPowerManagerService, never()).wakeUp(anyLong(), anyInt(), anyString(), anyString());
    }
    }


    @Test
    public void keyguard_notHidden_ifGoingAwayAndOccluded() {
        setKeyguardShowingAndOccluded(true /* showing */, false /* occluded */);

        when(mKeyguardStateController.isKeyguardGoingAway()).thenReturn(true);
        when(mKeyguardStateController.isOccluded()).thenReturn(true);

        mCentralSurfaces.updateIsKeyguard(false);

        verify(mStatusBarStateController, never()).setState(eq(SHADE), anyBoolean());
    }

    @Test
    @Test
    public void frpLockedDevice_shadeDisabled() {
    public void frpLockedDevice_shadeDisabled() {
        when(mDeviceProvisionedController.isFrpActive()).thenReturn(true);
        when(mDeviceProvisionedController.isFrpActive()).thenReturn(true);