diff options
| -rw-r--r-- | core/java/android/view/autofill/AutofillManager.java | 16 | ||||
| -rw-r--r-- | services/autofill/java/com/android/server/autofill/Session.java | 11 |
2 files changed, 19 insertions, 8 deletions
diff --git a/core/java/android/view/autofill/AutofillManager.java b/core/java/android/view/autofill/AutofillManager.java index 77a0c4c5f4ee..6503a800acb7 100644 --- a/core/java/android/view/autofill/AutofillManager.java +++ b/core/java/android/view/autofill/AutofillManager.java @@ -2178,6 +2178,18 @@ public final class AutofillManager { boolean saveOnAllViewsInvisible, boolean saveOnFinish, @Nullable AutofillId[] fillableIds, @Nullable AutofillId saveTriggerId) { synchronized (mLock) { + if (sVerbose) { + Log.v(TAG, "setTrackedViews(): sessionId=" + sessionId + + ", trackedIds=" + Arrays.toString(trackedIds) + + ", saveOnAllViewsInvisible=" + saveOnAllViewsInvisible + + ", saveOnFinish=" + saveOnFinish + + ", fillableIds=" + Arrays.toString(fillableIds) + + ", saveTrigerId=" + saveTriggerId + + ", mFillableIds=" + mFillableIds + + ", mEnabled=" + mEnabled + + ", mSessionId=" + mSessionId); + + } if (mEnabled && mSessionId == sessionId) { if (saveOnAllViewsInvisible) { mTrackedViews = new TrackedViews(trackedIds); @@ -2192,10 +2204,6 @@ public final class AutofillManager { for (AutofillId id : fillableIds) { mFillableIds.add(id); } - if (sVerbose) { - Log.v(TAG, "setTrackedViews(): fillableIds=" + Arrays.toString(fillableIds) - + ", mFillableIds" + mFillableIds); - } } if (mSaveTriggerId != null && !mSaveTriggerId.equals(saveTriggerId)) { diff --git a/services/autofill/java/com/android/server/autofill/Session.java b/services/autofill/java/com/android/server/autofill/Session.java index c62794d3e3d2..0402b8fb9285 100644 --- a/services/autofill/java/com/android/server/autofill/Session.java +++ b/services/autofill/java/com/android/server/autofill/Session.java @@ -2540,13 +2540,14 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState boolean saveOnFinish = true; final SaveInfo saveInfo = response.getSaveInfo(); final AutofillId saveTriggerId; + final int flags; if (saveInfo != null) { saveTriggerId = saveInfo.getTriggerId(); if (saveTriggerId != null) { writeLog(MetricsEvent.AUTOFILL_EXPLICIT_SAVE_TRIGGER_DEFINITION); } - mSaveOnAllViewsInvisible = - (saveInfo.getFlags() & SaveInfo.FLAG_SAVE_ON_ALL_VIEWS_INVISIBLE) != 0; + flags = saveInfo.getFlags(); + mSaveOnAllViewsInvisible = (flags & SaveInfo.FLAG_SAVE_ON_ALL_VIEWS_INVISIBLE) != 0; // We only need to track views if we want to save once they become invisible. if (mSaveOnAllViewsInvisible) { @@ -2561,11 +2562,12 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState Collections.addAll(trackedViews, saveInfo.getOptionalIds()); } } - if ((saveInfo.getFlags() & SaveInfo.FLAG_DONT_SAVE_ON_FINISH) != 0) { + if ((flags & SaveInfo.FLAG_DONT_SAVE_ON_FINISH) != 0) { saveOnFinish = false; } } else { + flags = 0; saveTriggerId = null; } @@ -2592,7 +2594,8 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState try { if (sVerbose) { Slog.v(TAG, "updateTrackedIdsLocked(): " + trackedViews + " => " + fillableIds - + " triggerId: " + saveTriggerId + " saveOnFinish:" + saveOnFinish); + + " triggerId: " + saveTriggerId + " saveOnFinish:" + saveOnFinish + + " flags: " + flags + " hasSaveInfo: " + (saveInfo != null)); } mClient.setTrackedViews(id, toArray(trackedViews), mSaveOnAllViewsInvisible, saveOnFinish, toArray(fillableIds), saveTriggerId); |