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

Commit 463444fb authored by Jorim Jaggi's avatar Jorim Jaggi Committed by Android Git Automerger
Browse files

am 420f2688: Merge "Only listen for fingerprint if needed." into mnc-dev

* commit '420f2688':
  Only listen for fingerprint if needed.
parents de2aef5a 420f2688
Loading
Loading
Loading
Loading
+20 −6
Original line number Diff line number Diff line
@@ -679,7 +679,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener {
                cb.onScreenTurnedOn();
            }
        }
        startListeningForFingerprint();
        updateFingerprintListeningState();
    }

    protected void handleScreenTurnedOff(int arg1) {
@@ -691,7 +691,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener {
                cb.onScreenTurnedOff(arg1);
            }
        }
        stopListeningForFingerprint();
        updateFingerprintListeningState();
    }

    /**
@@ -764,14 +764,14 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener {
                            mHandler.sendMessage(mHandler.obtainMessage(MSG_USER_SWITCHING,
                                    newUserId, 0, reply));
                            mSwitchingUser = true;
                            stopListeningForFingerprint();
                            updateFingerprintListeningState();
                        }
                        @Override
                        public void onUserSwitchComplete(int newUserId) throws RemoteException {
                            mHandler.sendMessage(mHandler.obtainMessage(MSG_USER_SWITCH_COMPLETE,
                                    newUserId, 0));
                            mSwitchingUser = false;
                            startListeningForFingerprint();
                            updateFingerprintListeningState();
                        }
                        @Override
                        public void onForegroundProfileSwitch(int newProfileId) {
@@ -787,8 +787,21 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener {
        trustManager.registerTrustListener(this);

        mFpm = (FingerprintManager) context.getSystemService(Context.FINGERPRINT_SERVICE);
        updateFingerprintListeningState();
    }

    private void updateFingerprintListeningState() {
        boolean shouldListenForFingerprint = shouldListenForFingerprint();
        if (mFingerprintDetectionRunning && !shouldListenForFingerprint) {
            stopListeningForFingerprint();
        } else if (!mFingerprintDetectionRunning && shouldListenForFingerprint) {
            startListeningForFingerprint();
        }
    }

    private boolean shouldListenForFingerprint() {
        return mScreenOn && mKeyguardIsVisible && !mSwitchingUser;
    }

    private void startListeningForFingerprint() {
        if (DEBUG) Log.v(TAG, "startListeningForFingerprint()");
@@ -804,7 +817,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener {
        }
    }

    public void stopListeningForFingerprint() {
    private void stopListeningForFingerprint() {
        if (DEBUG) Log.v(TAG, "stopListeningForFingerprint()");
        if (isFingerprintDetectionRunning()) {
            mFingerprintCancelSignal.cancel();
@@ -1062,6 +1075,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener {
                cb.onKeyguardVisibilityChangedRaw(isShowing);
            }
        }
        updateFingerprintListeningState();
    }

    /**
+0 −5
Original line number Diff line number Diff line
@@ -1398,14 +1398,9 @@ public class KeyguardViewMediator extends SystemUI {
            updateActivityLockScreenState();
            adjustStatusBarLocked();
            sendUserPresentBroadcast();
            maybeStopListeningForFingerprint();
        }
    }

    private void maybeStopListeningForFingerprint() {
        mUpdateMonitor.stopListeningForFingerprint();
    }

    private void adjustStatusBarLocked() {
        if (mStatusBarManager == null) {
            mStatusBarManager = (StatusBarManager)