Merge "Deference mAppPredictor on destroy" into ub-launcher3-rvc-dev

This commit is contained in:
TreeHugger Robot
2020-05-15 20:17:42 +00:00
committed by Android (Google) Code Review
2 changed files with 9 additions and 11 deletions
@@ -274,6 +274,7 @@ public class HotseatPredictionController implements DragController.DragListener,
}
if (mAppPredictor != null) {
mAppPredictor.destroy();
mAppPredictor = null;
}
WeakReference<HotseatPredictionController> controllerRef = new WeakReference<>(this);
@@ -43,7 +43,6 @@ public class PredictionModel implements ResourceBasedOverride {
private static final int MAX_CACHE_ITEMS = 5;
protected Context mContext;
private ArrayList<ComponentKey> mCachedComponentKeys;
private SharedPreferences mDevicePrefs;
private UserCache mUserCache;
@@ -78,7 +77,6 @@ public class PredictionModel implements ResourceBasedOverride {
builder.append("\n");
}
mDevicePrefs.edit().putString(CACHED_ITEMS_KEY, builder.toString()).apply();
mCachedComponentKeys = null;
});
}
@@ -89,17 +87,16 @@ public class PredictionModel implements ResourceBasedOverride {
@WorkerThread
public List<ComponentKey> getPredictionComponentKeys() {
Preconditions.assertWorkerThread();
if (mCachedComponentKeys == null) {
mCachedComponentKeys = new ArrayList<>();
String cachedBlob = mDevicePrefs.getString(CACHED_ITEMS_KEY, "");
for (String line : cachedBlob.split("\n")) {
ComponentKey key = getComponentKeyFromSerializedString(line);
if (key != null) {
mCachedComponentKeys.add(key);
}
ArrayList<ComponentKey> items = new ArrayList<>();
String cachedBlob = mDevicePrefs.getString(CACHED_ITEMS_KEY, "");
for (String line : cachedBlob.split("\n")) {
ComponentKey key = getComponentKeyFromSerializedString(line);
if (key != null) {
items.add(key);
}
}
return mCachedComponentKeys;
return items;
}
private String serializeComponentKeyToString(ComponentKey componentKey) {