am e5d3baf2: LayoutLib: Fix bitmap scaling.

* commit 'e5d3baf22f046d0a579128fc258f6b92e700ca02':
  LayoutLib: Fix bitmap scaling.
This commit is contained in:
Deepanshu Gupta
2015-10-05 23:22:18 +00:00
committed by Android Git Automerger
2 changed files with 8 additions and 1 deletions

View File

@@ -18,6 +18,7 @@ package android.content.res;
import com.android.SdkConstants; import com.android.SdkConstants;
import com.android.ide.common.rendering.api.ArrayResourceValue; import com.android.ide.common.rendering.api.ArrayResourceValue;
import com.android.ide.common.rendering.api.DensityBasedResourceValue;
import com.android.ide.common.rendering.api.LayoutLog; import com.android.ide.common.rendering.api.LayoutLog;
import com.android.ide.common.rendering.api.LayoutlibCallback; import com.android.ide.common.rendering.api.LayoutlibCallback;
import com.android.ide.common.rendering.api.ResourceValue; import com.android.ide.common.rendering.api.ResourceValue;
@@ -661,13 +662,18 @@ public final class BridgeResources extends Resources {
Pair<String, ResourceValue> value = getResourceValue(id, mPlatformResourceFlag); Pair<String, ResourceValue> value = getResourceValue(id, mPlatformResourceFlag);
if (value != null) { if (value != null) {
String v = value.getSecond().getValue(); ResourceValue resVal = value.getSecond();
String v = resVal.getValue();
if (v != null) { if (v != null) {
if (ResourceHelper.parseFloatAttribute(value.getFirst(), v, outValue, if (ResourceHelper.parseFloatAttribute(value.getFirst(), v, outValue,
false /*requireUnit*/)) { false /*requireUnit*/)) {
return; return;
} }
if (resVal instanceof DensityBasedResourceValue) {
outValue.density =
((DensityBasedResourceValue) resVal).getResourceDensity().getDpiValue();
}
// else it's a string // else it's a string
outValue.type = TypedValue.TYPE_STRING; outValue.type = TypedValue.TYPE_STRING;

View File

@@ -59,6 +59,7 @@ import java.util.Set;
if (opts.inPremultiplied) { if (opts.inPremultiplied) {
bitmapCreateFlags.add(BitmapCreateFlags.PREMULTIPLIED); bitmapCreateFlags.add(BitmapCreateFlags.PREMULTIPLIED);
} }
opts.inScaled = false;
} }
try { try {