diff options
| author | Mehdi Alizadeh <mett@google.com> | 2020-02-06 02:50:38 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-02-06 02:50:38 +0000 |
| commit | 7a2b81b7d33fa790b099d06836c122565d4da36b (patch) | |
| tree | e5e465957de72f701f3d36f5dfee9b55e97cbcea /core/java/android | |
| parent | 03127b010fb9b89d15235d2ff8ef1c82026b5a4e (diff) | |
| parent | ae808ff765dcfe0806d1ab73d97e33d8bebd5d70 (diff) | |
Merge "Adds locus Id to ShortcutQuery to find shortcuts based on LocusId"
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/content/pm/ILauncherApps.aidl | 9 | ||||
| -rw-r--r-- | core/java/android/content/pm/LauncherApps.java | 26 | ||||
| -rw-r--r-- | core/java/android/content/pm/ShortcutServiceInternal.java | 5 |
3 files changed, 31 insertions, 9 deletions
diff --git a/core/java/android/content/pm/ILauncherApps.aidl b/core/java/android/content/pm/ILauncherApps.aidl index 173fa5f2b4ba..04923590b413 100644 --- a/core/java/android/content/pm/ILauncherApps.aidl +++ b/core/java/android/content/pm/ILauncherApps.aidl @@ -20,6 +20,7 @@ import android.app.IApplicationThread; import android.content.ComponentName; import android.content.Intent; import android.content.IntentSender; +import android.content.LocusId; import android.content.pm.ActivityInfo; import android.content.pm.ApplicationInfo; import android.content.pm.IOnAppsChangedListener; @@ -67,7 +68,8 @@ interface ILauncherApps { in UserHandle user); ParceledListSlice getShortcuts(String callingPackage, long changedSince, String packageName, - in List shortcutIds, in ComponentName componentName, int flags, in UserHandle user); + in List shortcutIds, in List<LocusId> locusIds, in ComponentName componentName, + int flags, in UserHandle user); void pinShortcuts(String callingPackage, String packageName, in List<String> shortcutIds, in UserHandle user); boolean startShortcut(String callingPackage, String packageName, String id, @@ -92,7 +94,8 @@ interface ILauncherApps { ParceledListSlice getAllSessions(String callingPackage); void registerShortcutChangeCallback(String callingPackage, long changedSince, - String packageName, in List shortcutIds, in ComponentName componentName, int flags, - in IShortcutChangeCallback callback, int callbackId); + String packageName, in List shortcutIds, in List<LocusId> locusIds, + in ComponentName componentName, int flags, in IShortcutChangeCallback callback, + int callbackId); void unregisterShortcutChangeCallback(String callingPackage, int callbackId); } diff --git a/core/java/android/content/pm/LauncherApps.java b/core/java/android/content/pm/LauncherApps.java index c647f6868021..73c9e4d843b7 100644 --- a/core/java/android/content/pm/LauncherApps.java +++ b/core/java/android/content/pm/LauncherApps.java @@ -34,6 +34,7 @@ import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.IntentSender; +import android.content.LocusId; import android.content.pm.PackageInstaller.SessionCallback; import android.content.pm.PackageInstaller.SessionCallbackDelegate; import android.content.pm.PackageInstaller.SessionInfo; @@ -415,6 +416,9 @@ public class LauncherApps { List<String> mShortcutIds; @Nullable + List<LocusId> mLocusIds; + + @Nullable ComponentName mActivity; @QueryFlags @@ -451,6 +455,19 @@ public class LauncherApps { } /** + * If non-null, return only the specified shortcuts by locus ID. When setting this field, + * a package name must also be set with {@link #setPackage}. + * + * @hide + */ + @SystemApi + @NonNull + public ShortcutQuery setLocusIds(@Nullable List<LocusId> locusIds) { + mLocusIds = locusIds; + return this; + } + + /** * If non-null, returns only shortcuts associated with the activity; i.e. * {@link ShortcutInfo}s whose {@link ShortcutInfo#getActivity()} are equal * to {@code activity}. @@ -1022,8 +1039,8 @@ public class LauncherApps { // changed callback, but that only returns shortcuts with the "key" information, so // that won't return disabled message. return maybeUpdateDisabledMessage(mService.getShortcuts(mContext.getPackageName(), - query.mChangedSince, query.mPackage, query.mShortcutIds, query.mActivity, - query.mQueryFlags, user) + query.mChangedSince, query.mPackage, query.mShortcutIds, query.mLocusIds, + query.mActivity, query.mQueryFlags, user) .getList()); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); @@ -1680,8 +1697,9 @@ public class LauncherApps { mShortcutChangeCallbacks.put(callbackId, state); try { mService.registerShortcutChangeCallback(mContext.getPackageName(), - query.mChangedSince, query.mPackage, query.mShortcutIds, query.mActivity, - query.mQueryFlags, new ShortcutChangeCallbackProxy(state), callbackId); + query.mChangedSince, query.mPackage, query.mShortcutIds, query.mLocusIds, + query.mActivity, query.mQueryFlags, new ShortcutChangeCallbackProxy(state), + callbackId); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } diff --git a/core/java/android/content/pm/ShortcutServiceInternal.java b/core/java/android/content/pm/ShortcutServiceInternal.java index e6f682d22b14..a11a1dd5a68b 100644 --- a/core/java/android/content/pm/ShortcutServiceInternal.java +++ b/core/java/android/content/pm/ShortcutServiceInternal.java @@ -23,6 +23,7 @@ import android.appwidget.AppWidgetProviderInfo; import android.content.ComponentName; import android.content.Intent; import android.content.IntentSender; +import android.content.LocusId; import android.content.pm.LauncherApps.ShortcutQuery; import android.os.Bundle; import android.os.ParcelFileDescriptor; @@ -45,8 +46,8 @@ public abstract class ShortcutServiceInternal { getShortcuts(int launcherUserId, @NonNull String callingPackage, long changedSince, @Nullable String packageName, @Nullable List<String> shortcutIds, - @Nullable ComponentName componentName, @ShortcutQuery.QueryFlags int flags, - int userId, int callingPid, int callingUid); + @Nullable List<LocusId> locusIds, @Nullable ComponentName componentName, + @ShortcutQuery.QueryFlags int flags, int userId, int callingPid, int callingUid); public abstract boolean isPinnedByCaller(int launcherUserId, @NonNull String callingPackage, |
