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

Commit 78de523e authored by Sally Yuen's avatar Sally Yuen Committed by Android (Google) Code Review
Browse files

Merge "Make a11y traversal documenation clearer"

parents 94acecb7 f7034250
Loading
Loading
Loading
Loading
+43 −25
Original line number Diff line number Diff line
@@ -11287,26 +11287,36 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
    }
    /**
     * Sets the id of a view before which this one is visited in accessibility traversal.
     * A screen-reader must visit the content of this view before the content of the one
     * it precedes. For example, if view B is set to be before view A, then a screen-reader
     * will traverse the entire content of B before traversing the entire content of A,
     * regardles of what traversal strategy it is using.
     * Sets the id of a view that screen readers are requested to visit after this view.
     *
     * <p>
     * Views that do not have specified before/after relationships are traversed in order
     * determined by the screen-reader.
     * </p>
     *
     * For example, if view B should be visited before view A, with
     * B.setAccessibilityTraversalBefore(A), this requests that screen readers visit and traverse
     * view B before visiting view A.
     *
     * <p>
     * Setting that this view is before a view that is not important for accessibility
     * or if this view is not important for accessibility will have no effect as the
     * screen-reader is not aware of unimportant views.
     * </p>
     * <b>Note:</b> Views are visited in the order determined by the screen reader. Avoid
     * explicitly manipulating focus order, as this may result in inconsistent user
     * experiences between apps. Instead, use other semantics, such as restructuring the view
     * hierarchy layout, to communicate order.
     *
     * <p>
     * Setting this view to be after a view that is not important for accessibility,
     * or if this view is not important for accessibility, means this method will have no effect if
     * the service is not aware of unimportant views.
     *
     * <p>
     * To avoid a risk of loops, set clear relationships between views. For example, if focus order
     * should be B -> A, and B.setAccessibilityTraversalBefore(A), then also call
     * A.setAccessibilityTraversalAfter(B).
     *
     * @param beforeId The id of a view this one precedes in accessibility traversal.
     *
     * @attr ref android.R.styleable#View_accessibilityTraversalBefore
     *
     * @see #setImportantForAccessibility(int)
     * @see #setAccessibilityTraversalAfter(int)
     */
    @RemotableViewMethod
    public void setAccessibilityTraversalBefore(@IdRes int beforeId) {
@@ -11333,26 +11343,34 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
    }
    /**
     * Sets the id of a view after which this one is visited in accessibility traversal.
     * A screen-reader must visit the content of the other view before the content of this
     * one. For example, if view B is set to be after view A, then a screen-reader
     * will traverse the entire content of A before traversing the entire content of B,
     * regardles of what traversal strategy it is using.
     * Sets the id of a view that screen readers are requested to visit before this view.
     *
     * <p>
     * Views that do not have specified before/after relationships are traversed in order
     * determined by the screen-reader.
     * </p>
     * For example, if view B should be visited after A, with B.setAccessibilityTraversalAfter(A),
     * then this requests that screen readers visit and traverse view A before visiting view B.
     *
     * <p>
     * Setting that this view is after a view that is not important for accessibility
     * or if this view is not important for accessibility will have no effect as the
     * screen-reader is not aware of unimportant views.
     * </p>
     * <b>Note:</b> Views are visited in the order determined by the screen reader. Avoid
     * explicitly manipulating focus order, as this may result in inconsistent user
     * experiences between apps. Instead, use other semantics, such as restructuring the view
     * hierarchy layout, to communicate order.
     *
     * @param afterId The id of a view this one succedees in accessibility traversal.
     * <p>
     * Setting this view to be after a view that is not important for accessibility,
     * or if this view is not important for accessibility, means this method will have no effect if
     * the service is not aware of unimportant views.
     *
     * <p>
     * To avoid a risk of loops, set clear relationships between views. For example, if focus order
     * should be B -> A, and B.setAccessibilityTraversalBefore(A), then also call
     * A.setAccessibilityTraversalAfter(B).
     *
     * @param afterId The id of a view this one succeeds in accessibility traversal.
     *
     * @attr ref android.R.styleable#View_accessibilityTraversalAfter
     *
     * @see #setImportantForAccessibility(int)
     * @see #setAccessibilityTraversalBefore(int)
     */
    @RemotableViewMethod
    public void setAccessibilityTraversalAfter(@IdRes int afterId) {
+6 −6
Original line number Diff line number Diff line
@@ -3030,15 +3030,15 @@
             representation this attribute can be used for providing such. -->
        <attr name="contentDescription" format="string" localization="suggested" />
        <!-- Sets the id of a view before which this one is visited in accessibility traversal.
             A screen-reader must visit the content of this view before the content of the one
             it precedes.
        <!-- Sets the id of a view that screen readers are requested to visit after this view.
             Requests that a screen-reader visits the content of this view before the content of the
             one it precedes. This does nothing if either view is not important for accessibility.
             {@see android.view.View#setAccessibilityTraversalBefore(int)} -->
        <attr name="accessibilityTraversalBefore" format="integer" />
        <!-- Sets the id of a view after which this one is visited in accessibility traversal.
             A screen-reader must visit the content of the other view before the content of
             this one.
        <!-- Sets the id of a view that screen readers are requested to visit before this view.
             Requests that a screen-reader visits the content of the other view before the content
             of this one. This does nothing if either view is not important for accessibility.
             {@see android.view.View#setAccessibilityTraversalAfter(int)} -->
        <attr name="accessibilityTraversalAfter" format="integer" />