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

Commit 803e933e authored by Beverly Tai's avatar Beverly Tai Committed by Android (Google) Code Review
Browse files

Merge "Update dynamicPriv listeners on keyguard changes" into rvc-dev

parents 078fb920 1b77b7a8
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -53,10 +53,15 @@ public class DynamicPrivacyController implements KeyguardStateController.Callbac
        mLastDynamicUnlocked = isDynamicallyUnlocked();
    }

    @Override
    public void onKeyguardFadingAwayChanged() {
        onUnlockedChanged();
    }

    @Override
    public void onUnlockedChanged() {
        if (isDynamicPrivacyEnabled()) {
            // We only want to notify our listeners if dynamic privacy is actually active
            // We only want to notify our listeners if dynamic privacy is actually enabled
            boolean dynamicallyUnlocked = isDynamicallyUnlocked();
            if (dynamicallyUnlocked != mLastDynamicUnlocked || mCacheInvalid) {
                mLastDynamicUnlocked = dynamicallyUnlocked;
+17 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.systemui.statusbar.notification;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
@@ -85,6 +86,22 @@ public class DynamicPrivacyControllerTest extends SysuiTestCase {
        verify(mListener).onDynamicPrivacyChanged();
    }

    @Test
    public void testNotifiedWhenKeyguardFadingAwayChanges() {
        when(mKeyguardStateController.canDismissLockScreen()).thenReturn(false);
        when(mKeyguardStateController.isKeyguardGoingAway()).thenReturn(false);
        enableDynamicPrivacy();

        when(mKeyguardStateController.isKeyguardFadingAway()).thenReturn(true);
        mDynamicPrivacyController.onKeyguardFadingAwayChanged();
        verify(mListener).onDynamicPrivacyChanged();
        reset(mListener);

        when(mKeyguardStateController.isKeyguardFadingAway()).thenReturn(false);
        mDynamicPrivacyController.onUnlockedChanged();
        verify(mListener).onDynamicPrivacyChanged();
    }

    private void enableDynamicPrivacy() {
        when(mLockScreenUserManager.shouldHideNotifications(any())).thenReturn(
                false);