diff --git a/src/com/android/launcher3/popup/PopupContainerWithArrow.java b/src/com/android/launcher3/popup/PopupContainerWithArrow.java
index 15dde43..0b0f88a 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.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 @@
             orientAboutIcon(originalIcon, arrowHeight + arrowVerticalOffset);
         }
 
-        List<DeepShortcutView> 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<DeepShortcutView> shortcutViews = mShortcutsItemView == null
+                ? Collections.EMPTY_LIST
+                : mShortcutsItemView.getDeepShortcutViews(reverseOrder);
+        if (mNotificationItemView != null) {
+            IconPalette iconPalette = originalIcon.getIconPalette();
+            mNotificationItemView.applyColors(iconPalette);
         }
 
         // Add the arrow.
