Loading core/api/current.txt +1 −1 Original line number Diff line number Diff line Loading @@ -51912,6 +51912,7 @@ package android.view.accessibility { method public void addChild(android.view.View, int); method public boolean canOpenPopup(); method public int describeContents(); method public void enableQueryFromAppProcess(@NonNull android.view.View); method public java.util.List<android.view.accessibility.AccessibilityNodeInfo> findAccessibilityNodeInfosByText(String); method public java.util.List<android.view.accessibility.AccessibilityNodeInfo> findAccessibilityNodeInfosByViewId(@NonNull String); method public android.view.accessibility.AccessibilityNodeInfo findFocus(int); Loading Loading @@ -51979,7 +51980,6 @@ package android.view.accessibility { method public boolean isTextEntryKey(); method public boolean isTextSelectable(); method public boolean isVisibleToUser(); method public void makeQueryableFromAppProcess(@NonNull android.view.View); method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.View); method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.View, int); method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(); core/java/android/view/ViewRootImpl.java +1 −1 Original line number Diff line number Diff line Loading @@ -9574,7 +9574,7 @@ public final class ViewRootImpl implements ViewParent, /** * Return the connection ID for the {@link AccessibilityInteractionController} of this instance. * @see AccessibilityNodeInfo#makeQueryableFromAppProcess(View) * @see AccessibilityNodeInfo#enableQueryFromAppProcess(View) */ public int getDirectAccessibilityConnectionId() { return mAccessibilityInteractionConnectionManager.ensureDirectConnection(); Loading core/java/android/view/accessibility/AccessibilityNodeInfo.java +26 −16 Original line number Diff line number Diff line Loading @@ -84,7 +84,7 @@ import java.util.Objects; * <p> * Once an accessibility node info is delivered to an accessibility service it is * made immutable and calling a state mutation method generates an error. See * {@link #makeQueryableFromAppProcess(View)} if you would like to inspect the * {@link #enableQueryFromAppProcess(View)} if you would like to inspect the * node tree from the app process for testing or debugging tools. * </p> * <p> Loading Loading @@ -1160,7 +1160,7 @@ public class AccessibilityNodeInfo implements Parcelable { * @return The child node. * * @throws IllegalStateException If called outside of an {@link AccessibilityService} and before * calling {@link #makeQueryableFromAppProcess(View)}. * calling {@link #enableQueryFromAppProcess(View)}. */ public AccessibilityNodeInfo getChild(int index) { return getChild(index, FLAG_PREFETCH_DESCENDANTS_HYBRID); Loading @@ -1175,7 +1175,7 @@ public class AccessibilityNodeInfo implements Parcelable { * @return The child node. * * @throws IllegalStateException If called outside of an {@link AccessibilityService} and before * calling {@link #makeQueryableFromAppProcess(View)}. * calling {@link #enableQueryFromAppProcess(View)}. * * @see AccessibilityNodeInfo#getParent(int) for a description of prefetching. */ Loading Loading @@ -1899,7 +1899,7 @@ public class AccessibilityNodeInfo implements Parcelable { * @return The parent. * * @throws IllegalStateException If called outside of an {@link AccessibilityService} and before * calling {@link #makeQueryableFromAppProcess(View)}. * calling {@link #enableQueryFromAppProcess(View)}. */ public AccessibilityNodeInfo getParent() { enforceSealed(); Loading Loading @@ -1928,7 +1928,7 @@ public class AccessibilityNodeInfo implements Parcelable { * @return The parent. * * @throws IllegalStateException If called outside of an {@link AccessibilityService} and before * calling {@link #makeQueryableFromAppProcess(View)}. * calling {@link #enableQueryFromAppProcess(View)}. * * @see #FLAG_PREFETCH_ANCESTORS * @see #FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST Loading Loading @@ -3654,29 +3654,39 @@ public class AccessibilityNodeInfo implements Parcelable { * {@link AccessibilityNodeInfo} tree and perform accessibility actions on nodes. * * <p> * This is intended for short-lived inspections from testing or debugging tools in the app * process. After calling this method, all nodes linked to this node (children, ancestors, etc.) * are also queryable. Operations on this node tree will only succeed as long as the associated * view hierarchy remains attached to a window. * Testing or debugging tools should create this {@link AccessibilityNodeInfo} node using * {@link View#createAccessibilityNodeInfo()} or {@link AccessibilityNodeProvider} and call this * method, then navigate and interact with the node tree by calling methods on the node. * Calling this method more than once on the same node is a no-op. After calling this method, * all nodes linked to this node (children, ancestors, etc.) are also queryable. * </p> * * <p> * Calling this method more than once on the same node is a no-op; if you wish to inspect a * different view hierarchy then create a new node from any view in that hierarchy and call this * method on that node. * Here "query" refers to the following node operations: * <li>check properties of this node (example: {@link #isScrollable()})</li> * <li>find and query children (example: {@link #getChild(int)})</li> * <li>find and query the parent (example: {@link #getParent()})</li> * <li>find focus (examples: {@link #findFocus(int)}, {@link #focusSearch(int)})</li> * <li>find and query other nodes (example: {@link #findAccessibilityNodeInfosByText(String)}, * {@link #findAccessibilityNodeInfosByViewId(String)})</li> * <li>perform actions (example: {@link #performAction(int)})</li> * </p> * * <p> * Testing or debugging tools should create this {@link AccessibilityNodeInfo} node using * {@link View#createAccessibilityNodeInfo()} or {@link AccessibilityNodeProvider} and call this * method, then navigate and interact with the node tree by calling methods on the node. * This is intended for short-lived inspections from testing or debugging tools in the app * process, as operations on this node tree will only succeed as long as the associated * view hierarchy remains attached to a window. Since {@link AccessibilityNodeInfo} objects can * quickly become out of sync with their corresponding {@link View} objects there is * intentionally no "disable" method: if you wish to inspect a changed or different view * hierarchy then create a new node from any view in that hierarchy and call this method on that * node. * </p> * * @param view The view that generated this node, or any view in the same view-root hierarchy. * @throws IllegalStateException If called from an {@link AccessibilityService}, or if provided * a {@link View} that is not attached to a window. */ public void makeQueryableFromAppProcess(@NonNull View view) { public void enableQueryFromAppProcess(@NonNull View view) { enforceNotSealed(); if (mConnectionId != UNDEFINED_CONNECTION_ID) { return; Loading Loading
core/api/current.txt +1 −1 Original line number Diff line number Diff line Loading @@ -51912,6 +51912,7 @@ package android.view.accessibility { method public void addChild(android.view.View, int); method public boolean canOpenPopup(); method public int describeContents(); method public void enableQueryFromAppProcess(@NonNull android.view.View); method public java.util.List<android.view.accessibility.AccessibilityNodeInfo> findAccessibilityNodeInfosByText(String); method public java.util.List<android.view.accessibility.AccessibilityNodeInfo> findAccessibilityNodeInfosByViewId(@NonNull String); method public android.view.accessibility.AccessibilityNodeInfo findFocus(int); Loading Loading @@ -51979,7 +51980,6 @@ package android.view.accessibility { method public boolean isTextEntryKey(); method public boolean isTextSelectable(); method public boolean isVisibleToUser(); method public void makeQueryableFromAppProcess(@NonNull android.view.View); method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.View); method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.View, int); method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain();
core/java/android/view/ViewRootImpl.java +1 −1 Original line number Diff line number Diff line Loading @@ -9574,7 +9574,7 @@ public final class ViewRootImpl implements ViewParent, /** * Return the connection ID for the {@link AccessibilityInteractionController} of this instance. * @see AccessibilityNodeInfo#makeQueryableFromAppProcess(View) * @see AccessibilityNodeInfo#enableQueryFromAppProcess(View) */ public int getDirectAccessibilityConnectionId() { return mAccessibilityInteractionConnectionManager.ensureDirectConnection(); Loading
core/java/android/view/accessibility/AccessibilityNodeInfo.java +26 −16 Original line number Diff line number Diff line Loading @@ -84,7 +84,7 @@ import java.util.Objects; * <p> * Once an accessibility node info is delivered to an accessibility service it is * made immutable and calling a state mutation method generates an error. See * {@link #makeQueryableFromAppProcess(View)} if you would like to inspect the * {@link #enableQueryFromAppProcess(View)} if you would like to inspect the * node tree from the app process for testing or debugging tools. * </p> * <p> Loading Loading @@ -1160,7 +1160,7 @@ public class AccessibilityNodeInfo implements Parcelable { * @return The child node. * * @throws IllegalStateException If called outside of an {@link AccessibilityService} and before * calling {@link #makeQueryableFromAppProcess(View)}. * calling {@link #enableQueryFromAppProcess(View)}. */ public AccessibilityNodeInfo getChild(int index) { return getChild(index, FLAG_PREFETCH_DESCENDANTS_HYBRID); Loading @@ -1175,7 +1175,7 @@ public class AccessibilityNodeInfo implements Parcelable { * @return The child node. * * @throws IllegalStateException If called outside of an {@link AccessibilityService} and before * calling {@link #makeQueryableFromAppProcess(View)}. * calling {@link #enableQueryFromAppProcess(View)}. * * @see AccessibilityNodeInfo#getParent(int) for a description of prefetching. */ Loading Loading @@ -1899,7 +1899,7 @@ public class AccessibilityNodeInfo implements Parcelable { * @return The parent. * * @throws IllegalStateException If called outside of an {@link AccessibilityService} and before * calling {@link #makeQueryableFromAppProcess(View)}. * calling {@link #enableQueryFromAppProcess(View)}. */ public AccessibilityNodeInfo getParent() { enforceSealed(); Loading Loading @@ -1928,7 +1928,7 @@ public class AccessibilityNodeInfo implements Parcelable { * @return The parent. * * @throws IllegalStateException If called outside of an {@link AccessibilityService} and before * calling {@link #makeQueryableFromAppProcess(View)}. * calling {@link #enableQueryFromAppProcess(View)}. * * @see #FLAG_PREFETCH_ANCESTORS * @see #FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST Loading Loading @@ -3654,29 +3654,39 @@ public class AccessibilityNodeInfo implements Parcelable { * {@link AccessibilityNodeInfo} tree and perform accessibility actions on nodes. * * <p> * This is intended for short-lived inspections from testing or debugging tools in the app * process. After calling this method, all nodes linked to this node (children, ancestors, etc.) * are also queryable. Operations on this node tree will only succeed as long as the associated * view hierarchy remains attached to a window. * Testing or debugging tools should create this {@link AccessibilityNodeInfo} node using * {@link View#createAccessibilityNodeInfo()} or {@link AccessibilityNodeProvider} and call this * method, then navigate and interact with the node tree by calling methods on the node. * Calling this method more than once on the same node is a no-op. After calling this method, * all nodes linked to this node (children, ancestors, etc.) are also queryable. * </p> * * <p> * Calling this method more than once on the same node is a no-op; if you wish to inspect a * different view hierarchy then create a new node from any view in that hierarchy and call this * method on that node. * Here "query" refers to the following node operations: * <li>check properties of this node (example: {@link #isScrollable()})</li> * <li>find and query children (example: {@link #getChild(int)})</li> * <li>find and query the parent (example: {@link #getParent()})</li> * <li>find focus (examples: {@link #findFocus(int)}, {@link #focusSearch(int)})</li> * <li>find and query other nodes (example: {@link #findAccessibilityNodeInfosByText(String)}, * {@link #findAccessibilityNodeInfosByViewId(String)})</li> * <li>perform actions (example: {@link #performAction(int)})</li> * </p> * * <p> * Testing or debugging tools should create this {@link AccessibilityNodeInfo} node using * {@link View#createAccessibilityNodeInfo()} or {@link AccessibilityNodeProvider} and call this * method, then navigate and interact with the node tree by calling methods on the node. * This is intended for short-lived inspections from testing or debugging tools in the app * process, as operations on this node tree will only succeed as long as the associated * view hierarchy remains attached to a window. Since {@link AccessibilityNodeInfo} objects can * quickly become out of sync with their corresponding {@link View} objects there is * intentionally no "disable" method: if you wish to inspect a changed or different view * hierarchy then create a new node from any view in that hierarchy and call this method on that * node. * </p> * * @param view The view that generated this node, or any view in the same view-root hierarchy. * @throws IllegalStateException If called from an {@link AccessibilityService}, or if provided * a {@link View} that is not attached to a window. */ public void makeQueryableFromAppProcess(@NonNull View view) { public void enableQueryFromAppProcess(@NonNull View view) { enforceNotSealed(); if (mConnectionId != UNDEFINED_CONNECTION_ID) { return; Loading