Rewrite: Widget preview loader logic
> Widget previews are saved in data dir instead of cache dir
> Expiring widget previews similar to IconCache
> Removed support for setting thread priorities
Bug: 19865031
Change-Id: Ib6033c2b1ff8ae61bba8762ca994ccd8217d3c75
diff --git a/src/com/android/launcher3/LauncherAppState.java b/src/com/android/launcher3/LauncherAppState.java
index 9082276..555b1cc 100644
--- a/src/com/android/launcher3/LauncherAppState.java
+++ b/src/com/android/launcher3/LauncherAppState.java
@@ -32,7 +32,6 @@
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.Display;
-import android.view.View.AccessibilityDelegate;
import android.view.WindowManager;
import com.android.launcher3.compat.LauncherAppsCompat;
@@ -49,12 +48,12 @@
private final BuildInfo mBuildInfo;
@Thunk final LauncherModel mModel;
private final IconCache mIconCache;
+ private final WidgetPreviewLoader mWidgetCache;
private final boolean mIsScreenLarge;
private final float mScreenDensity;
private final int mLongPressTimeout = 300;
- private WidgetPreviewLoader.CacheDb mWidgetPreviewCacheDb;
private boolean mWallpaperChangedSinceLastCheck;
private static WeakReference<LauncherProvider> sLauncherProvider;
@@ -101,9 +100,8 @@
// set sIsScreenXLarge and mScreenDensity *before* creating icon cache
mIsScreenLarge = isScreenLarge(sContext.getResources());
mScreenDensity = sContext.getResources().getDisplayMetrics().density;
-
- recreateWidgetPreviewDb();
mIconCache = new IconCache(sContext);
+ mWidgetCache = new WidgetPreviewLoader(sContext, mIconCache);
mAppFilter = AppFilter.loadByName(sContext.getString(R.string.app_filter_class));
mBuildInfo = BuildInfo.loadByName(sContext.getString(R.string.build_info_class));
@@ -125,13 +123,6 @@
mFavoritesObserver);
}
- public void recreateWidgetPreviewDb() {
- if (mWidgetPreviewCacheDb != null) {
- mWidgetPreviewCacheDb.close();
- }
- mWidgetPreviewCacheDb = new WidgetPreviewLoader.CacheDb(sContext);
- }
-
/**
* Call from Application.onTerminate(), which is not guaranteed to ever be called.
*/
@@ -181,10 +172,6 @@
return mAppFilter == null || mAppFilter.shouldShowApp(componentName);
}
- WidgetPreviewLoader.CacheDb getWidgetPreviewCacheDb() {
- return mWidgetPreviewCacheDb;
- }
-
static void setLauncherProvider(LauncherProvider provider) {
sLauncherProvider = new WeakReference<LauncherProvider>(provider);
}
@@ -240,6 +227,10 @@
return mDynamicGrid;
}
+ public WidgetPreviewLoader getWidgetCache() {
+ return mWidgetCache;
+ }
+
public boolean isScreenLarge() {
return mIsScreenLarge;
}