Loading packages/SystemUI/src/com/android/systemui/biometrics/AuthContainerView.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -629,7 +629,7 @@ public class AuthContainerView extends LinearLayout if (fpProp != null && fpProp.isAnyUdfpsType()) { if (fpProp != null && fpProp.isAnyUdfpsType()) { maybeUpdatePositionForUdfps(forceInvalidate /* invalidate */); maybeUpdatePositionForUdfps(forceInvalidate /* invalidate */); } } if (faceProp != null && mBiometricView.isFaceOnly()) { if (faceProp != null && mBiometricView != null && mBiometricView.isFaceOnly()) { alwaysUpdatePositionAtScreenBottom(forceInvalidate /* invalidate */); alwaysUpdatePositionAtScreenBottom(forceInvalidate /* invalidate */); } } if (fpProp != null && fpProp.sensorType == TYPE_POWER_BUTTON) { if (fpProp != null && fpProp.sensorType == TYPE_POWER_BUTTON) { Loading packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt +28 −0 Original line number Original line Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.systemui.biometrics import android.app.ActivityTaskManager import android.app.ActivityTaskManager import android.app.admin.DevicePolicyManager import android.app.admin.DevicePolicyManager import android.content.pm.PackageManager import android.content.pm.PackageManager import android.content.res.Configuration import android.hardware.biometrics.BiometricAuthenticator import android.hardware.biometrics.BiometricAuthenticator import android.hardware.biometrics.BiometricConstants import android.hardware.biometrics.BiometricConstants import android.hardware.biometrics.BiometricManager import android.hardware.biometrics.BiometricManager Loading Loading @@ -383,6 +384,33 @@ open class AuthContainerViewTest : SysuiTestCase() { assertThat(container.hasBiometricPrompt()).isFalse() assertThat(container.hasBiometricPrompt()).isFalse() } } @Test fun testAnimateToCredentialUI_rotateCredentialUI() { val container = initializeFingerprintContainer( authenticators = BiometricManager.Authenticators.BIOMETRIC_WEAK or BiometricManager.Authenticators.DEVICE_CREDENTIAL ) container.animateToCredentialUI(false) waitForIdleSync() assertThat(container.hasCredentialView()).isTrue() assertThat(container.hasBiometricPrompt()).isFalse() // Check credential view persists after new attachment container.onAttachedToWindow() assertThat(container.hasCredentialView()).isTrue() assertThat(container.hasBiometricPrompt()).isFalse() val configuration = Configuration(context.resources.configuration) configuration.orientation = Configuration.ORIENTATION_LANDSCAPE container.dispatchConfigurationChanged(configuration) waitForIdleSync() assertThat(container.hasCredentialView()).isTrue() assertThat(container.hasBiometricPrompt()).isFalse() } @Test @Test fun testShowBiometricUI() { fun testShowBiometricUI() { val container = initializeFingerprintContainer() val container = initializeFingerprintContainer() Loading Loading
packages/SystemUI/src/com/android/systemui/biometrics/AuthContainerView.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -629,7 +629,7 @@ public class AuthContainerView extends LinearLayout if (fpProp != null && fpProp.isAnyUdfpsType()) { if (fpProp != null && fpProp.isAnyUdfpsType()) { maybeUpdatePositionForUdfps(forceInvalidate /* invalidate */); maybeUpdatePositionForUdfps(forceInvalidate /* invalidate */); } } if (faceProp != null && mBiometricView.isFaceOnly()) { if (faceProp != null && mBiometricView != null && mBiometricView.isFaceOnly()) { alwaysUpdatePositionAtScreenBottom(forceInvalidate /* invalidate */); alwaysUpdatePositionAtScreenBottom(forceInvalidate /* invalidate */); } } if (fpProp != null && fpProp.sensorType == TYPE_POWER_BUTTON) { if (fpProp != null && fpProp.sensorType == TYPE_POWER_BUTTON) { Loading
packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt +28 −0 Original line number Original line Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.systemui.biometrics import android.app.ActivityTaskManager import android.app.ActivityTaskManager import android.app.admin.DevicePolicyManager import android.app.admin.DevicePolicyManager import android.content.pm.PackageManager import android.content.pm.PackageManager import android.content.res.Configuration import android.hardware.biometrics.BiometricAuthenticator import android.hardware.biometrics.BiometricAuthenticator import android.hardware.biometrics.BiometricConstants import android.hardware.biometrics.BiometricConstants import android.hardware.biometrics.BiometricManager import android.hardware.biometrics.BiometricManager Loading Loading @@ -383,6 +384,33 @@ open class AuthContainerViewTest : SysuiTestCase() { assertThat(container.hasBiometricPrompt()).isFalse() assertThat(container.hasBiometricPrompt()).isFalse() } } @Test fun testAnimateToCredentialUI_rotateCredentialUI() { val container = initializeFingerprintContainer( authenticators = BiometricManager.Authenticators.BIOMETRIC_WEAK or BiometricManager.Authenticators.DEVICE_CREDENTIAL ) container.animateToCredentialUI(false) waitForIdleSync() assertThat(container.hasCredentialView()).isTrue() assertThat(container.hasBiometricPrompt()).isFalse() // Check credential view persists after new attachment container.onAttachedToWindow() assertThat(container.hasCredentialView()).isTrue() assertThat(container.hasBiometricPrompt()).isFalse() val configuration = Configuration(context.resources.configuration) configuration.orientation = Configuration.ORIENTATION_LANDSCAPE container.dispatchConfigurationChanged(configuration) waitForIdleSync() assertThat(container.hasCredentialView()).isTrue() assertThat(container.hasBiometricPrompt()).isFalse() } @Test @Test fun testShowBiometricUI() { fun testShowBiometricUI() { val container = initializeFingerprintContainer() val container = initializeFingerprintContainer() Loading