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

Commit 22e251a3 authored by jiewenlei's avatar jiewenlei Committed by Jiewen Lei
Browse files

Update javadoc to reflect "autofill for all apps" changes.

For SetImportantForAutofill: https://screenshot.googleplex.com/AHAHKeXN7a649Hx
For isImportantForAutofill: https://screenshot.googleplex.com/8TNagJWZtatdKfh
Test: m
Bug: 264489182

Change-Id: I0c2b6e2208b6d667c486c23cbbea32a087255f33
parent c2ffccd1
Loading
Loading
Loading
Loading
+35 −19
Original line number Diff line number Diff line
@@ -9845,10 +9845,11 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
     *
     * <p><b>Note:</b> Setting the mode as {@link #IMPORTANT_FOR_AUTOFILL_NO} or
     * {@link #IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS} does not guarantee the view (and its
     * children) will be always be considered not important; for example, when the user explicitly
     * makes an autofill request, all views are considered important. See
     * {@link #isImportantForAutofill()} for more details about how the View's importance for
     * autofill is used.
     * children) will not be used for autofill purpose; for example, when the user explicitly
     * makes an autofill request, all views are included in the ViewStructure, and starting in
     * {@link android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKE} the system uses other factors along
     * with importance to determine the autofill behavior. See {@link #isImportantForAutofill()}
     * for more details about how the View's importance for autofill is used.
     *
     * @param mode {@link #IMPORTANT_FOR_AUTOFILL_AUTO}, {@link #IMPORTANT_FOR_AUTOFILL_YES},
     * {@link #IMPORTANT_FOR_AUTOFILL_NO}, {@link #IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS},
@@ -9894,21 +9895,36 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
     *   <li>otherwise, it returns {@code false}.
     * </ol>
     *
     * <p>When a view is considered important for autofill:
     * <ul>
     * <p> The behavior of importances depends on Android version:
     * <ol>
     *   <li>For {@link android.os.Build.VERSION_CODES#TIRAMISU} and below:
     *     <ol>
     *       <li>When a view is considered important for autofill:
     *          <ol>
     *            <li>The view might automatically trigger an autofill request when focused on.
     *   <li>The contents of the view are included in the {@link ViewStructure} used in an autofill
     *       request.
     * </ul>
     *
     * <p>On the other hand, when a view is considered not important for autofill:
     * <ul>
     *   <li>The view never automatically triggers autofill requests, but it can trigger a manual
     *       request through {@link AutofillManager#requestAutofill(View)}.
     *   <li>The contents of the view are not included in the {@link ViewStructure} used in an
     *       autofill request, unless the request has the
     *            <li>The contents of the view are included in the {@link ViewStructure} used in an
     *                autofill request.
     *          </ol>
     *        <li>On the other hand, when a view is considered not important for autofill:
     *          <ol>
     *            <li>The view never automatically triggers autofill requests, but it can trigger a
     *                manual request through {@link AutofillManager#requestAutofill(View)}.
     *            <li>The contents of the view are not included in the {@link ViewStructure} used in
     *                an autofill request, unless the request has the
     *                {@link #AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS} flag.
     * </ul>
     *          </ol>
     *      </ol>
     *  <li>For {@link android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKE} and above:
     *    <ol>
     *      <li>The system uses importance, along with other view properties and other optimization
     *          factors, to determine if a view should trigger autofill on focus.
     *      <li>The contents of {@link #IMPORTANT_FOR_AUTOFILL_AUTO},
     *        {@link #IMPORTANT_FOR_AUTOFILL_YES}, {@link #IMPORTANT_FOR_AUTOFILL_NO},
     *        {@link #IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS}, and
     *        {@link #IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS} views will be included in the
     *        {@link ViewStructure} used in an autofill request.
     *    </ol>
     * </ol>
     *
     * @return whether the view is considered important for autofill.
     *