summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2016-07-20 12:35:16 -0700
committerSunny Goyal <sunnygoyal@google.com>2016-07-20 15:04:23 -0700
commit860538df1d72b3840811b7a39940a224f3326066 (patch)
tree66dbe65254f01b4d386cc26bad019b669501537d /src/com
parent1f418d236122910df26f0893ba8e239989a5ee6c (diff)
downloadandroid_packages_apps_Trebuchet-860538df1d72b3840811b7a39940a224f3326066.tar.gz
android_packages_apps_Trebuchet-860538df1d72b3840811b7a39940a224f3326066.tar.bz2
android_packages_apps_Trebuchet-860538df1d72b3840811b7a39940a224f3326066.zip
Fixing missing user check when updating shortcuts for an app
Change-Id: I889c555d3402fd71098af29b78eb6d959a071080
Diffstat (limited to 'src/com')
-rw-r--r--src/com/android/launcher3/LauncherModel.java16
-rw-r--r--src/com/android/launcher3/allapps/AlphabeticalAppsList.java2
-rw-r--r--src/com/android/launcher3/shortcuts/ShortcutKey.java6
-rw-r--r--src/com/android/launcher3/util/ComponentKey.java20
4 files changed, 20 insertions, 24 deletions
diff --git a/src/com/android/launcher3/LauncherModel.java b/src/com/android/launcher3/LauncherModel.java
index a75edb715..ddd60c89c 100644
--- a/src/com/android/launcher3/LauncherModel.java
+++ b/src/com/android/launcher3/LauncherModel.java
@@ -2782,7 +2782,7 @@ public class LauncherModel extends BroadcastReceiver
for (UserHandleCompat user : mUserManager.getUserProfiles()) {
List<ShortcutInfoCompat> shortcuts = mDeepShortcutManager
.queryForAllShortcuts(user);
- updateDeepShortcutMap(null, shortcuts);
+ updateDeepShortcutMap(null, user, shortcuts);
}
synchronized (LoaderTask.this) {
if (mStopped) {
@@ -2804,13 +2804,17 @@ public class LauncherModel extends BroadcastReceiver
}
}
- // Clear all the shortcuts for the given package, and re-add the new shortcuts.
- private void updateDeepShortcutMap(String packageName, List<ShortcutInfoCompat> shortcuts) {
- // Remove all keys associated with the given package.
+ /**
+ * Clear all the shortcuts for the given package, and re-add the new shortcuts.
+ */
+ private void updateDeepShortcutMap(
+ String packageName, UserHandleCompat user, List<ShortcutInfoCompat> shortcuts) {
if (packageName != null) {
Iterator<ComponentKey> keysIter = mBgDeepShortcutMap.keySet().iterator();
while (keysIter.hasNext()) {
- if (keysIter.next().componentName.getPackageName().equals(packageName)) {
+ ComponentKey next = keysIter.next();
+ if (next.componentName.getPackageName().equals(packageName)
+ && next.user.equals(user)) {
keysIter.remove();
}
}
@@ -3336,7 +3340,7 @@ public class LauncherModel extends BroadcastReceiver
bindUpdatedShortcuts(updatedShortcutInfos, mUser);
// Update the deep shortcut map, in case the list of ids has changed for an activity.
- updateDeepShortcutMap(mPackageName, mShortcuts);
+ updateDeepShortcutMap(mPackageName, mUser, mShortcuts);
bindDeepShortcuts();
}
}
diff --git a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
index b70c16511..7127ec44b 100644
--- a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
+++ b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
@@ -440,7 +440,7 @@ public class AlphabeticalAppsList {
mPredictedApps.add(info);
} else {
if (ProviderConfig.IS_DOGFOOD_BUILD) {
- Log.e(TAG, "Predicted app not found: " + ck.flattenToString(mLauncher));
+ Log.e(TAG, "Predicted app not found: " + ck);
}
}
// Stop at the number of predicted apps
diff --git a/src/com/android/launcher3/shortcuts/ShortcutKey.java b/src/com/android/launcher3/shortcuts/ShortcutKey.java
index c9d66eb7c..c15f91dd3 100644
--- a/src/com/android/launcher3/shortcuts/ShortcutKey.java
+++ b/src/com/android/launcher3/shortcuts/ShortcutKey.java
@@ -2,7 +2,6 @@ package com.android.launcher3.shortcuts;
import android.content.ComponentName;
-import com.android.launcher3.LauncherAppState;
import com.android.launcher3.compat.UserHandleCompat;
import com.android.launcher3.util.ComponentKey;
@@ -22,9 +21,4 @@ public class ShortcutKey extends ComponentKey {
return new ShortcutKey(shortcutInfo.getPackage(), shortcutInfo.getUserHandle(),
shortcutInfo.getId());
}
-
- @Override
- public String toString() {
- return flattenToString(LauncherAppState.getInstance().getContext());
- }
}
diff --git a/src/com/android/launcher3/util/ComponentKey.java b/src/com/android/launcher3/util/ComponentKey.java
index b7aafaea9..144b411fa 100644
--- a/src/com/android/launcher3/util/ComponentKey.java
+++ b/src/com/android/launcher3/util/ComponentKey.java
@@ -18,6 +18,7 @@ package com.android.launcher3.util;
import android.content.ComponentName;
import android.content.Context;
+
import com.android.launcher3.compat.UserHandleCompat;
import com.android.launcher3.compat.UserManagerCompat;
@@ -60,17 +61,6 @@ public class ComponentKey {
mHashCode = Arrays.hashCode(new Object[] {componentName, user});
}
- /**
- * Encodes a component key as a string of the form [flattenedComponentString#userId].
- */
- public String flattenToString(Context context) {
- String flattened = componentName.flattenToString();
- if (user != null) {
- flattened += "#" + UserManagerCompat.getInstance(context).getSerialNumberForUser(user);
- }
- return flattened;
- }
-
@Override
public int hashCode() {
return mHashCode;
@@ -81,4 +71,12 @@ public class ComponentKey {
ComponentKey other = (ComponentKey) o;
return other.componentName.equals(componentName) && other.user.equals(user);
}
+
+ /**
+ * Encodes a component key as a string of the form [flattenedComponentString#userId].
+ */
+ @Override
+ public String toString() {
+ return componentName.flattenToString() + "#" + user;
+ }
} \ No newline at end of file