summaryrefslogtreecommitdiffstats
path: root/policy
diff options
context:
space:
mode:
Diffstat (limited to 'policy')
-rw-r--r--policy/src/com/android/internal/policy/impl/LockPatternKeyguardView.java17
1 files changed, 16 insertions, 1 deletions
diff --git a/policy/src/com/android/internal/policy/impl/LockPatternKeyguardView.java b/policy/src/com/android/internal/policy/impl/LockPatternKeyguardView.java
index 4049c73..071044e 100644
--- a/policy/src/com/android/internal/policy/impl/LockPatternKeyguardView.java
+++ b/policy/src/com/android/internal/policy/impl/LockPatternKeyguardView.java
@@ -526,11 +526,23 @@ public class LockPatternKeyguardView extends KeyguardViewBase implements Handler
if (mUpdateMonitor.getPhoneState() == TelephonyManager.CALL_STATE_IDLE
&& transportInvisible) {
bindToFaceLock();
+ //Eliminate the black background so that the lockpattern will be visible
+ //If FaceUnlock is cancelled
+ mHandler.sendEmptyMessageDelayed(MSG_HIDE_FACELOCK_AREA_VIEW, 4000);
} else {
mHandler.sendEmptyMessage(MSG_HIDE_FACELOCK_AREA_VIEW);
}
}
+ /** Unbind from facelock if something covers this window (such as an alarm) */
+ @Override
+ public void onWindowFocusChanged (boolean hasWindowFocus) {
+ if(!hasWindowFocus) {
+ stopAndUnbindFromFaceLock();
+ mHandler.sendEmptyMessage(MSG_HIDE_FACELOCK_AREA_VIEW);
+ }
+ }
+
@Override
public void show() {
if (mMode == Mode.LockScreen) {
@@ -607,7 +619,10 @@ public class LockPatternKeyguardView extends KeyguardViewBase implements Handler
//We need to stop faceunlock when a phonecall comes in
@Override
public void onPhoneStateChanged(int phoneState) {
- if(phoneState == TelephonyManager.CALL_STATE_RINGING) stopAndUnbindFromFaceLock();
+ if(phoneState == TelephonyManager.CALL_STATE_RINGING) {
+ stopAndUnbindFromFaceLock();
+ mHandler.sendEmptyMessage(MSG_HIDE_FACELOCK_AREA_VIEW);
+ }
}
@Override