From cfcff98ab33e91747bfb4a52e05230dc45323b5a Mon Sep 17 00:00:00 2001 From: Svetoslav Ganov Date: Sat, 28 Apr 2012 15:31:09 -0700 Subject: [PATCH] Populating accessibility node info with supported actions. 1. The system does not allow performing an accessibility action on an accessibility node info unless it explicitly states it supports that action. Adding the new accessibility actions to the info emitted by a view. bug:6407647 Change-Id: I8dad1dc60ec68b4da5ed2349a1366a88820175a1 --- core/java/android/view/View.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index 588bb06b9d78c..081b76555ea40 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -4668,6 +4668,24 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.addAction(AccessibilityNodeInfo.ACTION_FOCUS); } } + + info.addAction(AccessibilityNodeInfo.ACTION_ACCESSIBILITY_FOCUS); + info.addAction(AccessibilityNodeInfo.ACTION_CLEAR_ACCESSIBILITY_FOCUS); + + if (isClickable()) { + info.addAction(AccessibilityNodeInfo.ACTION_CLICK); + } + + if (isLongClickable()) { + info.addAction(AccessibilityNodeInfo.ACTION_LONG_CLICK); + } + + if (getContentDescription() != null) { + info.addAction(AccessibilityNodeInfo.ACTION_NEXT_AT_GRANULARITY); + info.addAction(AccessibilityNodeInfo.ACTION_PREVIOUS_AT_GRANULARITY); + info.setGranularities(AccessibilityNodeInfo.GRANULARITY_CHARACTER + | AccessibilityNodeInfo.GRANULARITY_WORD); + } } /**