Revert "Don't trigger auto-fill request if mode is manual"

This reverts commit 576a847e03f213693f4e7f2f0361f52217f9e1cf.

Fixes: 35701500
Change-Id: I972c2d0e56d365d1fad76a66e74bfad227bf26c4
(cherry picked from commit e572989b3f838cc76b51699710d11aa2f992a474)
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 8666930..66c394f 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -953,7 +953,7 @@
     public @interface AutoFillMode {}
 
     /**
-     * This view inherits the auto-fill state from it's parent. If there is no parent it is
+     * This view inherits the autofill state from it's parent. If there is no parent it is
      * {@link #AUTO_FILL_MODE_AUTO}.
      * Use with {@link #setAutoFillMode(int)} and <a href="#attr_android:autoFillMode">
      * {@code android:autoFillMode}.
@@ -968,11 +968,7 @@
     public static final int AUTO_FILL_MODE_AUTO = 1;
 
     /**
-     * Do not trigger an auto-fill request if this view is focused. The user can still force
-     * an auto-fill request.
-     * <p>This does not prevent this field from being auto-filled if an auto-fill operation is
-     * triggered from a different view.</p>
-     *
+     * Require the user to manually force an auto-fill request.
      * Use with {@link #setAutoFillMode(int)} and <a href="#attr_android:autoFillMode">{@code
      * android:autoFillMode}.
      */
@@ -6527,12 +6523,7 @@
         if (isAutoFillable()) {
             AutoFillManager afm = getAutoFillManager();
             if (afm != null) {
-                boolean adjGainFocus = gainFocus;
-                if (adjGainFocus && getResolvedAutoFillMode() == AUTO_FILL_MODE_MANUAL) {
-                    adjGainFocus = false;
-                }
-
-                afm.focusChanged(this, adjGainFocus);
+                afm.focusChanged(this, gainFocus);
             }
         }
 
@@ -9316,30 +9307,6 @@
     }
 
     /**
-     * Returns the resolved auto-fill mode for this view.
-     *
-     * This is the same as {@link #getAutoFillMode()} but if the mode is
-     * {@link #AUTO_FILL_MODE_INHERIT} the parents auto-fill mode will be returned.
-     *
-     * @return One of {@link #AUTO_FILL_MODE_AUTO}, or {@link #AUTO_FILL_MODE_MANUAL}.
-     *
-     * @hide
-     */
-    public @AutoFillMode int getResolvedAutoFillMode() {
-        @AutoFillMode int autoFillMode = getAutoFillMode();
-
-        if (autoFillMode == AUTO_FILL_MODE_INHERIT) {
-            if (mParent == null) {
-                throw new IllegalStateException("View is detached, cannot resolve autoFillMode");
-            } else {
-                return mParent.getResolvedAutoFillMode();
-            }
-        } else {
-            return autoFillMode;
-        }
-    }
-
-    /**
      * Find the nearest view in the specified direction that can take focus.
      * This does not actually give focus to that view.
      *
diff --git a/core/java/android/view/ViewParent.java b/core/java/android/view/ViewParent.java
index cdfd61b..cc11cb8 100644
--- a/core/java/android/view/ViewParent.java
+++ b/core/java/android/view/ViewParent.java
@@ -659,17 +659,4 @@
      * @return true if the action was consumed by this ViewParent
      */
     public boolean onNestedPrePerformAccessibilityAction(View target, int action, Bundle arguments);
-
-    /**
-     * Return the resolved auto-fill mode.
-     *
-     * @return The resolved auto-fill mode
-     *
-     * @see View#getResolvedAutoFillMode()
-     *
-     * @hide
-     */
-    default @View.AutoFillMode int getResolvedAutoFillMode() {
-        return View.AUTO_FILL_MODE_AUTO;
-    }
 }
diff --git a/core/res/res/values/attrs.xml b/core/res/res/values/attrs.xml
index d2d6620..8031f19 100644
--- a/core/res/res/values/attrs.xml
+++ b/core/res/res/values/attrs.xml
@@ -2289,14 +2289,12 @@
 
         <!-- Controls the auto-fill behavior for this view -->
         <attr name="autoFillMode">
-            <!-- Inherit the behavior from the parent. If there is no parent it is auto. This is the
-                 default value for this attribute.-->
+            <!-- Inherit the behavior from the parent. If there is no parent it is auto. -->
             <enum name="inherit" value="0" />
             <!-- Allows this view to automatically trigger an auto-fill request when it get focus.
                  -->
             <enum name="auto" value="1" />
-            <!-- Do not trigger an auto-fill request when this view is focused. The user can still
-                 manually force an auto-fill request for this view. -->
+            <!-- The user has to manually force an auto-fill request for this view. -->
             <enum name="manual" value="2" />
         </attr>