From da919eff000922b54522d330dad018f88c952b77 Mon Sep 17 00:00:00 2001 From: Hyunyoung Song Date: Fri, 15 Jan 2021 00:56:44 -0800 Subject: [PATCH] Fix SearchAction parceling error Bug: 177549812 Test: atest CtsSearchUiServiceTestCases Change-Id: I931085086b29d4549e1b5fc82f88fd4d07e33ed1 --- .../java/android/app/search/SearchAction.java | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/core/java/android/app/search/SearchAction.java b/core/java/android/app/search/SearchAction.java index 158f9f3846036..a76154af63b65 100644 --- a/core/java/android/app/search/SearchAction.java +++ b/core/java/android/app/search/SearchAction.java @@ -70,20 +70,20 @@ public final class SearchAction implements Parcelable { SearchAction(Parcel in) { mId = in.readString(); - mIcon = Icon.CREATOR.createFromParcel(in); mTitle = TextUtils.CHAR_SEQUENCE_CREATOR.createFromParcel(in); + mIcon = in.readTypedObject(Icon.CREATOR); mSubtitle = TextUtils.CHAR_SEQUENCE_CREATOR.createFromParcel(in); mContentDescription = TextUtils.CHAR_SEQUENCE_CREATOR.createFromParcel(in); - mPendingIntent = PendingIntent.CREATOR.createFromParcel(in); - mIntent = Intent.CREATOR.createFromParcel(in); + mPendingIntent = in.readTypedObject(PendingIntent.CREATOR); + mIntent = in.readTypedObject(Intent.CREATOR); mUserHandle = in.readTypedObject(UserHandle.CREATOR); - mExtras = in.readBundle(); + mExtras = in.readTypedObject(Bundle.CREATOR); } private SearchAction( @NonNull String id, - @Nullable Icon icon, @NonNull CharSequence title, + @Nullable Icon icon, @Nullable CharSequence subtitle, @Nullable CharSequence contentDescription, @Nullable PendingIntent pendingIntent, @@ -91,8 +91,8 @@ public final class SearchAction implements Parcelable { @Nullable UserHandle userHandle, @Nullable Bundle extras) { mId = Objects.requireNonNull(id); - mIcon = icon; mTitle = Objects.requireNonNull(title); + mIcon = icon; mSubtitle = subtitle; mContentDescription = contentDescription; mPendingIntent = pendingIntent; @@ -192,14 +192,14 @@ public final class SearchAction implements Parcelable { @Override public void writeToParcel(@NonNull Parcel out, int flags) { out.writeString(mId); - out.writeTypedObject(mIcon, flags); TextUtils.writeToParcel(mTitle, out, flags); + out.writeTypedObject(mIcon, flags); TextUtils.writeToParcel(mSubtitle, out, flags); TextUtils.writeToParcel(mContentDescription, out, flags); out.writeTypedObject(mPendingIntent, flags); out.writeTypedObject(mIntent, flags); out.writeTypedObject(mUserHandle, flags); - out.writeBundle(mExtras); + out.writeTypedObject(mExtras, flags); } @Override @@ -235,12 +235,12 @@ public final class SearchAction implements Parcelable { @NonNull private String mId; - @Nullable - private Icon mIcon; - @NonNull private CharSequence mTitle; + @Nullable + private Icon mIcon; + @Nullable private CharSequence mSubtitle; @@ -337,7 +337,7 @@ public final class SearchAction implements Parcelable { */ @NonNull public SearchAction build() { - return new SearchAction(mId, mIcon, mTitle, mSubtitle, mContentDescription, + return new SearchAction(mId, mTitle, mIcon, mSubtitle, mContentDescription, mPendingIntent, mIntent, mUserHandle, mExtras); } }