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

Commit d6f85903 authored by Felipe Leme's avatar Felipe Leme Committed by android-build-merger
Browse files

Merge "Don't trigger new partition on fields from SaveInfo" into oc-dev am: ab8238e2

am: 50e9fecd

Change-Id: I1438a1932191bd144fea064769c2869bc5b29fab
parents 97130c55 50e9fecd
Loading
Loading
Loading
Loading
+34 −14
Original line number Diff line number Diff line
@@ -846,6 +846,21 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState
                setViewStatesLocked(response, dataset, state);
            }
        }
        final SaveInfo saveInfo = response.getSaveInfo();
        if (saveInfo != null) {
            final AutofillId[] requiredIds = saveInfo.getRequiredIds();
            for (int i = 0; i < requiredIds.length; i++) {
                final AutofillId id = requiredIds[i];
                createOrUpdateViewStateLocked(id, state, null);
            }
            final AutofillId[] optionalIds = saveInfo.getOptionalIds();
            if (optionalIds != null) {
                for (int i = 0; i < optionalIds.length; i++) {
                    final AutofillId id = optionalIds[i];
                    createOrUpdateViewStateLocked(id, state, null);
                }
            }
        }
    }

    /**
@@ -857,6 +872,15 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState
        final ArrayList<AutofillValue> values = dataset.getFieldValues();
        for (int j = 0; j < ids.size(); j++) {
            final AutofillId id = ids.get(j);
            final AutofillValue value = values.get(j);
            final ViewState viewState = createOrUpdateViewStateLocked(id, state, value);
            if (response != null) {
                viewState.setResponse(response);
            }
        }
    }

    private ViewState createOrUpdateViewStateLocked(AutofillId id, int state,AutofillValue value) {
        ViewState viewState = mViewStates.get(id);
        if (viewState != null)  {
            viewState.setState(state);
@@ -868,13 +892,9 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState
            mViewStates.put(id, viewState);
        }
        if ((state & ViewState.STATE_AUTOFILLED) != 0) {
                viewState.setAutofilledValue(values.get(j));
            }

            if (response != null) {
                viewState.setResponse(response);
            }
            viewState.setAutofilledValue(value);
        }
        return viewState;
    }

    /**