summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinderTest.kt6
-rw-r--r--packages/SystemUI/res/layout/sidefps_view.xml1
-rw-r--r--packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinder.kt13
3 files changed, 7 insertions, 13 deletions
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinderTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinderTest.kt
index 5249bbe2a861..e8c30bafbba0 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinderTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinderTest.kt
@@ -58,7 +58,6 @@ import org.mockito.Mockito.verify
import org.mockito.Mockito.`when`
import org.mockito.junit.MockitoJUnit
import org.mockito.junit.MockitoRule
-import org.mockito.kotlin.firstValue
@SmallTest
@RunWith(AndroidJUnit4::class)
@@ -116,12 +115,7 @@ class SideFpsOverlayViewBinderTest : SysuiTestCase() {
runCurrent()
verify(kosmos.windowManager).addView(any(), any())
-
verify(kosmos.windowManager).addView(viewCaptor.capture(), any())
- verify(viewCaptor.firstValue)
- .announceForAccessibility(
- mContext.getText(R.string.accessibility_side_fingerprint_indicator_label)
- )
updateSfpsIndicatorRequests(kosmos, mContext, alternateBouncerRequest = false)
runCurrent()
diff --git a/packages/SystemUI/res/layout/sidefps_view.xml b/packages/SystemUI/res/layout/sidefps_view.xml
index e80ed26cffe5..22599a35ed64 100644
--- a/packages/SystemUI/res/layout/sidefps_view.xml
+++ b/packages/SystemUI/res/layout/sidefps_view.xml
@@ -20,6 +20,7 @@
android:id="@+id/sidefps_animation"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+ android:contentDescription="@string/accessibility_side_fingerprint_indicator_label"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_rawRes="@raw/sfps_pulse"/> \ No newline at end of file
diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinder.kt b/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinder.kt
index 30b98a658821..ceb2b10ab517 100644
--- a/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinder.kt
+++ b/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinder.kt
@@ -99,11 +99,6 @@ constructor(
show()
} else if (showIndicatorForDeviceEntry) {
show()
- overlayView?.announceForAccessibility(
- applicationContext.resources.getString(
- R.string.accessibility_side_fingerprint_indicator_label
- )
- )
} else {
hide()
}
@@ -182,6 +177,11 @@ constructor(
overlayShowAnimator.start()
+ /**
+ * Intercepts TYPE_WINDOW_STATE_CHANGED accessibility event, preventing Talkback
+ * from speaking @string/accessibility_fingerprint_label twice when sensor location
+ * indicator is in focus
+ */
it.setAccessibilityDelegate(
object : View.AccessibilityDelegate() {
override fun dispatchPopulateAccessibilityEvent(
@@ -190,8 +190,7 @@ constructor(
): Boolean {
return if (
event.getEventType() ===
- android.view.accessibility.AccessibilityEvent
- .TYPE_WINDOW_STATE_CHANGED
+ AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED
) {
true
} else {