diff options
Diffstat (limited to 'core/java/android/content/res')
| -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; |
