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

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

Merge "Add Keyguard DPM state change callback" into tm-dev

parents f0692adb d5584538
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -233,6 +233,13 @@ public class KeyguardSecurityContainerController extends ViewController<Keyguard
                    mSecurityViewFlipperController.reloadColors();
                }
            };
    private final KeyguardUpdateMonitorCallback mKeyguardUpdateMonitorCallback =
            new KeyguardUpdateMonitorCallback() {
        @Override
        public void onDevicePolicyManagerStateChanged() {
            showPrimarySecurityScreen(false);
        }
    };

    private KeyguardSecurityContainerController(KeyguardSecurityContainer view,
            AdminSecondaryLockScreenController.Factory adminSecondaryLockScreenControllerFactory,
@@ -279,6 +286,7 @@ public class KeyguardSecurityContainerController extends ViewController<Keyguard

    @Override
    protected void onViewAttached() {
        mUpdateMonitor.registerCallback(mKeyguardUpdateMonitorCallback);
        mView.setSwipeListener(mSwipeListener);
        mView.addMotionEventListener(mGlobalTouchListener);
        mConfigurationController.addCallback(mConfigurationListener);
@@ -286,6 +294,7 @@ public class KeyguardSecurityContainerController extends ViewController<Keyguard

    @Override
    protected void onViewDetached() {
        mUpdateMonitor.removeCallback(mKeyguardUpdateMonitorCallback);
        mConfigurationController.removeCallback(mConfigurationListener);
        mView.removeMotionEventListener(mGlobalTouchListener);
    }
+9 −1
Original line number Diff line number Diff line
@@ -2723,12 +2723,20 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
    }

    /**
     * Handle {@link #MSG_DPM_STATE_CHANGED}
     * Handle {@link #MSG_DPM_STATE_CHANGED} which can change primary authentication methods to
     * pin/pattern/password/none.
     */
    private void handleDevicePolicyManagerStateChanged(int userId) {
        Assert.isMainThread();
        updateFingerprintListeningState(BIOMETRIC_ACTION_UPDATE);
        updateSecondaryLockscreenRequirement(userId);

        for (int i = 0; i < mCallbacks.size(); i++) {
            KeyguardUpdateMonitorCallback cb = mCallbacks.get(i).get();
            if (cb != null) {
                cb.onDevicePolicyManagerStateChanged();
            }
        }
    }

    /**
+5 −0
Original line number Diff line number Diff line
@@ -299,6 +299,11 @@ public class KeyguardUpdateMonitorCallback {
     */
    public void onSecondaryLockscreenRequirementChanged(int userId) { }

    /**
     * Called when device policy manager state changes.
     */
    public void onDevicePolicyManagerStateChanged() { }

    /**
     * Called when notifying user to unlock in order to use NFC.
     */