Add config to enable snapshot preloading
Enable preloading if config_enableTaskSnapshotPreloading instead of
assuming it should be off for all low ram devices. This allows it to be
configured via an overlay.
Test: TaskSnapshotCacheTest
Test: TaskSnapshotControllerTest
Test: TaskSnapshotPersisterLoaderTest
Test: TaskSnapshotSurfaceTest
Bug: 148099851
Change-Id: I9e3320dcff5b710e110cc7199c41c5a004991592
diff --git a/quickstep/src/com/android/quickstep/TaskThumbnailCache.java b/quickstep/src/com/android/quickstep/TaskThumbnailCache.java
index e47df6c..93bb75b 100644
--- a/quickstep/src/com/android/quickstep/TaskThumbnailCache.java
+++ b/quickstep/src/com/android/quickstep/TaskThumbnailCache.java
@@ -43,6 +43,7 @@
private final int mCacheSize;
private final TaskKeyLruCache<ThumbnailData> mCache;
private final HighResLoadingState mHighResLoadingState;
+ private final boolean mEnableTaskSnapshotPreloading;
public static class HighResLoadingState {
private boolean mIsLowRamDevice;
@@ -100,6 +101,7 @@
Resources res = context.getResources();
mCacheSize = res.getInteger(R.integer.recentsThumbnailCacheSize);
+ mEnableTaskSnapshotPreloading = res.getBoolean(R.bool.config_enableTaskSnapshotPreloading);
mCache = new TaskKeyLruCache<>(mCacheSize);
}
@@ -212,7 +214,7 @@
* @return Whether to enable background preloading of task thumbnails.
*/
public boolean isPreloadingEnabled() {
- return !mHighResLoadingState.mIsLowRamDevice && mHighResLoadingState.mVisible;
+ return mEnableTaskSnapshotPreloading && mHighResLoadingState.mVisible;
}
public static abstract class ThumbnailLoadRequest extends HandlerRunnable {
diff --git a/res/values/config.xml b/res/values/config.xml
index ef34dcd..8aff6da 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -117,6 +117,9 @@
<!-- Recents -->
<item type="id" name="overview_panel"/>
+ <!-- Whether to enable background preloading of task thumbnails. -->
+ <bool name="config_enableTaskSnapshotPreloading">true</bool>
+
<!-- Configuration resources -->
<array name="dynamic_resources"> </array>
</resources>