diff --git a/services/autofill/java/com/android/server/autofill/Session.java b/services/autofill/java/com/android/server/autofill/Session.java index 48f16acc864ab..256ca500f5dec 100644 --- a/services/autofill/java/com/android/server/autofill/Session.java +++ b/services/autofill/java/com/android/server/autofill/Session.java @@ -2419,6 +2419,7 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState Slog.v(TAG, "entered on virtual child " + id + ": " + virtualBounds); } + final boolean isSameViewEntered = Objects.equals(mCurrentViewId, viewState.id); // Update the view states first... mCurrentViewId = viewState.id; if (value != null) { @@ -2451,6 +2452,10 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState hideAugmentedAutofillLocked(viewState); } + if (isSameViewEntered) { + return; + } + // If the ViewState is ready to be displayed, onReady() will be called. viewState.update(value, virtualBounds, flags); break;