Enable accessibility click to scroll to next clock in carousel
Allows switch access to switch through clock options using select. Also
affects Talkback.
Flag: EXEMPT bug fix
Bug: 378604758
Test: manually verified using switch access and Talkback
Change-Id: Ia0d048d3cf7c054c1ba86ae3d093cf4c7f5d9cb0
diff --git a/src/com/android/customization/picker/clock/ui/binder/CarouselAccessibilityDelegate.kt b/src/com/android/customization/picker/clock/ui/binder/CarouselAccessibilityDelegate.kt
index 5d6c3ff..2c5e745 100644
--- a/src/com/android/customization/picker/clock/ui/binder/CarouselAccessibilityDelegate.kt
+++ b/src/com/android/customization/picker/clock/ui/binder/CarouselAccessibilityDelegate.kt
@@ -26,7 +26,7 @@
class CarouselAccessibilityDelegate(
private val context: Context,
private val scrollForwardCallback: () -> Unit,
- private val scrollBackwardCallback: () -> Unit
+ private val scrollBackwardCallback: () -> Unit,
) : View.AccessibilityDelegate() {
var contentDescriptionOfSelectedClock = ""
@@ -45,13 +45,13 @@
info.addAction(
AccessibilityNodeInfo.AccessibilityAction(
ACTION_SCROLL_FORWARD,
- context.getString(R.string.scroll_forward_and_select)
+ context.getString(R.string.scroll_forward_and_select),
)
)
info.addAction(
AccessibilityNodeInfo.AccessibilityAction(
ACTION_SCROLL_BACKWARD,
- context.getString(R.string.scroll_backward_and_select)
+ context.getString(R.string.scroll_backward_and_select),
)
)
info.addAction(AccessibilityNodeInfo.AccessibilityAction.ACTION_ACCESSIBILITY_FOCUS)
@@ -62,6 +62,10 @@
override fun performAccessibilityAction(host: View, action: Int, args: Bundle?): Boolean {
when (action) {
+ AccessibilityNodeInfo.ACTION_CLICK -> {
+ scrollForwardCallback.invoke()
+ return true
+ }
ACTION_SCROLL_BACKWARD -> {
scrollBackwardCallback.invoke()
return true