diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2016-07-28 12:11:54 -0700 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2016-07-29 16:10:31 -0700 |
commit | d3b87ef1963fb96177ca85bcd6a25879e27e419c (patch) | |
tree | f334d5aa2b24626cba47ec1936264a08e385a4b5 /src/com/android/launcher3/shortcuts | |
parent | c42087e5c011dbf912c0f8b8d27d15ec5a97dca1 (diff) | |
download | android_packages_apps_Trebuchet-d3b87ef1963fb96177ca85bcd6a25879e27e419c.tar.gz android_packages_apps_Trebuchet-d3b87ef1963fb96177ca85bcd6a25879e27e419c.tar.bz2 android_packages_apps_Trebuchet-d3b87ef1963fb96177ca85bcd6a25879e27e419c.zip |
Adding quiet mode support for shortcuts
> LauncherApps returns empty list when the user is locked. Not relying on
LauncherApps in this case
> When the user is locked, removing all dynamic shortcuts
> Loading shortcuts from DB when the user is locked
> Verifying the shortcuts again when the user is available
Bug: 30411561
Change-Id: Ib6eb372c5b009cadb86a8f6e781f3f3cbf787ceb
Diffstat (limited to 'src/com/android/launcher3/shortcuts')
-rw-r--r-- | src/com/android/launcher3/shortcuts/DeepShortcutManager.java | 4 | ||||
-rw-r--r-- | src/com/android/launcher3/shortcuts/ShortcutKey.java | 18 |
2 files changed, 18 insertions, 4 deletions
diff --git a/src/com/android/launcher3/shortcuts/DeepShortcutManager.java b/src/com/android/launcher3/shortcuts/DeepShortcutManager.java index 450c36df4..36bb2b5df 100644 --- a/src/com/android/launcher3/shortcuts/DeepShortcutManager.java +++ b/src/com/android/launcher3/shortcuts/DeepShortcutManager.java @@ -98,7 +98,7 @@ public class DeepShortcutManager { public void unpinShortcut(final ShortcutKey key) { if (Utilities.isNycMR1OrAbove()) { String packageName = key.componentName.getPackageName(); - String id = key.id; + String id = key.getId(); UserHandleCompat user = key.user; List<String> pinnedIds = extractIds(queryForPinnedShortcuts(packageName, user)); pinnedIds.remove(id); @@ -120,7 +120,7 @@ public class DeepShortcutManager { public void pinShortcut(final ShortcutKey key) { if (Utilities.isNycMR1OrAbove()) { String packageName = key.componentName.getPackageName(); - String id = key.id; + String id = key.getId(); UserHandleCompat user = key.user; List<String> pinnedIds = extractIds(queryForPinnedShortcuts(packageName, user)); pinnedIds.add(id); diff --git a/src/com/android/launcher3/shortcuts/ShortcutKey.java b/src/com/android/launcher3/shortcuts/ShortcutKey.java index c15f91dd3..405303042 100644 --- a/src/com/android/launcher3/shortcuts/ShortcutKey.java +++ b/src/com/android/launcher3/shortcuts/ShortcutKey.java @@ -1,7 +1,9 @@ package com.android.launcher3.shortcuts; import android.content.ComponentName; +import android.content.Intent; +import com.android.launcher3.ItemInfo; import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.ComponentKey; @@ -9,16 +11,28 @@ import com.android.launcher3.util.ComponentKey; * A key that uniquely identifies a shortcut using its package, id, and user handle. */ public class ShortcutKey extends ComponentKey { - final String id; public ShortcutKey(String packageName, UserHandleCompat user, String id) { // Use the id as the class name. super(new ComponentName(packageName, id), user); - this.id = id; + } + + public String getId() { + return componentName.getClassName(); } public static ShortcutKey fromInfo(ShortcutInfoCompat shortcutInfo) { return new ShortcutKey(shortcutInfo.getPackage(), shortcutInfo.getUserHandle(), shortcutInfo.getId()); } + + public static ShortcutKey fromIntent(Intent intent, UserHandleCompat user) { + String shortcutId = intent.getStringExtra( + ShortcutInfoCompat.EXTRA_SHORTCUT_ID); + return new ShortcutKey(intent.getPackage(), user, shortcutId); + } + + public static ShortcutKey fromItemInfo(ItemInfo info) { + return fromIntent(info.getIntent(), info.user); + } } |