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

Commit 62cc7dec authored by Feng Cao's avatar Feng Cao
Browse files

Clear inline suggestions before onStartInput instead of before onFinishInput

* In case where there are multiple input fields in a single WebView,
  switching focuses between input fields doesn't trigger an onFinishInput
  from the previous field. But it always triggers an onStartInput in
  the new field. So it's safer to clear the suggestions onStartInput

Test: atest android.autofillservice.cts.inline
Test: atest CtsInputMethodTestCases
Bug: 159479887
Bug: 157515522

Change-Id: Ie380db855fbc93600635790ef5adc1031d6f0787
parent b0f26f32
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -134,6 +134,7 @@ class InlineSuggestionSessionController {
        mImeClientFieldId = imeFieldId;

        if (mSession != null) {
            mSession.consumeInlineSuggestionsResponse(InlineSuggestionSession.EMPTY_RESPONSE);
            // Initiates the callback to Autofill if there is a pending matching session.
            // Otherwise updates the session with the Ime status.
            if (!mSession.isCallbackInvoked() && match(mSession.getRequestInfo())) {
@@ -213,7 +214,6 @@ class InlineSuggestionSessionController {
        mImeInputViewStarted = false;
        mImeInputStarted = false;
        if (mSession != null && mSession.shouldSendImeStatus()) {
            mSession.consumeInlineSuggestionsResponse(InlineSuggestionSession.EMPTY_RESPONSE);
            try {
                mSession.getRequestCallback().onInputMethodFinishInput();
            } catch (RemoteException e) {