From 09d0502d8c096b29a4bf3d7b8719bb6d4b71641d Mon Sep 17 00:00:00 2001 From: Bryce Lee Date: Thu, 29 Sep 2022 00:02:52 +0000 Subject: [PATCH] Allow AuthContainerView to appear over lock screen. This change adds the window flag to enable the associated window to show over the lockscreen. Test: atest AuthContainerViewTest#testLayoutParams_hasShowWhenLockedFlag Fixes: 249366032 Change-Id: Id04414b007037eab210f7b80107fefd3b8c4dbce --- .../com/android/systemui/biometrics/AuthContainerView.java | 1 + .../android/systemui/biometrics/AuthContainerViewTest.kt | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/AuthContainerView.java b/packages/SystemUI/src/com/android/systemui/biometrics/AuthContainerView.java index 8f5cbb76222fc..46c12b24751a5 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/AuthContainerView.java +++ b/packages/SystemUI/src/com/android/systemui/biometrics/AuthContainerView.java @@ -875,6 +875,7 @@ public class AuthContainerView extends LinearLayout static WindowManager.LayoutParams getLayoutParams(IBinder windowToken, CharSequence title) { final int windowFlags = WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED | WindowManager.LayoutParams.FLAG_SECURE + | WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED | WindowManager.LayoutParams.FLAG_DIM_BEHIND; final WindowManager.LayoutParams lp = new WindowManager.LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, diff --git a/packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt b/packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt index 4a5b23c02e409..d52612b000bc7 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt @@ -321,6 +321,13 @@ class AuthContainerViewTest : SysuiTestCase() { assertThat((layoutParams.flags and WindowManager.LayoutParams.FLAG_SECURE) != 0).isTrue() } + @Test + fun testLayoutParams_hasShowWhenLockedFlag() { + val layoutParams = AuthContainerView.getLayoutParams(windowToken, "") + assertThat((layoutParams.flags and WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED) != 0) + .isTrue() + } + @Test fun testLayoutParams_hasDimbehindWindowFlag() { val layoutParams = AuthContainerView.getLayoutParams(windowToken, "")