summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Felipe Leme <felipeal@google.com> 2019-03-14 21:48:07 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2019-03-14 21:48:07 +0000
commite255e671888a460e529fe05e62addb4c28ebc3c5 (patch)
treec84077a1926a712676afea39e59aed77678565c4
parent3b11e376ce34f893a6dcb74ca950fbeddc376056 (diff)
parente978e88b0348173ccb0eb6e8914e0dd9d4408543 (diff)
Merge "Improve error message when expecting a non-virtual autofill id."
-rw-r--r--core/java/android/view/autofill/AutofillId.java12
-rw-r--r--core/java/android/view/contentcapture/ContentCaptureSession.java17
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());
}
/**