diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2016-11-15 17:27:15 -0800 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2016-11-15 17:27:53 -0800 |
commit | 4f9611a87c204649f43dd30a41718e7ba7aa7f2c (patch) | |
tree | c1970a5314a3c73fb1c0adc88617c4beaf7ddbb7 /src/com/android/launcher3/model | |
parent | 6f59cff0d66db55913e62f9f9452be5828970672 (diff) | |
download | android_packages_apps_Trebuchet-4f9611a87c204649f43dd30a41718e7ba7aa7f2c.tar.gz android_packages_apps_Trebuchet-4f9611a87c204649f43dd30a41718e7ba7aa7f2c.tar.bz2 android_packages_apps_Trebuchet-4f9611a87c204649f43dd30a41718e7ba7aa7f2c.zip |
Fixing item check when user is enabled/disabled
Bug: 32747950
Change-Id: I278cbd7626ee30be6b803d617cf05f8359e5d940
Diffstat (limited to 'src/com/android/launcher3/model')
-rw-r--r-- | src/com/android/launcher3/model/PackageUpdatedTask.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/com/android/launcher3/model/PackageUpdatedTask.java b/src/com/android/launcher3/model/PackageUpdatedTask.java index 7286bf51f..e3a2b24a9 100644 --- a/src/com/android/launcher3/model/PackageUpdatedTask.java +++ b/src/com/android/launcher3/model/PackageUpdatedTask.java @@ -87,6 +87,7 @@ public class PackageUpdatedTask extends ExtendedModelTask { final int N = packages.length; FlagOp flagOp = FlagOp.NO_OP; final HashSet<String> packageSet = new HashSet<>(Arrays.asList(packages)); + ItemInfoMatcher matcher = ItemInfoMatcher.ofPackages(packageSet, mUser); switch (mOp) { case OP_ADD: { for (int i = 0; i < N; i++) { @@ -135,15 +136,15 @@ public class PackageUpdatedTask extends ExtendedModelTask { FlagOp.addFlag(ShortcutInfo.FLAG_DISABLED_SUSPENDED) : FlagOp.removeFlag(ShortcutInfo.FLAG_DISABLED_SUSPENDED); if (DEBUG) Log.d(TAG, "mAllAppsList.(un)suspend " + N); - appsList.updateDisabledFlags( - ItemInfoMatcher.ofPackages(packageSet, mUser), flagOp); + appsList.updateDisabledFlags(matcher, flagOp); break; case OP_USER_AVAILABILITY_CHANGE: flagOp = UserManagerCompat.getInstance(context).isQuietModeEnabled(mUser) ? FlagOp.addFlag(ShortcutInfo.FLAG_DISABLED_QUIET_USER) : FlagOp.removeFlag(ShortcutInfo.FLAG_DISABLED_QUIET_USER); // We want to update all packages for this user. - appsList.updateDisabledFlags(ItemInfoMatcher.ofUser(mUser), flagOp); + matcher = ItemInfoMatcher.ofUser(mUser); + appsList.updateDisabledFlags(matcher, flagOp); break; } @@ -219,10 +220,10 @@ public class PackageUpdatedTask extends ExtendedModelTask { } ComponentName cn = si.getTargetComponent(); - if (cn != null && packageSet.contains(cn.getPackageName())) { + if (cn != null && matcher.matches(si, cn)) { AppInfo appInfo = addedOrUpdatedApps.get(cn); - if (si.isPromise()) { + if (si.isPromise() && mOp == OP_ADD) { if (si.hasStatusFlag(ShortcutInfo.FLAG_AUTOINTALL_ICON)) { // Auto install icon PackageManager pm = context.getPackageManager(); |