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

Commit 7008e702 authored by Felipe Leme's avatar Felipe Leme
Browse files

Fixed isVisibleToUserForAutofill() again.

This method should return false when the accessibility provider does not have
an accessibility info for a node. Otherwise, the Save UI is not triggered on
compat mode.

Bug: 75017711
Test: manual verification

Change-Id: Ic1759520a43b4333aef9f8f0e1d93f8d378b131c
parent d2f757bd
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -8910,7 +8910,11 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
                if (node != null) {
                    return node.isVisibleToUser();
                }
                // if node is null, assume it's not visible anymore
            } else {
                Log.w(VIEW_LOG_TAG, "isVisibleToUserForAutofill(" + virtualId + "): no provider");
            }
            return false;
        }
        return true;
    }
+1 −0
Original line number Diff line number Diff line
@@ -3858,6 +3858,7 @@ public class AccessibilityNodeInfo implements Parcelable {
        builder.append("; password: ").append(isPassword());
        builder.append("; scrollable: ").append(isScrollable());
        builder.append("; importantForAccessibility: ").append(isImportantForAccessibility());
        builder.append("; visible: ").append(isVisibleToUser());
        builder.append("; actions: ").append(mActions);

        return builder.toString();
+4 −0
Original line number Diff line number Diff line
@@ -2531,6 +2531,10 @@ public final class AutofillManager {
            ArraySet<AutofillId> updatedVisibleTrackedIds = null;
            ArraySet<AutofillId> updatedInvisibleTrackedIds = null;
            if (client != null) {
                if (sVerbose) {
                    Log.v(TAG, "onVisibleForAutofillChangedLocked(): inv= " + mInvisibleTrackedIds
                            + " vis=" + mVisibleTrackedIds);
                }
                if (mInvisibleTrackedIds != null) {
                    final ArrayList<AutofillId> orderedInvisibleIds =
                            new ArrayList<>(mInvisibleTrackedIds);