summaryrefslogtreecommitdiffstats
path: root/tools/layoutlib/bridge
diff options
context:
space:
mode:
authorDeepanshu Gupta <deepanshu@google.com>2015-05-20 18:25:58 -0700
committerDeepanshu Gupta <deepanshu@google.com>2015-05-20 18:49:56 -0700
commit4d8e078c7c9c9f8407ebc7e88673e53b67723e18 (patch)
tree84a06f7e7099c7da2053f42e1dc9cfc4f0d228f6 /tools/layoutlib/bridge
parentd5b82845450beac2d3c7db9cd80e9fc34d43a297 (diff)
downloadframeworks_base-4d8e078c7c9c9f8407ebc7e88673e53b67723e18.zip
frameworks_base-4d8e078c7c9c9f8407ebc7e88673e53b67723e18.tar.gz
frameworks_base-4d8e078c7c9c9f8407ebc7e88673e53b67723e18.tar.bz2
Fix overrides for BridgeResources.
New method overloads have been introduces in android.content.Resources. Change BridgeResources to overrides the appropriate ones. Also, fix the implementation to the new behaviour. Change-Id: I7b83b329f04286512f223c0fafc3f989f1b9a244
Diffstat (limited to 'tools/layoutlib/bridge')
-rw-r--r--tools/layoutlib/bridge/src/android/content/res/BridgeResources.java15
1 files changed, 7 insertions, 8 deletions
diff --git a/tools/layoutlib/bridge/src/android/content/res/BridgeResources.java b/tools/layoutlib/bridge/src/android/content/res/BridgeResources.java
index 2c2c672..fdb6e75 100644
--- a/tools/layoutlib/bridge/src/android/content/res/BridgeResources.java
+++ b/tools/layoutlib/bridge/src/android/content/res/BridgeResources.java
@@ -169,7 +169,7 @@ public final class BridgeResources extends Resources {
}
@Override
- public int getColor(int id) throws NotFoundException {
+ public int getColor(int id, Theme theme) throws NotFoundException {
Pair<String, ResourceValue> value = getResourceValue(id, mPlatformResourceFlag);
if (value != null) {
@@ -192,22 +192,21 @@ public final class BridgeResources extends Resources {
}
}
- // id was not found or not resolved. Throw a NotFoundException.
- throwException(id);
-
- // this is not used since the method above always throws
- return 0;
+ // Suppress possible NPE. getColorStateList will never return null, it will instead
+ // throw an exception, but intelliJ can't figure that out
+ //noinspection ConstantConditions
+ return getColorStateList(id, theme).getDefaultColor();
}
@Override
- public ColorStateList getColorStateList(int id) throws NotFoundException {
+ public ColorStateList getColorStateList(int id, Theme theme) throws NotFoundException {
Pair<String, ResourceValue> resValue = getResourceValue(id, mPlatformResourceFlag);
if (resValue != null) {
ColorStateList stateList = ResourceHelper.getColorStateList(resValue.getSecond(),
mContext);
if (stateList != null) {
- return stateList;
+ return stateList.obtainForTheme(theme);
}
}