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

Commit d141b152 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 am: b205b806

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

Change-Id: I604a15347384776fac579f7c846a8dd1f4e14279
parents d7b21537 b205b806
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);