diff options
author | Roman Birg <roman@cyngn.com> | 2015-09-17 17:43:11 -0700 |
---|---|---|
committer | Clark Scheff <clark@cyngn.com> | 2015-10-27 18:28:42 -0700 |
commit | 723714ed1dd57b4dc1bfd27061cbaa4218710ddf (patch) | |
tree | 6f860786a3e5861ba0ba3a0f81f991384da37b2b /core/java/android/content | |
parent | 690777ee7c2ddceb76034cfdf0416fdfdfa67251 (diff) | |
download | frameworks_base-723714ed1dd57b4dc1bfd27061cbaa4218710ddf.zip frameworks_base-723714ed1dd57b4dc1bfd27061cbaa4218710ddf.tar.gz frameworks_base-723714ed1dd57b4dc1bfd27061cbaa4218710ddf.tar.bz2 |
Resources: cache themed resources
Change-Id: I408665180d19eb422386fc69bc9afa4bbe0d05d6
Signed-off-by: Roman Birg <roman@cyngn.com>
Diffstat (limited to 'core/java/android/content')
-rw-r--r-- | core/java/android/content/res/ResourcesKey.java | 15 | ||||
-rw-r--r-- | core/java/android/content/res/ThemeConfig.java | 1 |
2 files changed, 15 insertions, 1 deletions
diff --git a/core/java/android/content/res/ResourcesKey.java b/core/java/android/content/res/ResourcesKey.java index 466d810..6cbf1d7 100644 --- a/core/java/android/content/res/ResourcesKey.java +++ b/core/java/android/content/res/ResourcesKey.java @@ -26,6 +26,7 @@ public final class ResourcesKey { private final float mScale; private final boolean mIsThemeable; private final int mHash; + private final ThemeConfig mThemeConfig; public final int mDisplayId; @NonNull @@ -39,6 +40,7 @@ public final class ResourcesKey { ? overrideConfiguration : Configuration.EMPTY; mScale = scale; mIsThemeable = isThemeable; + mThemeConfig = themeConfig; int hash = 17; hash = 31 * hash + (mResDir == null ? 0 : mResDir.hashCode()); @@ -78,7 +80,18 @@ public final class ResourcesKey { if (mScale != peer.mScale) { return false; } - return mIsThemeable == peer.mIsThemeable; + if (mIsThemeable != peer.mIsThemeable) { + return false; + } + if (mThemeConfig != peer.mThemeConfig) { + if (mThemeConfig == null || peer.mThemeConfig == null) { + return false; + } + if (!mThemeConfig.equals(peer.mThemeConfig)) { + return false; + } + } + return true; } @Override diff --git a/core/java/android/content/res/ThemeConfig.java b/core/java/android/content/res/ThemeConfig.java index 1791a72..602ef0a 100644 --- a/core/java/android/content/res/ThemeConfig.java +++ b/core/java/android/content/res/ThemeConfig.java @@ -20,6 +20,7 @@ import android.content.ContentResolver; import android.content.res.ThemeChangeRequest.RequestType; import android.os.Parcel; import android.os.Parcelable; +import android.os.UserHandle; import android.provider.Settings; import android.text.TextUtils; import android.util.JsonReader; |