Merge "Support talkback with new Udfps Overlay on keyguard" into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
2c934288f7
@@ -20,7 +20,8 @@
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:id="@+id/udfps_animation_view_internal"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
android:layout_height="match_parent"
|
||||
android:contentDescription="@string/accessibility_fingerprint_label">
|
||||
|
||||
<!-- Background protection -->
|
||||
<ImageView
|
||||
|
||||
@@ -829,9 +829,9 @@ public class AuthController implements CoreStartable, CommandQueue.Callbacks,
|
||||
|
||||
final Rect overlayBounds = new Rect(
|
||||
0, /* left */
|
||||
0, /* top */
|
||||
mCachedDisplayInfo.getNaturalHeight() / 2, /* top */
|
||||
mCachedDisplayInfo.getNaturalWidth(), /* right */
|
||||
mCachedDisplayInfo.getNaturalHeight() /* botom */);
|
||||
mCachedDisplayInfo.getNaturalHeight() /* bottom */);
|
||||
|
||||
mUdfpsOverlayParams = new UdfpsOverlayParams(
|
||||
mUdfpsBounds,
|
||||
|
||||
@@ -364,7 +364,12 @@ class UdfpsControllerOverlay @JvmOverloads constructor(
|
||||
if (accessibilityManager.isTouchExplorationEnabled && isEnrollment) {
|
||||
Rect(overlayParams.sensorBounds)
|
||||
} else {
|
||||
Rect(overlayParams.overlayBounds)
|
||||
Rect(
|
||||
0,
|
||||
0,
|
||||
overlayParams.naturalDisplayWidth,
|
||||
overlayParams.naturalDisplayHeight
|
||||
)
|
||||
}
|
||||
} else {
|
||||
Rect(overlayParams.sensorBounds)
|
||||
|
||||
@@ -25,7 +25,6 @@ import android.hardware.biometrics.BiometricOverlayConstants.REASON_ENROLL_ENROL
|
||||
import android.hardware.biometrics.BiometricOverlayConstants.ShowReason
|
||||
import android.hardware.fingerprint.FingerprintManager
|
||||
import android.hardware.fingerprint.IUdfpsOverlayControllerCallback
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
import android.testing.TestableLooper.RunWithLooper
|
||||
import android.view.LayoutInflater
|
||||
import android.view.MotionEvent
|
||||
@@ -35,6 +34,7 @@ import android.view.Surface.Rotation
|
||||
import android.view.View
|
||||
import android.view.WindowManager
|
||||
import android.view.accessibility.AccessibilityManager
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.keyguard.KeyguardUpdateMonitor
|
||||
import com.android.settingslib.udfps.UdfpsOverlayParams
|
||||
@@ -69,8 +69,8 @@ import org.mockito.Captor
|
||||
import org.mockito.Mock
|
||||
import org.mockito.Mockito.mock
|
||||
import org.mockito.Mockito.verify
|
||||
import org.mockito.Mockito.`when` as whenever
|
||||
import org.mockito.junit.MockitoJUnit
|
||||
import org.mockito.Mockito.`when` as whenever
|
||||
|
||||
private const val REQUEST_ID = 2L
|
||||
|
||||
@@ -340,4 +340,22 @@ class UdfpsControllerOverlayTest : SysuiTestCase() {
|
||||
assertThat(lp.height).isEqualTo(overlayParams.sensorBounds.height())
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun fullScreenOverlayWithNewTouchDetectionEnabled() = withRotation(ROTATION_0) {
|
||||
withReason(REASON_AUTH_KEYGUARD) {
|
||||
whenever(featureFlags.isEnabled(Flags.UDFPS_NEW_TOUCH_DETECTION)).thenReturn(true)
|
||||
|
||||
controllerOverlay.show(udfpsController, overlayParams)
|
||||
verify(windowManager).addView(
|
||||
eq(controllerOverlay.overlayView),
|
||||
layoutParamsCaptor.capture()
|
||||
)
|
||||
|
||||
// Layout params should use natural display width and height
|
||||
val lp = layoutParamsCaptor.value
|
||||
assertThat(lp.width).isEqualTo(overlayParams.naturalDisplayWidth)
|
||||
assertThat(lp.height).isEqualTo(overlayParams.naturalDisplayHeight)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user