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;