diff options
author | Raj Yengisetty <rajesh@cyngn.com> | 2015-03-25 09:48:36 -0700 |
---|---|---|
committer | Rajesh Yengisetty <rajesh@cyngn.com> | 2015-03-25 16:52:28 +0000 |
commit | d8bdb0eef3f1799e8b829bcf114f1c3573bce8d6 (patch) | |
tree | 99f9b97e356285ff45c609e64daee0988b494589 /src/com/android/launcher3 | |
parent | a99eb7b677cb2ceb7439f1e5dfde324b83fe5606 (diff) | |
download | android_packages_apps_Trebuchet-d8bdb0eef3f1799e8b829bcf114f1c3573bce8d6.tar.gz android_packages_apps_Trebuchet-d8bdb0eef3f1799e8b829bcf114f1c3573bce8d6.tar.bz2 android_packages_apps_Trebuchet-d8bdb0eef3f1799e8b829bcf114f1c3573bce8d6.zip |
ProtectedApps: Fix protecting shortcuts with no ComponentNames
Repro:
- Create a shortcut using the contacts widget
- Add to a folder and open app protection screen
- Observe: Trebuchet force closes
Change-Id: I76f6a8b1d024beb36fa804bb3a866913edc335c1
Diffstat (limited to 'src/com/android/launcher3')
-rw-r--r-- | src/com/android/launcher3/Folder.java | 4 | ||||
-rw-r--r-- | src/com/android/launcher3/HiddenFolderFragment.java | 10 |
2 files changed, 10 insertions, 4 deletions
diff --git a/src/com/android/launcher3/Folder.java b/src/com/android/launcher3/Folder.java index 0aacff4d5..988c43e98 100644 --- a/src/com/android/launcher3/Folder.java +++ b/src/com/android/launcher3/Folder.java @@ -290,7 +290,9 @@ public class Folder extends LinearLayout implements DragSource, View.OnClickList public void modifyProtectedApps(boolean protect) { ArrayList<ComponentName> components = new ArrayList<ComponentName>(); for (Pair<ComponentName, CharSequence> item : getComponents()) { - components.add(item.first); + if (item.first != null) { + components.add(item.first); + } } Intent intent = new Intent(); diff --git a/src/com/android/launcher3/HiddenFolderFragment.java b/src/com/android/launcher3/HiddenFolderFragment.java index de3767162..9ac592efb 100644 --- a/src/com/android/launcher3/HiddenFolderFragment.java +++ b/src/com/android/launcher3/HiddenFolderFragment.java @@ -227,7 +227,10 @@ public class HiddenFolderFragment extends Fragment { viewHolder.title.setText(app.title); - Drawable icon = mIcons.get(app.componentName.getPackageName()); + Drawable icon = null; + if (app.componentName != null) { + icon = mIcons.get(app.componentName.getPackageName()); + } viewHolder.icon.setImageDrawable(icon != null ? icon : mDefaultImg); viewHolder.remove.setOnClickListener(new OnClickListener() { @Override @@ -284,8 +287,9 @@ public class HiddenFolderFragment extends Fragment { protected Void doInBackground(AppEntry... apps) { for (AppEntry app : apps) { try { - if (mIcons.containsKey(app.componentName - .getPackageName())) { + // Widget icons do not have a + if (app.componentName == null || + mIcons.containsKey(app.componentName.getPackageName())) { continue; } Drawable icon = mPackageManager |