Merge "Dismiss BiometricPrompt when screen turns off" into qt-dev

am: 373c37f7ec

Change-Id: I9427649d27e5bc01493be7ce737ae1142217a3cc
This commit is contained in:
Kevin Chyn
2019-05-15 23:11:32 -07:00
committed by android-build-merger

View File

@@ -31,7 +31,9 @@ import android.util.Log;
import android.view.WindowManager; import android.view.WindowManager;
import com.android.internal.os.SomeArgs; import com.android.internal.os.SomeArgs;
import com.android.systemui.Dependency;
import com.android.systemui.SystemUI; import com.android.systemui.SystemUI;
import com.android.systemui.keyguard.WakefulnessLifecycle;
import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.CommandQueue;
/** /**
@@ -58,6 +60,7 @@ public class BiometricDialogImpl extends SystemUI implements CommandQueue.Callba
private IBiometricServiceReceiverInternal mReceiver; private IBiometricServiceReceiverInternal mReceiver;
private boolean mDialogShowing; private boolean mDialogShowing;
private Callback mCallback = new Callback(); private Callback mCallback = new Callback();
private WakefulnessLifecycle mWakefulnessLifecycle;
private Handler mHandler = new Handler(Looper.getMainLooper()) { private Handler mHandler = new Handler(Looper.getMainLooper()) {
@Override @Override
@@ -133,6 +136,16 @@ public class BiometricDialogImpl extends SystemUI implements CommandQueue.Callba
} }
} }
final WakefulnessLifecycle.Observer mWakefulnessObserver = new WakefulnessLifecycle.Observer() {
@Override
public void onStartedGoingToSleep() {
if (mDialogShowing) {
if (DEBUG) Log.d(TAG, "User canceled due to screen off");
mHandler.obtainMessage(MSG_USER_CANCELED).sendToTarget();
}
}
};
@Override @Override
public void start() { public void start() {
final PackageManager pm = mContext.getPackageManager(); final PackageManager pm = mContext.getPackageManager();
@@ -141,6 +154,8 @@ public class BiometricDialogImpl extends SystemUI implements CommandQueue.Callba
|| pm.hasSystemFeature(PackageManager.FEATURE_IRIS)) { || pm.hasSystemFeature(PackageManager.FEATURE_IRIS)) {
getComponent(CommandQueue.class).addCallback(this); getComponent(CommandQueue.class).addCallback(this);
mWindowManager = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE); mWindowManager = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
mWakefulnessLifecycle = Dependency.get(WakefulnessLifecycle.class);
mWakefulnessLifecycle.addObserver(mWakefulnessObserver);
} }
} }