diff options
| author | 2019-03-14 21:48:07 +0000 | |
|---|---|---|
| committer | 2019-03-14 21:48:07 +0000 | |
| commit | e255e671888a460e529fe05e62addb4c28ebc3c5 (patch) | |
| tree | c84077a1926a712676afea39e59aed77678565c4 | |
| parent | 3b11e376ce34f893a6dcb74ca950fbeddc376056 (diff) | |
| parent | e978e88b0348173ccb0eb6e8914e0dd9d4408543 (diff) | |
Merge "Improve error message when expecting a non-virtual autofill id."
| -rw-r--r-- | core/java/android/view/autofill/AutofillId.java | 12 | ||||
| -rw-r--r-- | core/java/android/view/contentcapture/ContentCaptureSession.java | 17 |
2 files changed, 15 insertions, 14 deletions
diff --git a/core/java/android/view/autofill/AutofillId.java b/core/java/android/view/autofill/AutofillId.java index 8fa29f3e6331..2c7929939053 100644 --- a/core/java/android/view/autofill/AutofillId.java +++ b/core/java/android/view/autofill/AutofillId.java @@ -47,20 +47,20 @@ public final class AutofillId implements Parcelable { /** @hide */ @TestApi - public AutofillId(@NonNull AutofillId parent, int virtualChildId) { - this(FLAG_IS_VIRTUAL_INT, parent.mViewId, virtualChildId, NO_SESSION); + public AutofillId(@NonNull AutofillId hostId, int virtualChildId) { + this(FLAG_IS_VIRTUAL_INT, hostId.mViewId, virtualChildId, NO_SESSION); } /** @hide */ @TestApi - public AutofillId(int parentId, int virtualChildId) { - this(FLAG_IS_VIRTUAL_INT, parentId, virtualChildId, NO_SESSION); + public AutofillId(int hostId, int virtualChildId) { + this(FLAG_IS_VIRTUAL_INT, hostId, virtualChildId, NO_SESSION); } /** @hide */ @TestApi - public AutofillId(@NonNull AutofillId parent, long virtualChildId, int sessionId) { - this(FLAG_IS_VIRTUAL_LONG | FLAG_HAS_SESSION, parent.mViewId, virtualChildId, sessionId); + public AutofillId(@NonNull AutofillId hostId, long virtualChildId, int sessionId) { + this(FLAG_IS_VIRTUAL_LONG | FLAG_HAS_SESSION, hostId.mViewId, virtualChildId, sessionId); } private AutofillId(int flags, int parentId, long virtualChildId, int sessionId) { diff --git a/core/java/android/view/contentcapture/ContentCaptureSession.java b/core/java/android/view/contentcapture/ContentCaptureSession.java index ebac6293d376..4129e52dcdf3 100644 --- a/core/java/android/view/contentcapture/ContentCaptureSession.java +++ b/core/java/android/view/contentcapture/ContentCaptureSession.java @@ -389,7 +389,8 @@ public abstract class ContentCaptureSession implements AutoCloseable { * * <p>Should only be called by views that handle their own virtual view hierarchy. * - * @param hostId id of the view hosting the virtual hierarchy. + * @param hostId id of the non-virtual view hosting the virtual view hierarchy (it can be + * obtained by calling {@link ViewStructure#getAutofillId()}). * @param virtualIds ids of the virtual children. * * @throws IllegalArgumentException if the {@code hostId} is an autofill id for a virtual view. @@ -397,7 +398,7 @@ public abstract class ContentCaptureSession implements AutoCloseable { */ public final void notifyViewsDisappeared(@NonNull AutofillId hostId, @NonNull long[] virtualIds) { - Preconditions.checkArgument(hostId.isNonVirtual(), "parent cannot be virtual"); + Preconditions.checkArgument(hostId.isNonVirtual(), "hostId cannot be virtual: %s", hostId); Preconditions.checkArgument(!ArrayUtils.isEmpty(virtualIds), "virtual ids cannot be empty"); if (!isContentCaptureEnabled()) return; @@ -442,18 +443,18 @@ public abstract class ContentCaptureSession implements AutoCloseable { * Creates a new {@link AutofillId} for a virtual child, so it can be used to uniquely identify * the children in the session. * - * @param parentId id of the virtual view parent (it can be obtained by calling - * {@link ViewStructure#getAutofillId()} on the parent). + * @param hostId id of the non-virtual view hosting the virtual view hierarchy (it can be + * obtained by calling {@link ViewStructure#getAutofillId()}). * @param virtualChildId id of the virtual child, relative to the parent. * * @return if for the virtual child * * @throws IllegalArgumentException if the {@code parentId} is a virtual child id. */ - public @NonNull AutofillId newAutofillId(@NonNull AutofillId parentId, long virtualChildId) { - Preconditions.checkNotNull(parentId); - Preconditions.checkArgument(parentId.isNonVirtual(), "virtual ids cannot have children"); - return new AutofillId(parentId, virtualChildId, getIdAsInt()); + public @NonNull AutofillId newAutofillId(@NonNull AutofillId hostId, long virtualChildId) { + Preconditions.checkNotNull(hostId); + Preconditions.checkArgument(hostId.isNonVirtual(), "hostId cannot be virtual: %s", hostId); + return new AutofillId(hostId, virtualChildId, getIdAsInt()); } /** |