Loading api/current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -10050,7 +10050,7 @@ package android.content.pm { public final class ShortcutInfo implements android.os.Parcelable { method public int describeContents(); method public android.content.ComponentName getActivityComponent(); method public java.util.List<java.lang.String> getCategories(); method public java.util.Set<java.lang.String> getCategories(); method public android.os.PersistableBundle getExtras(); method public int getIconResourceId(); method public java.lang.String getId(); Loading Loading @@ -10083,7 +10083,7 @@ package android.content.pm { ctor public ShortcutInfo.Builder(android.content.Context); method public android.content.pm.ShortcutInfo build(); method public android.content.pm.ShortcutInfo.Builder setActivityComponent(android.content.ComponentName); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.List<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setExtras(android.os.PersistableBundle); method public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon); method public android.content.pm.ShortcutInfo.Builder setId(java.lang.String); api/system-current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -10450,7 +10450,7 @@ package android.content.pm { public final class ShortcutInfo implements android.os.Parcelable { method public int describeContents(); method public android.content.ComponentName getActivityComponent(); method public java.util.List<java.lang.String> getCategories(); method public java.util.Set<java.lang.String> getCategories(); method public android.os.PersistableBundle getExtras(); method public int getIconResourceId(); method public java.lang.String getId(); Loading Loading @@ -10483,7 +10483,7 @@ package android.content.pm { ctor public ShortcutInfo.Builder(android.content.Context); method public android.content.pm.ShortcutInfo build(); method public android.content.pm.ShortcutInfo.Builder setActivityComponent(android.content.ComponentName); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.List<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setExtras(android.os.PersistableBundle); method public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon); method public android.content.pm.ShortcutInfo.Builder setId(java.lang.String); api/test-current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -10061,7 +10061,7 @@ package android.content.pm { public final class ShortcutInfo implements android.os.Parcelable { method public int describeContents(); method public android.content.ComponentName getActivityComponent(); method public java.util.List<java.lang.String> getCategories(); method public java.util.Set<java.lang.String> getCategories(); method public android.os.PersistableBundle getExtras(); method public int getIconResourceId(); method public java.lang.String getId(); Loading Loading @@ -10094,7 +10094,7 @@ package android.content.pm { ctor public ShortcutInfo.Builder(android.content.Context); method public android.content.pm.ShortcutInfo build(); method public android.content.pm.ShortcutInfo.Builder setActivityComponent(android.content.ComponentName); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.List<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setExtras(android.os.PersistableBundle); method public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon); method public android.content.pm.ShortcutInfo.Builder setId(java.lang.String); core/java/android/content/pm/ShortcutInfo.java +30 −10 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.os.Parcel; import android.os.Parcelable; import android.os.PersistableBundle; import android.os.UserHandle; import android.util.ArraySet; import com.android.internal.util.Preconditions; Loading @@ -36,6 +37,7 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.List; import java.util.Set; // TODO Enhance javadoc /** Loading Loading @@ -132,7 +134,7 @@ public final class ShortcutInfo implements Parcelable { private String mText; @NonNull private List<String> mCategories; private ArraySet<String> mCategories; /** * Intent *with extras removed*. Loading Loading @@ -192,8 +194,8 @@ public final class ShortcutInfo implements Parcelable { updateTimestamp(); } private <T> ArrayList<T> clone(List<T> source) { return (source == null) ? null : new ArrayList<>(source); private <T> ArraySet<T> clone(Set<T> source) { return (source == null) ? null : new ArraySet<>(source); } /** Loading Loading @@ -346,7 +348,7 @@ public final class ShortcutInfo implements Parcelable { private String mText; private List<String> mCategories; private Set<String> mCategories; private Intent mIntent; Loading Loading @@ -433,7 +435,7 @@ public final class ShortcutInfo implements Parcelable { * @see #SHORTCUT_CATEGORY_CONVERSATION */ @NonNull public Builder setCategories(List<String> categories) { public Builder setCategories(Set<String> categories) { mCategories = categories; return this; } Loading Loading @@ -539,7 +541,7 @@ public final class ShortcutInfo implements Parcelable { * Return the categories. */ @Nullable public List<String> getCategories() { public Set<String> getCategories() { return mCategories; } Loading Loading @@ -733,8 +735,6 @@ public final class ShortcutInfo implements Parcelable { mIcon = source.readParcelable(cl); mTitle = source.readString(); mText = source.readString(); mCategories = new ArrayList<>(); source.readStringList(mCategories); mIntent = source.readParcelable(cl); mIntentPersistableExtras = source.readParcelable(cl); mWeight = source.readInt(); Loading @@ -743,6 +743,16 @@ public final class ShortcutInfo implements Parcelable { mFlags = source.readInt(); mIconResourceId = source.readInt(); mBitmapPath = source.readString(); int N = source.readInt(); if (N == 0) { mCategories = null; } else { mCategories = new ArraySet<>(N); for (int i = 0; i < N; i++) { mCategories.add(source.readString().intern()); } } } @Override Loading @@ -754,7 +764,7 @@ public final class ShortcutInfo implements Parcelable { dest.writeParcelable(mIcon, flags); dest.writeString(mTitle); dest.writeString(mText); dest.writeStringList(mCategories); dest.writeParcelable(mIntent, flags); dest.writeParcelable(mIntentPersistableExtras, flags); dest.writeInt(mWeight); Loading @@ -763,6 +773,16 @@ public final class ShortcutInfo implements Parcelable { dest.writeInt(mFlags); dest.writeInt(mIconResourceId); dest.writeString(mBitmapPath); if (mCategories != null) { final int N = mCategories.size(); dest.writeInt(N); for (int i = 0; i < N; i++) { dest.writeString(mCategories.valueAt(i)); } } else { dest.writeInt(0); } } public static final Creator<ShortcutInfo> CREATOR = Loading Loading @@ -859,7 +879,7 @@ public final class ShortcutInfo implements Parcelable { /** @hide */ public ShortcutInfo( @UserIdInt int userId, String id, String packageName, ComponentName activityComponent, Icon icon, String title, String text, List<String> categories, Intent intent, Icon icon, String title, String text, Set<String> categories, Intent intent, PersistableBundle intentPersistableExtras, int weight, PersistableBundle extras, long lastChangedTimestamp, int flags, int iconResId, String bitmapPath) { Loading services/core/java/com/android/server/pm/ShortcutPackage.java +11 −4 Original line number Diff line number Diff line Loading @@ -40,6 +40,7 @@ import java.io.PrintWriter; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Set; import java.util.function.Predicate; /** Loading Loading @@ -493,7 +494,7 @@ class ShortcutPackage extends ShortcutPackageItem { } { final List<String> cat = si.getCategories(); final Set<String> cat = si.getCategories(); if (cat != null && cat.size() > 0) { out.startTag(null, TAG_CATEGORIES); XmlUtils.writeStringArrayXml(cat.toArray(new String[cat.size()]), Loading Loading @@ -567,7 +568,7 @@ class ShortcutPackage extends ShortcutPackageItem { int flags; int iconRes; String bitmapPath; String[] categories = null; ArraySet<String> categories = null; id = ShortcutService.parseStringAttribute(parser, ATTR_ID); activityComponent = ShortcutService.parseComponentNameAttribute(parser, Loading Loading @@ -607,15 +608,21 @@ class ShortcutPackage extends ShortcutPackageItem { case TAG_STRING_ARRAY_XMLUTILS: if (NAME_CATEGORIES.equals(ShortcutService.parseStringAttribute(parser, ATTR_NAME_XMLUTILS))) { categories = XmlUtils.readThisStringArrayXml(parser, TAG_STRING_ARRAY_XMLUTILS, null); final String[] ar = XmlUtils.readThisStringArrayXml( parser, TAG_STRING_ARRAY_XMLUTILS, null); categories = new ArraySet<>(ar.length); for (int i = 0; i < ar.length; i++) { categories.add(ar[i]); } } continue; } throw ShortcutService.throwForInvalidTag(depth, tag); } return new ShortcutInfo( userId, id, packageName, activityComponent, /* icon =*/ null, title, text, (categories == null ? null : Arrays.asList(categories)), intent, categories, intent, intentPersistableExtras, weight, extras, lastChangedTimestamp, flags, iconRes, bitmapPath); } Loading Loading
api/current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -10050,7 +10050,7 @@ package android.content.pm { public final class ShortcutInfo implements android.os.Parcelable { method public int describeContents(); method public android.content.ComponentName getActivityComponent(); method public java.util.List<java.lang.String> getCategories(); method public java.util.Set<java.lang.String> getCategories(); method public android.os.PersistableBundle getExtras(); method public int getIconResourceId(); method public java.lang.String getId(); Loading Loading @@ -10083,7 +10083,7 @@ package android.content.pm { ctor public ShortcutInfo.Builder(android.content.Context); method public android.content.pm.ShortcutInfo build(); method public android.content.pm.ShortcutInfo.Builder setActivityComponent(android.content.ComponentName); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.List<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setExtras(android.os.PersistableBundle); method public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon); method public android.content.pm.ShortcutInfo.Builder setId(java.lang.String);
api/system-current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -10450,7 +10450,7 @@ package android.content.pm { public final class ShortcutInfo implements android.os.Parcelable { method public int describeContents(); method public android.content.ComponentName getActivityComponent(); method public java.util.List<java.lang.String> getCategories(); method public java.util.Set<java.lang.String> getCategories(); method public android.os.PersistableBundle getExtras(); method public int getIconResourceId(); method public java.lang.String getId(); Loading Loading @@ -10483,7 +10483,7 @@ package android.content.pm { ctor public ShortcutInfo.Builder(android.content.Context); method public android.content.pm.ShortcutInfo build(); method public android.content.pm.ShortcutInfo.Builder setActivityComponent(android.content.ComponentName); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.List<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setExtras(android.os.PersistableBundle); method public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon); method public android.content.pm.ShortcutInfo.Builder setId(java.lang.String);
api/test-current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -10061,7 +10061,7 @@ package android.content.pm { public final class ShortcutInfo implements android.os.Parcelable { method public int describeContents(); method public android.content.ComponentName getActivityComponent(); method public java.util.List<java.lang.String> getCategories(); method public java.util.Set<java.lang.String> getCategories(); method public android.os.PersistableBundle getExtras(); method public int getIconResourceId(); method public java.lang.String getId(); Loading Loading @@ -10094,7 +10094,7 @@ package android.content.pm { ctor public ShortcutInfo.Builder(android.content.Context); method public android.content.pm.ShortcutInfo build(); method public android.content.pm.ShortcutInfo.Builder setActivityComponent(android.content.ComponentName); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.List<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>); method public android.content.pm.ShortcutInfo.Builder setExtras(android.os.PersistableBundle); method public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon); method public android.content.pm.ShortcutInfo.Builder setId(java.lang.String);
core/java/android/content/pm/ShortcutInfo.java +30 −10 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.os.Parcel; import android.os.Parcelable; import android.os.PersistableBundle; import android.os.UserHandle; import android.util.ArraySet; import com.android.internal.util.Preconditions; Loading @@ -36,6 +37,7 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.List; import java.util.Set; // TODO Enhance javadoc /** Loading Loading @@ -132,7 +134,7 @@ public final class ShortcutInfo implements Parcelable { private String mText; @NonNull private List<String> mCategories; private ArraySet<String> mCategories; /** * Intent *with extras removed*. Loading Loading @@ -192,8 +194,8 @@ public final class ShortcutInfo implements Parcelable { updateTimestamp(); } private <T> ArrayList<T> clone(List<T> source) { return (source == null) ? null : new ArrayList<>(source); private <T> ArraySet<T> clone(Set<T> source) { return (source == null) ? null : new ArraySet<>(source); } /** Loading Loading @@ -346,7 +348,7 @@ public final class ShortcutInfo implements Parcelable { private String mText; private List<String> mCategories; private Set<String> mCategories; private Intent mIntent; Loading Loading @@ -433,7 +435,7 @@ public final class ShortcutInfo implements Parcelable { * @see #SHORTCUT_CATEGORY_CONVERSATION */ @NonNull public Builder setCategories(List<String> categories) { public Builder setCategories(Set<String> categories) { mCategories = categories; return this; } Loading Loading @@ -539,7 +541,7 @@ public final class ShortcutInfo implements Parcelable { * Return the categories. */ @Nullable public List<String> getCategories() { public Set<String> getCategories() { return mCategories; } Loading Loading @@ -733,8 +735,6 @@ public final class ShortcutInfo implements Parcelable { mIcon = source.readParcelable(cl); mTitle = source.readString(); mText = source.readString(); mCategories = new ArrayList<>(); source.readStringList(mCategories); mIntent = source.readParcelable(cl); mIntentPersistableExtras = source.readParcelable(cl); mWeight = source.readInt(); Loading @@ -743,6 +743,16 @@ public final class ShortcutInfo implements Parcelable { mFlags = source.readInt(); mIconResourceId = source.readInt(); mBitmapPath = source.readString(); int N = source.readInt(); if (N == 0) { mCategories = null; } else { mCategories = new ArraySet<>(N); for (int i = 0; i < N; i++) { mCategories.add(source.readString().intern()); } } } @Override Loading @@ -754,7 +764,7 @@ public final class ShortcutInfo implements Parcelable { dest.writeParcelable(mIcon, flags); dest.writeString(mTitle); dest.writeString(mText); dest.writeStringList(mCategories); dest.writeParcelable(mIntent, flags); dest.writeParcelable(mIntentPersistableExtras, flags); dest.writeInt(mWeight); Loading @@ -763,6 +773,16 @@ public final class ShortcutInfo implements Parcelable { dest.writeInt(mFlags); dest.writeInt(mIconResourceId); dest.writeString(mBitmapPath); if (mCategories != null) { final int N = mCategories.size(); dest.writeInt(N); for (int i = 0; i < N; i++) { dest.writeString(mCategories.valueAt(i)); } } else { dest.writeInt(0); } } public static final Creator<ShortcutInfo> CREATOR = Loading Loading @@ -859,7 +879,7 @@ public final class ShortcutInfo implements Parcelable { /** @hide */ public ShortcutInfo( @UserIdInt int userId, String id, String packageName, ComponentName activityComponent, Icon icon, String title, String text, List<String> categories, Intent intent, Icon icon, String title, String text, Set<String> categories, Intent intent, PersistableBundle intentPersistableExtras, int weight, PersistableBundle extras, long lastChangedTimestamp, int flags, int iconResId, String bitmapPath) { Loading
services/core/java/com/android/server/pm/ShortcutPackage.java +11 −4 Original line number Diff line number Diff line Loading @@ -40,6 +40,7 @@ import java.io.PrintWriter; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Set; import java.util.function.Predicate; /** Loading Loading @@ -493,7 +494,7 @@ class ShortcutPackage extends ShortcutPackageItem { } { final List<String> cat = si.getCategories(); final Set<String> cat = si.getCategories(); if (cat != null && cat.size() > 0) { out.startTag(null, TAG_CATEGORIES); XmlUtils.writeStringArrayXml(cat.toArray(new String[cat.size()]), Loading Loading @@ -567,7 +568,7 @@ class ShortcutPackage extends ShortcutPackageItem { int flags; int iconRes; String bitmapPath; String[] categories = null; ArraySet<String> categories = null; id = ShortcutService.parseStringAttribute(parser, ATTR_ID); activityComponent = ShortcutService.parseComponentNameAttribute(parser, Loading Loading @@ -607,15 +608,21 @@ class ShortcutPackage extends ShortcutPackageItem { case TAG_STRING_ARRAY_XMLUTILS: if (NAME_CATEGORIES.equals(ShortcutService.parseStringAttribute(parser, ATTR_NAME_XMLUTILS))) { categories = XmlUtils.readThisStringArrayXml(parser, TAG_STRING_ARRAY_XMLUTILS, null); final String[] ar = XmlUtils.readThisStringArrayXml( parser, TAG_STRING_ARRAY_XMLUTILS, null); categories = new ArraySet<>(ar.length); for (int i = 0; i < ar.length; i++) { categories.add(ar[i]); } } continue; } throw ShortcutService.throwForInvalidTag(depth, tag); } return new ShortcutInfo( userId, id, packageName, activityComponent, /* icon =*/ null, title, text, (categories == null ? null : Arrays.asList(categories)), intent, categories, intent, intentPersistableExtras, weight, extras, lastChangedTimestamp, flags, iconRes, bitmapPath); } Loading