summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--android/src/com/android/tools/idea/javadoc/AndroidJavaDocRenderer.java9
-rw-r--r--android/src/com/android/tools/idea/rendering/ResourceHelper.java3
-rw-r--r--android/testData/themeEditor/tooltipDocAns/myStyle.ans2
-rw-r--r--android/testSrc/com/android/tools/idea/editors/theme/ThemeEditorUtilsTest.java16
4 files changed, 13 insertions, 17 deletions
diff --git a/android/src/com/android/tools/idea/javadoc/AndroidJavaDocRenderer.java b/android/src/com/android/tools/idea/javadoc/AndroidJavaDocRenderer.java
index 03ef00b0bc7..96da5d8f356 100644
--- a/android/src/com/android/tools/idea/javadoc/AndroidJavaDocRenderer.java
+++ b/android/src/com/android/tools/idea/javadoc/AndroidJavaDocRenderer.java
@@ -1012,14 +1012,7 @@ public class AndroidJavaDocRenderer {
// vertical-align:middle on divs)
builder.addHtml("<table style=\"" + css + "\" border=\"0\"><tr height=\"" + height + "\">");
builder.addHtml("<td align=\"center\" valign=\"middle\" height=\"" + height + "\" style=\"color:" + foregroundColor + "\">");
- builder.addHtml("#");
- int alpha = color.getAlpha();
- // If not opaque, include alpha
- if (alpha != 255) {
- String alphaString = Integer.toHexString(alpha);
- builder.addHtml((alphaString.length() < 2 ? "0" : "") + alphaString);
- }
- builder.addHtml(ColorUtil.toHex(color));
+ builder.addHtml(ResourceHelper.colorToString(color));
builder.addHtml("</td></tr></table>");
}
}
diff --git a/android/src/com/android/tools/idea/rendering/ResourceHelper.java b/android/src/com/android/tools/idea/rendering/ResourceHelper.java
index 81ff2cf4abe..36cd9e62b25 100644
--- a/android/src/com/android/tools/idea/rendering/ResourceHelper.java
+++ b/android/src/com/android/tools/idea/rendering/ResourceHelper.java
@@ -362,7 +362,10 @@ public class ResourceHelper {
StateList stateList = resolveStateList(resources, colorValue, project);
if (stateList != null) {
List<StateListState> states = stateList.getStates();
+
+ // Getting the last color of the state list, because it's supposed to be the simplest / fallback one
StateListState state = states.get(states.size() - 1);
+
Color stateColor = parseColor(state.getValue());
if (stateColor == null) {
stateColor = resolveColor(resources, resources.findResValue(state.getValue(), false), project);
diff --git a/android/testData/themeEditor/tooltipDocAns/myStyle.ans b/android/testData/themeEditor/tooltipDocAns/myStyle.ans
index 497d226654a..abc9a07c77e 100644
--- a/android/testData/themeEditor/tooltipDocAns/myStyle.ans
+++ b/android/testData/themeEditor/tooltipDocAns/myStyle.ans
@@ -3,7 +3,7 @@
<BR/>
<hr><B>Widget.Button</B>:<BR/>
&nbsp;&nbsp;&nbsp;&nbsp;android:<B>textColor</B> = @color/primary_text_light<BR/>
-<table style="background-color:rgb(0,0,0);width:66px;text-align:center;vertical-align:middle;" border="0"><tr height="33"><td align="center" valign="middle" height="33" style="color:white">#80000000</td></tr></table>&nbsp;&nbsp;&nbsp;&nbsp;android:<B>focusable</B> = true<BR/>
+<table style="background-color:rgb(0,0,0);width:66px;text-align:center;vertical-align:middle;" border="0"><tr height="33"><td align="center" valign="middle" height="33" style="color:white">#000000</td></tr></table>&nbsp;&nbsp;&nbsp;&nbsp;android:<B>focusable</B> = true<BR/>
&nbsp;&nbsp;&nbsp;&nbsp;android:<B>background</B> = @drawable/btn_default<BR/>
&nbsp;&nbsp;&nbsp;&nbsp;android:<B>gravity</B> = center_vertical|center_horizontal<BR/>
&nbsp;&nbsp;&nbsp;&nbsp;android:<B>textAppearance</B> = ?attr/textAppearanceSmallInverse => @style/TextAppearance.Small.Inverse<BR/>
diff --git a/android/testSrc/com/android/tools/idea/editors/theme/ThemeEditorUtilsTest.java b/android/testSrc/com/android/tools/idea/editors/theme/ThemeEditorUtilsTest.java
index 173139e5ff5..45f2dd6ed7d 100644
--- a/android/testSrc/com/android/tools/idea/editors/theme/ThemeEditorUtilsTest.java
+++ b/android/testSrc/com/android/tools/idea/editors/theme/ThemeEditorUtilsTest.java
@@ -60,15 +60,15 @@ public class ThemeEditorUtilsTest extends AndroidTestCase {
super(false);
}
- private void compareWithAns(String doc, String ansPath) throws IOException {
- assertNotNull(doc);
+ private void compareWithGoldenFile(@NotNull String text, @NotNull String goldenFile) throws IOException {
+ final File file = new File(goldenFile);
+ String goldenText = String.format(FileUtils.readFileToString(file), sdkPlatformPath).trim();
- String ansDoc = String.format(FileUtils.readFileToString(new File(ansPath)), sdkPlatformPath);
+ // Add line breaks after "<BR/>" tags for results that are easier to read.
+ // Golden files are already have these line breaks, so there's no need to process them the same way.
+ text = StringUtil.replace(text, "<BR/>", "<BR/>\n");
- doc = StringUtil.replace(doc, "\n", "");
- ansDoc = StringUtil.replace(ansDoc, "\n", "");
-
- assertEquals(ansDoc, doc);
+ assertEquals(String.format("Comparing to golden file %s failed", file.getCanonicalPath()), goldenText, text);
}
public void testGenerateToolTipText() throws IOException {
@@ -91,7 +91,7 @@ public class ThemeEditorUtilsTest extends AndroidTestCase {
for (EditedStyleItem item : values) {
String doc = ThemeEditorUtils.generateToolTipText(item.getSelectedValue(), myModule, configuration);
- compareWithAns(doc, myFixture.getTestDataPath() + "/themeEditor/tooltipDocAns/" + item.getName() + ".ans");
+ compareWithGoldenFile(doc, myFixture.getTestDataPath() + "/themeEditor/tooltipDocAns/" + item.getName() + ".ans");
}
}