From: Tony Date: Thu, 2 Mar 2017 00:51:15 +0000 (-0800) Subject: Add null check when populating popup X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=3ce144b41b872be9fac8446b3b1cb4245c1e6842;p=android-x86%2Fpackages-apps-Launcher3.git Add null check when populating popup It was crashing when there were notifications but no shortcuts. Change-Id: I92e961e6186ef24736777855e114bd3245f7ac91 --- diff --git a/src/com/android/launcher3/popup/PopupContainerWithArrow.java b/src/com/android/launcher3/popup/PopupContainerWithArrow.java index 15dde4330..0b0f88aaf 100644 --- a/src/com/android/launcher3/popup/PopupContainerWithArrow.java +++ b/src/com/android/launcher3/popup/PopupContainerWithArrow.java @@ -70,6 +70,8 @@ import com.android.launcher3.shortcuts.DeepShortcutView; import com.android.launcher3.shortcuts.ShortcutsItemView; import com.android.launcher3.util.PackageUserKey; +import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.Map; @@ -182,14 +184,12 @@ public class PopupContainerWithArrow extends AbstractFloatingView implements Dra orientAboutIcon(originalIcon, arrowHeight + arrowVerticalOffset); } - List shortcutViews = mShortcutsItemView.getDeepShortcutViews(reverseOrder); - for (int i = 0; i < itemsToPopulate.length; i++) { - switch (itemsToPopulate[i]) { - case NOTIFICATION: - IconPalette iconPalette = originalIcon.getIconPalette(); - mNotificationItemView.applyColors(iconPalette); - break; - } + List shortcutViews = mShortcutsItemView == null + ? Collections.EMPTY_LIST + : mShortcutsItemView.getDeepShortcutViews(reverseOrder); + if (mNotificationItemView != null) { + IconPalette iconPalette = originalIcon.getIconPalette(); + mNotificationItemView.applyColors(iconPalette); } // Add the arrow.