summaryrefslogtreecommitdiffstats
path: root/core/java/android/content/res
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android/content/res')
-rw-r--r--core/java/android/content/res/ResourcesKey.java15
-rw-r--r--core/java/android/content/res/ThemeConfig.java1
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;