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"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
android:id="@+id/udfps_animation_view_internal"
|
android:id="@+id/udfps_animation_view_internal"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent"
|
||||||
|
android:contentDescription="@string/accessibility_fingerprint_label">
|
||||||
|
|
||||||
<!-- Background protection -->
|
<!-- Background protection -->
|
||||||
<ImageView
|
<ImageView
|
||||||
|
|||||||
@@ -829,9 +829,9 @@ public class AuthController implements CoreStartable, CommandQueue.Callbacks,
|
|||||||
|
|
||||||
final Rect overlayBounds = new Rect(
|
final Rect overlayBounds = new Rect(
|
||||||
0, /* left */
|
0, /* left */
|
||||||
0, /* top */
|
mCachedDisplayInfo.getNaturalHeight() / 2, /* top */
|
||||||
mCachedDisplayInfo.getNaturalWidth(), /* right */
|
mCachedDisplayInfo.getNaturalWidth(), /* right */
|
||||||
mCachedDisplayInfo.getNaturalHeight() /* botom */);
|
mCachedDisplayInfo.getNaturalHeight() /* bottom */);
|
||||||
|
|
||||||
mUdfpsOverlayParams = new UdfpsOverlayParams(
|
mUdfpsOverlayParams = new UdfpsOverlayParams(
|
||||||
mUdfpsBounds,
|
mUdfpsBounds,
|
||||||
|
|||||||
@@ -364,7 +364,12 @@ class UdfpsControllerOverlay @JvmOverloads constructor(
|
|||||||
if (accessibilityManager.isTouchExplorationEnabled && isEnrollment) {
|
if (accessibilityManager.isTouchExplorationEnabled && isEnrollment) {
|
||||||
Rect(overlayParams.sensorBounds)
|
Rect(overlayParams.sensorBounds)
|
||||||
} else {
|
} else {
|
||||||
Rect(overlayParams.overlayBounds)
|
Rect(
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
overlayParams.naturalDisplayWidth,
|
||||||
|
overlayParams.naturalDisplayHeight
|
||||||
|
)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
Rect(overlayParams.sensorBounds)
|
Rect(overlayParams.sensorBounds)
|
||||||
|
|||||||
@@ -25,7 +25,6 @@ import android.hardware.biometrics.BiometricOverlayConstants.REASON_ENROLL_ENROL
|
|||||||
import android.hardware.biometrics.BiometricOverlayConstants.ShowReason
|
import android.hardware.biometrics.BiometricOverlayConstants.ShowReason
|
||||||
import android.hardware.fingerprint.FingerprintManager
|
import android.hardware.fingerprint.FingerprintManager
|
||||||
import android.hardware.fingerprint.IUdfpsOverlayControllerCallback
|
import android.hardware.fingerprint.IUdfpsOverlayControllerCallback
|
||||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
|
||||||
import android.testing.TestableLooper.RunWithLooper
|
import android.testing.TestableLooper.RunWithLooper
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.MotionEvent
|
import android.view.MotionEvent
|
||||||
@@ -35,6 +34,7 @@ import android.view.Surface.Rotation
|
|||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.WindowManager
|
import android.view.WindowManager
|
||||||
import android.view.accessibility.AccessibilityManager
|
import android.view.accessibility.AccessibilityManager
|
||||||
|
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||||
import androidx.test.filters.SmallTest
|
import androidx.test.filters.SmallTest
|
||||||
import com.android.keyguard.KeyguardUpdateMonitor
|
import com.android.keyguard.KeyguardUpdateMonitor
|
||||||
import com.android.settingslib.udfps.UdfpsOverlayParams
|
import com.android.settingslib.udfps.UdfpsOverlayParams
|
||||||
@@ -69,8 +69,8 @@ import org.mockito.Captor
|
|||||||
import org.mockito.Mock
|
import org.mockito.Mock
|
||||||
import org.mockito.Mockito.mock
|
import org.mockito.Mockito.mock
|
||||||
import org.mockito.Mockito.verify
|
import org.mockito.Mockito.verify
|
||||||
import org.mockito.Mockito.`when` as whenever
|
|
||||||
import org.mockito.junit.MockitoJUnit
|
import org.mockito.junit.MockitoJUnit
|
||||||
|
import org.mockito.Mockito.`when` as whenever
|
||||||
|
|
||||||
private const val REQUEST_ID = 2L
|
private const val REQUEST_ID = 2L
|
||||||
|
|
||||||
@@ -340,4 +340,22 @@ class UdfpsControllerOverlayTest : SysuiTestCase() {
|
|||||||
assertThat(lp.height).isEqualTo(overlayParams.sensorBounds.height())
|
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