Loading services/core/java/com/android/server/pm/ShortcutPackage.java +8 −4 Original line number Diff line number Diff line Loading @@ -885,7 +885,12 @@ class ShortcutPackage extends ShortcutPackageItem { * available ShareTarget definitions in this package. */ public List<ShortcutManager.ShareShortcutInfo> getMatchingShareTargets( @NonNull IntentFilter filter) { @NonNull final IntentFilter filter) { return getMatchingShareTargets(filter, null); } List<ShortcutManager.ShareShortcutInfo> getMatchingShareTargets( @NonNull final IntentFilter filter, @Nullable final String pkgName) { synchronized (mLock) { final List<ShareTargetInfo> matchedTargets = new ArrayList<>(); for (int i = 0; i < mShareTargets.size(); i++) { Loading @@ -909,8 +914,7 @@ class ShortcutPackage extends ShortcutPackageItem { // included in the result findAll(shortcuts, ShortcutInfo::isNonManifestVisible, ShortcutInfo.CLONE_REMOVE_FOR_APP_PREDICTION, mShortcutUser.mService.mContext.getPackageName(), 0, /*getPinnedByAnyLauncher=*/ false); pkgName, 0, /*getPinnedByAnyLauncher=*/ false); final List<ShortcutManager.ShareShortcutInfo> result = new ArrayList<>(); for (int i = 0; i < shortcuts.size(); i++) { Loading Loading @@ -1108,7 +1112,7 @@ class ShortcutPackage extends ShortcutPackageItem { // Now prepare to publish manifest shortcuts. List<ShortcutInfo> newManifestShortcutList = null; final int shareTargetSize; int shareTargetSize = 0; synchronized (mLock) { try { shareTargetSize = mShareTargets.size(); Loading services/core/java/com/android/server/pm/ShortcutService.java +7 −1 Original line number Diff line number Diff line Loading @@ -2512,11 +2512,17 @@ public class ShortcutService extends IShortcutService.Stub { } enforceCallingOrSelfPermission(android.Manifest.permission.MANAGE_APP_PREDICTIONS, "getShareTargets"); final ComponentName chooser = injectChooserActivity(); final String pkg = (chooser != null && mPackageManagerInternal.getComponentEnabledSetting(chooser, injectBinderCallingUid(), userId) == PackageManager.COMPONENT_ENABLED_STATE_ENABLED) ? chooser.getPackageName() : mContext.getPackageName(); synchronized (mLock) { throwIfUserLockedL(userId); final List<ShortcutManager.ShareShortcutInfo> shortcutInfoList = new ArrayList<>(); final ShortcutUser user = getUserShortcutsLocked(userId); user.forAllPackages(p -> shortcutInfoList.addAll(p.getMatchingShareTargets(filter))); user.forAllPackages(p -> shortcutInfoList.addAll( p.getMatchingShareTargets(filter, pkg))); return new ParceledListSlice<>(shortcutInfoList); } } Loading Loading
services/core/java/com/android/server/pm/ShortcutPackage.java +8 −4 Original line number Diff line number Diff line Loading @@ -885,7 +885,12 @@ class ShortcutPackage extends ShortcutPackageItem { * available ShareTarget definitions in this package. */ public List<ShortcutManager.ShareShortcutInfo> getMatchingShareTargets( @NonNull IntentFilter filter) { @NonNull final IntentFilter filter) { return getMatchingShareTargets(filter, null); } List<ShortcutManager.ShareShortcutInfo> getMatchingShareTargets( @NonNull final IntentFilter filter, @Nullable final String pkgName) { synchronized (mLock) { final List<ShareTargetInfo> matchedTargets = new ArrayList<>(); for (int i = 0; i < mShareTargets.size(); i++) { Loading @@ -909,8 +914,7 @@ class ShortcutPackage extends ShortcutPackageItem { // included in the result findAll(shortcuts, ShortcutInfo::isNonManifestVisible, ShortcutInfo.CLONE_REMOVE_FOR_APP_PREDICTION, mShortcutUser.mService.mContext.getPackageName(), 0, /*getPinnedByAnyLauncher=*/ false); pkgName, 0, /*getPinnedByAnyLauncher=*/ false); final List<ShortcutManager.ShareShortcutInfo> result = new ArrayList<>(); for (int i = 0; i < shortcuts.size(); i++) { Loading Loading @@ -1108,7 +1112,7 @@ class ShortcutPackage extends ShortcutPackageItem { // Now prepare to publish manifest shortcuts. List<ShortcutInfo> newManifestShortcutList = null; final int shareTargetSize; int shareTargetSize = 0; synchronized (mLock) { try { shareTargetSize = mShareTargets.size(); Loading
services/core/java/com/android/server/pm/ShortcutService.java +7 −1 Original line number Diff line number Diff line Loading @@ -2512,11 +2512,17 @@ public class ShortcutService extends IShortcutService.Stub { } enforceCallingOrSelfPermission(android.Manifest.permission.MANAGE_APP_PREDICTIONS, "getShareTargets"); final ComponentName chooser = injectChooserActivity(); final String pkg = (chooser != null && mPackageManagerInternal.getComponentEnabledSetting(chooser, injectBinderCallingUid(), userId) == PackageManager.COMPONENT_ENABLED_STATE_ENABLED) ? chooser.getPackageName() : mContext.getPackageName(); synchronized (mLock) { throwIfUserLockedL(userId); final List<ShortcutManager.ShareShortcutInfo> shortcutInfoList = new ArrayList<>(); final ShortcutUser user = getUserShortcutsLocked(userId); user.forAllPackages(p -> shortcutInfoList.addAll(p.getMatchingShareTargets(filter))); user.forAllPackages(p -> shortcutInfoList.addAll( p.getMatchingShareTargets(filter, pkg))); return new ParceledListSlice<>(shortcutInfoList); } } Loading