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

Commit 217649d3 authored by Adam He's avatar Adam He
Browse files

Hide suggestions with hideFillUi

Fix: 149945531
Test: atest InlineLoginActivityTest
Change-Id: Ibd6d19165c69f51fbe92addbf114c9d123147362
parent 710895ed
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -1158,6 +1158,18 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState
            } catch (RemoteException e) {
                Slog.e(TAG, "Error requesting to hide fill UI", e);
            }
            try {
                final InlineSuggestionSession.ImeResponse imeResponse =
                        mInlineSuggestionSession.waitAndGetImeResponse();
                if (imeResponse == null) {
                    Log.w(TAG, "Session input method callback is not set yet");
                    return;
                }
                imeResponse.getCallback().onInlineSuggestionsResponse(
                        new InlineSuggestionsResponse(Collections.EMPTY_LIST));
            } catch (RemoteException e) {
                Slog.e(TAG, "RemoteException hiding inline suggestions");
            }
        }
    }

+10 −5
Original line number Diff line number Diff line
@@ -82,12 +82,17 @@ public final class InlineSuggestionFactory {
        if (sDebug) Slog.d(TAG, "createInlineSuggestionsResponse called");
        final BiConsumer<Dataset, Integer> onClickFactory;
        if (response.getAuthentication() != null) {
            onClickFactory = (dataset, datasetIndex) -> client.authenticate(response.getRequestId(),
            onClickFactory = (dataset, datasetIndex) -> {
                client.requestHideFillUi(autofillId);
                client.authenticate(response.getRequestId(),
                        datasetIndex, response.getAuthentication(), response.getClientState(),
                        /* authenticateInline= */ true);
            };
        } else {
            onClickFactory = (dataset, datasetIndex) ->
            onClickFactory = (dataset, datasetIndex) -> {
                client.requestHideFillUi(autofillId);
                client.fill(response.getRequestId(), datasetIndex, dataset);
            };
        }

        final List<Dataset> datasetList = response.getDatasets();