Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c379752a authored by Alan Viverette's avatar Alan Viverette Committed by Android Git Automerger
Browse files

am 3320ef95: Merge "Add findFocus API for AccessibilityNodeProvider" into klp-dev

* commit '3320ef95':
  Add findFocus API for AccessibilityNodeProvider
parents 666b998b 3320ef95
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -29459,6 +29459,7 @@ package android.view.accessibility {
    ctor public AccessibilityNodeProvider();
    method public android.view.accessibility.AccessibilityNodeInfo createAccessibilityNodeInfo(int);
    method public java.util.List<android.view.accessibility.AccessibilityNodeInfo> findAccessibilityNodeInfosByText(java.lang.String, int);
    method public android.view.accessibility.AccessibilityNodeInfo findFocus(int);
    method public boolean performAction(int, int, android.os.Bundle);
  }
+8 −2
Original line number Diff line number Diff line
@@ -423,9 +423,15 @@ final class AccessibilityInteractionController {
                        }
                    } break;
                    case AccessibilityNodeInfo.FOCUS_INPUT: {
                        // Input focus cannot go to virtual views.
                        View target = root.findFocus();
                        if (target != null && isShown(target)) {
                        if (target == null || !isShown(target)) {
                            break;
                        }
                        AccessibilityNodeProvider provider = target.getAccessibilityNodeProvider();
                        if (provider != null) {
                            focused = provider.findFocus(focusType);
                        }
                        if (focused == null) {
                            focused = target.createAccessibilityNodeInfo();
                        }
                    } break;
+15 −0
Original line number Diff line number Diff line
@@ -132,4 +132,19 @@ public abstract class AccessibilityNodeProvider {
            int virtualViewId) {
        return null;
    }

    /**
     * Find the virtual view, i.e. a descendant of the host View, that has the
     * specified focus type.
     *
     * @param focus The focus to find. One of
     *            {@link AccessibilityNodeInfo#FOCUS_INPUT} or
     *            {@link AccessibilityNodeInfo#FOCUS_ACCESSIBILITY}.
     * @return The node info of the focused view or null.
     * @see AccessibilityNodeInfo#FOCUS_INPUT
     * @see AccessibilityNodeInfo#FOCUS_ACCESSIBILITY
     */
    public AccessibilityNodeInfo findFocus(int focus) {
        return null;
    }
}