From 16affbdf30b51ada08391d1ece721dca61ba3dea Mon Sep 17 00:00:00 2001 From: Sunny Goyal Date: Tue, 22 Mar 2016 14:32:44 -0700 Subject: [PATCH] Embedding the icon pixel size in the cache DB version. This causes the cache to get reset when the icon size changes, for eg, in case of display scale changes Bug: 27701193 Change-Id: Ib11144757a93cb50fb233d855902c0b2c15afbed --- src/com/android/launcher3/IconCache.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/com/android/launcher3/IconCache.java b/src/com/android/launcher3/IconCache.java index 05ad5388a4..c72c2f9f6d 100644 --- a/src/com/android/launcher3/IconCache.java +++ b/src/com/android/launcher3/IconCache.java @@ -118,7 +118,7 @@ public class IconCache { mUserManager = UserManagerCompat.getInstance(mContext); mLauncherApps = LauncherAppsCompat.getInstance(mContext); mIconDpi = inv.fillResIconDpi; - mIconDb = new IconDB(context); + mIconDb = new IconDB(context, inv.iconBitmapSize); mWorkerHandler = new Handler(LauncherModel.getWorkerLooper()); @@ -809,8 +809,10 @@ public class IconCache { private final static String COLUMN_LABEL = "label"; private final static String COLUMN_SYSTEM_STATE = "system_state"; - public IconDB(Context context) { - super(context, LauncherFiles.APP_ICONS_DB, RELEASE_VERSION, TABLE_NAME); + public IconDB(Context context, int iconPixelSize) { + super(context, LauncherFiles.APP_ICONS_DB, + (RELEASE_VERSION << 16) + iconPixelSize, + TABLE_NAME); } @Override