diff --git a/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsController.java b/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsController.java
index 544f9bf27e..d786d94149 100644
--- a/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsController.java
+++ b/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsController.java
@@ -15,8 +15,11 @@
*/
package com.android.launcher3.taskbar.allapps;
+import static com.android.launcher3.model.data.AppInfo.EMPTY_ARRAY;
+
import android.view.View;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
@@ -33,7 +36,6 @@ import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.function.Predicate;
-
/**
* Handles the all apps overlay window initialization, updates, and its data.
*
@@ -54,9 +56,9 @@ public final class TaskbarAllAppsController {
private @Nullable TaskbarSearchSessionController mSearchSessionController;
// Application data models.
- private AppInfo[] mApps;
+ private @NonNull AppInfo[] mApps = EMPTY_ARRAY;
private int mAppsModelFlags;
- private List mPredictedApps;
+ private @NonNull List mPredictedApps = Collections.emptyList();
private @Nullable List mZeroStateSearchSuggestions;
private boolean mDisallowGlobalDrag;
private boolean mDisallowLongClick;
@@ -82,8 +84,8 @@ public final class TaskbarAllAppsController {
}
/** Updates the current {@link AppInfo} instances. */
- public void setApps(AppInfo[] apps, int flags, Map map) {
- mApps = apps;
+ public void setApps(@Nullable AppInfo[] apps, int flags, Map map) {
+ mApps = apps == null ? EMPTY_ARRAY : apps;
mAppsModelFlags = flags;
mPackageUserKeytoUidMap = map;
if (mAppsView != null) {
diff --git a/src/com/android/launcher3/allapps/AllAppsStore.java b/src/com/android/launcher3/allapps/AllAppsStore.java
index c3d0e6b530..e724858a79 100644
--- a/src/com/android/launcher3/allapps/AllAppsStore.java
+++ b/src/com/android/launcher3/allapps/AllAppsStore.java
@@ -61,7 +61,7 @@ public class AllAppsStore {
private PackageUserKey mTempKey = new PackageUserKey(null, null);
private AppInfo mTempInfo = new AppInfo();
- private AppInfo[] mApps = EMPTY_ARRAY;
+ private @NonNull AppInfo[] mApps = EMPTY_ARRAY;
private final List mUpdateListeners = new CopyOnWriteArrayList<>();
private final ArrayList mIconContainers = new ArrayList<>();
@@ -85,8 +85,8 @@ public class AllAppsStore {
* Sets the current set of apps and sets mapping for {@link PackageUserKey} to Uid for
* the current set of apps.
*/
- public void setApps(AppInfo[] apps, int flags, Map map) {
- mApps = apps;
+ public void setApps(@Nullable AppInfo[] apps, int flags, Map map) {
+ mApps = apps == null ? EMPTY_ARRAY : apps;
mModelFlags = flags;
notifyUpdate();
mPackageUserKeytoUidMap = map;