diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/types/FormattedSection.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/types/FormattedSection.java index 859fcff378c..f553b0433ac 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/types/FormattedSection.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/types/FormattedSection.java @@ -184,8 +184,7 @@ public void setTextColor(@ColorInt int textColor) { void setTextColor(@NonNull Object textColor) { // called from JNI - // because core is returning R, G and B components in range of 0 to 1, we need to convert them to be in 0 to 255. - setTextColor(ColorUtils.colorToRgbaString(ColorUtils.rgbaToColor((String) textColor))); + setTextColor((String) textColor); } @Override diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/ColorUtils.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/ColorUtils.java index 0c5786fda48..ab3d68547e2 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/ColorUtils.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/ColorUtils.java @@ -10,6 +10,7 @@ import android.support.v4.widget.ImageViewCompat; import android.util.TypedValue; import android.widget.ImageView; + import com.mapbox.mapboxsdk.R; import com.mapbox.mapboxsdk.exceptions.ConversionException; @@ -111,12 +112,11 @@ public static void setTintList(@NonNull ImageView imageView, @ColorInt int tintC ImageViewCompat.setImageTintList(imageView, getSelector(tintColor)); } - private static int normalizeColorComponent(String value) { - return (int) (Float.parseFloat(value) * 255); - } - /** * Convert an rgba string to a Color int. + *
+ * R, G, B color components have to be in the [0-255] range, while alpha has to be in the [0.0-1.0] range.
+ * For example: "rgba(255, 128, 0, 0.7)".
*
* @param value the String representation of rgba
* @return the int representation of rgba
@@ -124,15 +124,14 @@ private static int normalizeColorComponent(String value) {
*/
@ColorInt
public static int rgbaToColor(@NonNull String value) {
- Pattern c = Pattern.compile("rgba?\\s*\\(\\s*(\\d+\\.?\\d*)\\s*,\\s*(\\d+\\.?\\d*)\\s*,\\s*(\\d+\\.?\\d*)\\s*,"
- + "?\\s*(\\d+\\.?\\d*)?\\s*\\)");
+ Pattern c = Pattern.compile("rgba?\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,?\\s*(\\d+\\.?\\d*)?\\s*\\)");
Matcher m = c.matcher(value);
if (m.matches() && m.groupCount() == 3) {
- return Color.rgb(normalizeColorComponent(m.group(1)), normalizeColorComponent(m.group(2)),
- normalizeColorComponent(m.group(3)));
+ return Color.rgb(Integer.parseInt(m.group(1)), Integer.parseInt(m.group(2)),
+ Integer.parseInt(m.group(3)));
} else if (m.matches() && m.groupCount() == 4) {
- return Color.argb(normalizeColorComponent(m.group(4)), normalizeColorComponent(m.group(1)),
- normalizeColorComponent(m.group(2)), normalizeColorComponent(m.group(3)));
+ return Color.argb((int) (Float.parseFloat(m.group(4)) * 255), Integer.parseInt(m.group(1)),
+ Integer.parseInt(m.group(2)), Integer.parseInt(m.group(3)));
} else {
throw new ConversionException("Not a valid rgb/rgba value");
}
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/BackgroundLayerTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/BackgroundLayerTest.java
index 3cce0ee867a..d3edfb852d6 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/BackgroundLayerTest.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/BackgroundLayerTest.java
@@ -73,7 +73,7 @@ public void testBackgroundColorAsConstant() {
assertNull(layer.getBackgroundColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(backgroundColor(propertyValue));
assertEquals(layer.getBackgroundColor().getValue(), propertyValue);
}
@@ -85,8 +85,8 @@ public void testBackgroundColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(backgroundColor(Color.RED));
- assertEquals(layer.getBackgroundColorAsInt(), Color.RED);
+ layer.setProperties(backgroundColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getBackgroundColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/CircleLayerTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/CircleLayerTest.java
index bf8b8ef2b2b..146cfc2209d 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/CircleLayerTest.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/CircleLayerTest.java
@@ -157,7 +157,7 @@ public void testCircleColorAsConstant() {
assertNull(layer.getCircleColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(circleColor(propertyValue));
assertEquals(layer.getCircleColor().getValue(), propertyValue);
}
@@ -182,8 +182,8 @@ public void testCircleColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(circleColor(Color.RED));
- assertEquals(layer.getCircleColorAsInt(), Color.RED);
+ layer.setProperties(circleColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getCircleColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
@@ -384,7 +384,7 @@ public void testCircleStrokeColorAsConstant() {
assertNull(layer.getCircleStrokeColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(circleStrokeColor(propertyValue));
assertEquals(layer.getCircleStrokeColor().getValue(), propertyValue);
}
@@ -409,8 +409,8 @@ public void testCircleStrokeColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(circleStrokeColor(Color.RED));
- assertEquals(layer.getCircleStrokeColorAsInt(), Color.RED);
+ layer.setProperties(circleStrokeColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getCircleStrokeColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/ExpressionTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/ExpressionTest.java
index ff3b2a9d6dc..fbb866ddff4 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/ExpressionTest.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/ExpressionTest.java
@@ -378,7 +378,7 @@ public void testConstFormatExpressionTextColorParam() {
);
assertNull(layer.getTextField().getExpression());
assertEquals(new Formatted(
- new FormattedSection("test", null, null, "rgba(255, 255, 0, 1)")
+ new FormattedSection("test", null, null, "rgba(255,255,0,1)")
), layer.getTextField().getValue());
});
}
@@ -398,7 +398,7 @@ public void testConstFormatExpressionAllParams() {
"test",
formatFontScale(0.5),
formatTextFont(new String[] {"DIN Offc Pro Regular", "Arial Unicode MS Regular"}),
- formatTextColor(rgb(126.7, 0, 0))
+ formatTextColor(rgb(126, 0, 0))
)
);
layer.setProperties(textField(expression));
@@ -412,7 +412,7 @@ public void testConstFormatExpressionAllParams() {
new FormattedSection("test",
0.5,
new String[] {"DIN Offc Pro Regular", "Arial Unicode MS Regular"},
- "rgba(126, 0, 0, 1)")
+ "rgba(126,0,0,1)")
), layer.getTextField().getValue());
});
}
@@ -433,7 +433,8 @@ public void testConstFormatExpressionMultipleInputs() {
formatFontScale(1.5),
formatTextFont(new String[] {"DIN Offc Pro Regular", "Arial Unicode MS Regular"})
),
- formatEntry("\ntest2", formatFontScale(2), formatTextColor(Color.BLUE))
+ formatEntry("\ntest2", formatFontScale(2), formatTextColor(Color.BLUE)),
+ formatEntry("\ntest3", formatFontScale(2.5), formatTextColor(toColor(literal("rgba(0, 128, 255, 0.5)"))))
);
layer.setProperties(textField(expression));
TestingAsyncUtils.INSTANCE.waitForLayer(uiController, mapView);
@@ -445,7 +446,8 @@ public void testConstFormatExpressionMultipleInputs() {
assertEquals(new Formatted(
new FormattedSection("test", 1.5,
new String[] {"DIN Offc Pro Regular", "Arial Unicode MS Regular"}),
- new FormattedSection("\ntest2", 2.0, null, "rgba(0, 0, 255, 1)")
+ new FormattedSection("\ntest2", 2.0, null, "rgba(0,0,255,1)"),
+ new FormattedSection("\ntest3", 2.5, null, "rgba(0,128,255,0.5)")
), layer.getTextField().getValue());
});
}
@@ -547,9 +549,9 @@ public void testTextFieldFormattedArgument() {
Formatted formatted = new Formatted(
new FormattedSection("test", 1.5),
new FormattedSection("\ntest", 0.5, new String[] {"Arial Unicode MS Regular", "DIN Offc Pro Regular"}),
- new FormattedSection("test", null, null, "rgba(0, 255, 0, 1)")
+ new FormattedSection("test", null, null, "rgba(0,255,0,1)")
);
- layer.setProperties(textField(formatted), textColor("rgba(128, 0, 0, 1)"));
+ layer.setProperties(textField(formatted), textColor("rgba(128,0,0,1)"));
TestingAsyncUtils.INSTANCE.waitForLayer(uiController, mapView);
assertFalse(mapboxMap.queryRenderedFeatures(mapboxMap.getProjection().toScreenLocation(latLng), "layer")
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/FillExtrusionLayerTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/FillExtrusionLayerTest.java
index 7a6ebb7ac6c..cdfd030f9b5 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/FillExtrusionLayerTest.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/FillExtrusionLayerTest.java
@@ -144,7 +144,7 @@ public void testFillExtrusionColorAsConstant() {
assertNull(layer.getFillExtrusionColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(fillExtrusionColor(propertyValue));
assertEquals(layer.getFillExtrusionColor().getValue(), propertyValue);
}
@@ -169,8 +169,8 @@ public void testFillExtrusionColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(fillExtrusionColor(Color.RED));
- assertEquals(layer.getFillExtrusionColorAsInt(), Color.RED);
+ layer.setProperties(fillExtrusionColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getFillExtrusionColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/FillLayerTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/FillLayerTest.java
index dce5633fc8e..f6e3cc8548a 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/FillLayerTest.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/FillLayerTest.java
@@ -170,7 +170,7 @@ public void testFillColorAsConstant() {
assertNull(layer.getFillColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(fillColor(propertyValue));
assertEquals(layer.getFillColor().getValue(), propertyValue);
}
@@ -195,8 +195,8 @@ public void testFillColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(fillColor(Color.RED));
- assertEquals(layer.getFillColorAsInt(), Color.RED);
+ layer.setProperties(fillColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getFillColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
@@ -219,7 +219,7 @@ public void testFillOutlineColorAsConstant() {
assertNull(layer.getFillOutlineColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(fillOutlineColor(propertyValue));
assertEquals(layer.getFillOutlineColor().getValue(), propertyValue);
}
@@ -244,8 +244,8 @@ public void testFillOutlineColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(fillOutlineColor(Color.RED));
- assertEquals(layer.getFillOutlineColorAsInt(), Color.RED);
+ layer.setProperties(fillOutlineColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getFillOutlineColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/HillshadeLayerTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/HillshadeLayerTest.java
index a01d562cf93..694348b8882 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/HillshadeLayerTest.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/HillshadeLayerTest.java
@@ -133,7 +133,7 @@ public void testHillshadeShadowColorAsConstant() {
assertNull(layer.getHillshadeShadowColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(hillshadeShadowColor(propertyValue));
assertEquals(layer.getHillshadeShadowColor().getValue(), propertyValue);
}
@@ -145,8 +145,8 @@ public void testHillshadeShadowColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(hillshadeShadowColor(Color.RED));
- assertEquals(layer.getHillshadeShadowColorAsInt(), Color.RED);
+ layer.setProperties(hillshadeShadowColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getHillshadeShadowColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
@@ -169,7 +169,7 @@ public void testHillshadeHighlightColorAsConstant() {
assertNull(layer.getHillshadeHighlightColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(hillshadeHighlightColor(propertyValue));
assertEquals(layer.getHillshadeHighlightColor().getValue(), propertyValue);
}
@@ -181,8 +181,8 @@ public void testHillshadeHighlightColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(hillshadeHighlightColor(Color.RED));
- assertEquals(layer.getHillshadeHighlightColorAsInt(), Color.RED);
+ layer.setProperties(hillshadeHighlightColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getHillshadeHighlightColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
@@ -205,7 +205,7 @@ public void testHillshadeAccentColorAsConstant() {
assertNull(layer.getHillshadeAccentColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(hillshadeAccentColor(propertyValue));
assertEquals(layer.getHillshadeAccentColor().getValue(), propertyValue);
}
@@ -217,7 +217,7 @@ public void testHillshadeAccentColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(hillshadeAccentColor(Color.RED));
- assertEquals(layer.getHillshadeAccentColorAsInt(), Color.RED);
+ layer.setProperties(hillshadeAccentColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getHillshadeAccentColorAsInt(), Color.argb(127, 255, 127, 0));
}
}
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/LightTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/LightTest.java
index c5ad242b90d..b78a2d26e5d 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/LightTest.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/LightTest.java
@@ -103,8 +103,8 @@ public void testColor() {
invoke(mapboxMap, (uiController, mapboxMap) -> {
assertNotNull(light);
// Set and Get
- light.setColor("rgba(0, 0, 0, 1)");
- assertEquals("Color should match", "rgba(0, 0, 0, 1)".replaceAll("\\s+", ""), light.getColor());
+ light.setColor("rgba(255,128,0,0.7)");
+ assertEquals("Color should match", "rgba(255,128,0,0.7)", light.getColor());
});
}
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/LineLayerTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/LineLayerTest.java
index 06802cd9b55..5e00890f7f7 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/LineLayerTest.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/LineLayerTest.java
@@ -222,7 +222,7 @@ public void testLineColorAsConstant() {
assertNull(layer.getLineColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(lineColor(propertyValue));
assertEquals(layer.getLineColor().getValue(), propertyValue);
}
@@ -247,8 +247,8 @@ public void testLineColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(lineColor(Color.RED));
- assertEquals(layer.getLineColorAsInt(), Color.RED);
+ layer.setProperties(lineColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getLineColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/SymbolLayerTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/SymbolLayerTest.java
index 4674c9ffb12..60e305d6078 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/SymbolLayerTest.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/SymbolLayerTest.java
@@ -856,7 +856,7 @@ public void testIconColorAsConstant() {
assertNull(layer.getIconColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(iconColor(propertyValue));
assertEquals(layer.getIconColor().getValue(), propertyValue);
}
@@ -881,8 +881,8 @@ public void testIconColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(iconColor(Color.RED));
- assertEquals(layer.getIconColorAsInt(), Color.RED);
+ layer.setProperties(iconColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getIconColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
@@ -905,7 +905,7 @@ public void testIconHaloColorAsConstant() {
assertNull(layer.getIconHaloColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(iconHaloColor(propertyValue));
assertEquals(layer.getIconHaloColor().getValue(), propertyValue);
}
@@ -930,8 +930,8 @@ public void testIconHaloColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(iconHaloColor(Color.RED));
- assertEquals(layer.getIconHaloColorAsInt(), Color.RED);
+ layer.setProperties(iconHaloColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getIconHaloColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
@@ -1106,7 +1106,7 @@ public void testTextColorAsConstant() {
assertNull(layer.getTextColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(textColor(propertyValue));
assertEquals(layer.getTextColor().getValue(), propertyValue);
}
@@ -1131,8 +1131,8 @@ public void testTextColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(textColor(Color.RED));
- assertEquals(layer.getTextColorAsInt(), Color.RED);
+ layer.setProperties(textColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getTextColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
@@ -1155,7 +1155,7 @@ public void testTextHaloColorAsConstant() {
assertNull(layer.getTextHaloColor().getValue());
// Set and Get
- String propertyValue = "rgba(0, 0, 0, 1)";
+ String propertyValue = "rgba(255,128,0,0.7)";
layer.setProperties(textHaloColor(propertyValue));
assertEquals(layer.getTextHaloColor().getValue(), propertyValue);
}
@@ -1180,8 +1180,8 @@ public void testTextHaloColorAsIntConstant() {
assertNotNull(layer);
// Set and Get
- layer.setProperties(textHaloColor(Color.RED));
- assertEquals(layer.getTextHaloColorAsInt(), Color.RED);
+ layer.setProperties(textHaloColor(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.getTextHaloColorAsInt(), Color.argb(127, 255, 127, 0));
}
@Test
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/layer.junit.ejs b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/layer.junit.ejs
index a7b5ffeb086..1104cbed9dd 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/layer.junit.ejs
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/layer.junit.ejs
@@ -186,8 +186,8 @@ public class <%- camelize(type) %>LayerTest extends BaseLayerTest {
assertNotNull(layer);
// Set and Get
- layer.setProperties(<%- camelizeWithLeadingLowercase(property.name) %>(Color.RED));
- assertEquals(layer.get<%- camelize(property.name) %>AsInt(), Color.RED);
+ layer.setProperties(<%- camelizeWithLeadingLowercase(property.name) %>(Color.argb(127, 255, 127, 0)));
+ assertEquals(layer.get<%- camelize(property.name) %>AsInt(), Color.argb(127, 255, 127, 0));
}
<% } -%>
<% } -%>
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/light.junit.ejs b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/light.junit.ejs
index 18ae94cc3e4..9bc77b202b8 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/light.junit.ejs
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/light.junit.ejs
@@ -86,7 +86,7 @@ public class LightTest extends BaseTest {
// Set and Get
light.set<%- camelize(property.name) %>(<%- defaultValueJava(property) %>);
<% if (property.name == 'color') { -%>
- assertEquals("<%- camelize(property.name) %> should match", <%- defaultValueJava(property) %>.replaceAll("\\s+", ""), light.get<%- camelize(property.name) %>());
+ assertEquals("<%- camelize(property.name) %> should match", <%- defaultValueJava(property) %>, light.get<%- camelize(property.name) %>());
<% } else { -%>
assertEquals("<%- camelize(property.name) %> should match", <%- defaultValueJava(property) %>, light.get<%- camelize(property.name) %>());
<% } -%>
diff --git a/platform/android/scripts/generate-style-code.js b/platform/android/scripts/generate-style-code.js
index 688a3aa5273..98a18120fcd 100755
--- a/platform/android/scripts/generate-style-code.js
+++ b/platform/android/scripts/generate-style-code.js
@@ -193,7 +193,7 @@ global.defaultValueJava = function(property) {
case 'enum':
return snakeCaseUpper(property.name) + "_" + snakeCaseUpper(Object.keys(property.values)[0]);
case 'color':
- return '"rgba(0, 0, 0, 1)"';
+ return '"rgba(255,128,0,0.7)"';
case 'array':
switch (property.value) {
case 'string':
diff --git a/platform/android/src/conversion/constant.cpp b/platform/android/src/conversion/constant.cpp
index 0671fa6a325..a409e5dfdfc 100644
--- a/platform/android/src/conversion/constant.cpp
+++ b/platform/android/src/conversion/constant.cpp
@@ -25,18 +25,7 @@ Result