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

Commit da5e9d6c authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Send empty inline response to IME if augmented autofill returns no...

Merge "Send empty inline response to IME if augmented autofill returns no suggestion" into rvc-dev am: b9aeb6ca

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11784240

Change-Id: Ic75307e4898bc417a0bc2d055b5232d112667e62
parents 49219d46 b9aeb6ca
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -62,9 +62,10 @@ public final class FillCallback {

        List<Dataset> inlineSuggestions = response.getInlineSuggestions();
        Bundle clientState = response.getClientState();
        // We need to report result regardless of whether inline suggestions are returned or not.
        mProxy.reportResult(inlineSuggestions, clientState);
        if (inlineSuggestions != null && !inlineSuggestions.isEmpty()) {
            mProxy.logEvent(AutofillProxy.REPORT_EVENT_INLINE_RESPONSE);
            mProxy.reportResult(inlineSuggestions, clientState);
            return;
        }

+2 −2
Original line number Diff line number Diff line
@@ -93,7 +93,7 @@ final class AutofillInlineSuggestionsRequestSession {
    @Nullable
    private InlineFillUi mInlineFillUi;
    @GuardedBy("mLock")
    private boolean mPreviousResponseIsNotEmpty;
    private Boolean mPreviousResponseIsNotEmpty = null;

    @GuardedBy("mLock")
    private boolean mDestroyed = false;
@@ -213,7 +213,7 @@ final class AutofillInlineSuggestionsRequestSession {
            // if IME is visible, and response is not null, send the response
            InlineSuggestionsResponse response = mInlineFillUi.getInlineSuggestionsResponse();
            boolean isEmptyResponse = response.getInlineSuggestions().isEmpty();
            if (isEmptyResponse && !mPreviousResponseIsNotEmpty) {
            if (isEmptyResponse && Boolean.FALSE.equals(mPreviousResponseIsNotEmpty)) {
                // No-op if both the previous response and current response are empty.
                return;
            }
+5 −0
Original line number Diff line number Diff line
@@ -245,6 +245,11 @@ final class RemoteAugmentedAutofillService
        if (inlineSuggestionsData == null || inlineSuggestionsData.isEmpty()
                || inlineSuggestionsCallback == null || request == null
                || remoteRenderService == null) {
            // If it was an inline request and the response doesn't have any inline suggestions,
            // we will send an empty response to IME.
            if (inlineSuggestionsCallback != null && request != null) {
                inlineSuggestionsCallback.apply(InlineFillUi.emptyUi(focusedId));
            }
            return;
        }
        mCallbacks.setLastResponse(sessionId);