From 94c7b14b1a4f53157997939505b70ef056ca90d8 Mon Sep 17 00:00:00 2001 From: Uriel Rodriguez Date: Fri, 12 Oct 2012 15:00:48 -0400 Subject: Fix bug 7338736. Only starting FUL if the screen is on Change-Id: Id767cf1394218a7e9dccabcdd9aae5af27b493b1 --- .../policy/impl/keyguard/KeyguardFaceUnlockView.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardFaceUnlockView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardFaceUnlockView.java index 49671383deba..4f420715aba1 100644 --- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardFaceUnlockView.java +++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardFaceUnlockView.java @@ -16,6 +16,7 @@ package com.android.internal.policy.impl.keyguard; import android.content.Context; +import android.os.PowerManager; import android.telephony.TelephonyManager; import android.util.AttributeSet; import android.util.Log; @@ -29,7 +30,7 @@ import com.android.internal.widget.LockPatternUtils; public class KeyguardFaceUnlockView extends LinearLayout implements KeyguardSecurityView { - private static final String TAG = "KeyguardFaceUnlockView"; + private static final String TAG = "FULKeyguardFaceUnlockView"; private static final boolean DEBUG = false; private KeyguardSecurityCallback mKeyguardSecurityCallback; private LockPatternUtils mLockPatternUtils; @@ -139,11 +140,14 @@ public class KeyguardFaceUnlockView extends LinearLayout implements KeyguardSecu final boolean backupIsTimedOut = ( monitor.getFailedUnlockAttempts() >= LockPatternUtils.FAILED_ATTEMPTS_BEFORE_TIMEOUT); - // TODO: These max attempts checks are also checked in KeyguardSecurityModel so they - // might not be necessary here anymore. + PowerManager powerManager = (PowerManager) mContext.getSystemService( + Context.POWER_SERVICE); + // TODO: Some of these conditions are handled in KeyguardSecurityModel and may not be + // necessary here. if (monitor.getPhoneState() != TelephonyManager.CALL_STATE_RINGING && !monitor.getMaxBiometricUnlockAttemptsReached() - && !backupIsTimedOut) { + && !backupIsTimedOut + && powerManager.isScreenOn()) { mBiometricUnlock.start(); } else { mBiometricUnlock.stopAndShowBackup(); -- cgit v1.2.3-59-g8ed1b