Rollback Issue 1442804. Causes build breakage.
Review at http://gwt-code-reviews.appspot.com/1447808
git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@10213 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/uibinder/UiBinder.gwt.xml b/user/src/com/google/gwt/uibinder/UiBinder.gwt.xml
index 3559f99..50cbc5b 100644
--- a/user/src/com/google/gwt/uibinder/UiBinder.gwt.xml
+++ b/user/src/com/google/gwt/uibinder/UiBinder.gwt.xml
@@ -34,10 +34,6 @@
<set-configuration-property name="UiBinder.useLazyWidgetBuilders" value="false"/>
<generate-with class="com.google.gwt.uibinder.rebind.UiBinderGenerator">
- <when-type-assignable class="com.google.gwt.text.shared.SafeHtmlRenderer"/>
- </generate-with>
-
- <generate-with class="com.google.gwt.uibinder.rebind.UiBinderGenerator">
<when-type-assignable class="com.google.gwt.uibinder.client.UiBinder"/>
</generate-with>
</module>
diff --git a/user/src/com/google/gwt/uibinder/elementparsers/AttachableHTMLPanelParser.java b/user/src/com/google/gwt/uibinder/elementparsers/AttachableHTMLPanelParser.java
index aaef6a0..4a640d8 100644
--- a/user/src/com/google/gwt/uibinder/elementparsers/AttachableHTMLPanelParser.java
+++ b/user/src/com/google/gwt/uibinder/elementparsers/AttachableHTMLPanelParser.java
@@ -77,7 +77,7 @@
"AttachableHTMLPanel does not support custom root elements yet.");
}
- writer.setFieldInitializerAsConstructor(fieldName, type, writer.declareTemplateCall(html, fieldName));
+ writer.setFieldInitializerAsConstructor(fieldName, type, writer.declareTemplateCall(html));
}
/**
diff --git a/user/src/com/google/gwt/uibinder/elementparsers/CustomButtonParser.java b/user/src/com/google/gwt/uibinder/elementparsers/CustomButtonParser.java
index 7dfe858..bb7d54b 100644
--- a/user/src/com/google/gwt/uibinder/elementparsers/CustomButtonParser.java
+++ b/user/src/com/google/gwt/uibinder/elementparsers/CustomButtonParser.java
@@ -69,8 +69,7 @@
String innerHtml = child.consumeInnerHtml(interpreter);
if (innerHtml.length() > 0) {
writer.addStatement("%s.%s().setHTML(%s);", fieldName,
- faceNameGetter(faceName), writer.declareTemplateCall(innerHtml,
- fieldName));
+ faceNameGetter(faceName), writer.declareTemplateCall(innerHtml));
}
if (child.hasAttribute("image")) {
diff --git a/user/src/com/google/gwt/uibinder/elementparsers/DialogBoxParser.java b/user/src/com/google/gwt/uibinder/elementparsers/DialogBoxParser.java
index 211aa80..7f764de 100644
--- a/user/src/com/google/gwt/uibinder/elementparsers/DialogBoxParser.java
+++ b/user/src/com/google/gwt/uibinder/elementparsers/DialogBoxParser.java
@@ -77,8 +77,7 @@
handleConstructorArgs(elem, fieldName, type, writer, customCaption);
if (caption != null) {
- writer.addStatement("%s.setHTML(%s);", fieldName,
- writer.declareTemplateCall(caption, fieldName));
+ writer.addStatement("%s.setHTML(%s);", fieldName, writer.declareTemplateCall(caption));
}
if (body != null) {
writer.addStatement("%s.setWidget(%s);", fieldName, body);
diff --git a/user/src/com/google/gwt/uibinder/elementparsers/DomElementParser.java b/user/src/com/google/gwt/uibinder/elementparsers/DomElementParser.java
index 3428485..ee40b47 100644
--- a/user/src/com/google/gwt/uibinder/elementparsers/DomElementParser.java
+++ b/user/src/com/google/gwt/uibinder/elementparsers/DomElementParser.java
@@ -42,6 +42,6 @@
writer.setFieldInitializer(fieldName, String.format(
"(%1$s) UiBinderUtil.fromHtml(%2$s)",
- type.getQualifiedSourceName(), writer.declareTemplateCall(html, fieldName)));
+ type.getQualifiedSourceName(), writer.declareTemplateCall(html)));
}
}
diff --git a/user/src/com/google/gwt/uibinder/elementparsers/GridParser.java b/user/src/com/google/gwt/uibinder/elementparsers/GridParser.java
index 37d94ba..ae4c658 100644
--- a/user/src/com/google/gwt/uibinder/elementparsers/GridParser.java
+++ b/user/src/com/google/gwt/uibinder/elementparsers/GridParser.java
@@ -128,7 +128,7 @@
writer.addStatement("%s.setHTML(%s, %s, %s);", fieldName,
Integer.toString(matrix.indexOf(row)),
Integer.toString(row.getColumns().indexOf(column)),
- writer.declareTemplateCall(column.getContent(), fieldName));
+ writer.declareTemplateCall(column.getContent()));
}
if (column.getTagName().equals(CUSTOMCELL_TAG)) {
writer.addStatement("%s.setWidget(%s, %s, %s);", fieldName,
diff --git a/user/src/com/google/gwt/uibinder/elementparsers/HTMLPanelParser.java b/user/src/com/google/gwt/uibinder/elementparsers/HTMLPanelParser.java
index c093680..83d5d40 100644
--- a/user/src/com/google/gwt/uibinder/elementparsers/HTMLPanelParser.java
+++ b/user/src/com/google/gwt/uibinder/elementparsers/HTMLPanelParser.java
@@ -59,11 +59,10 @@
String customTag = elem.consumeStringAttribute("tag", null);
if (null == customTag) {
- writer.setFieldInitializerAsConstructor(fieldName, type,
- writer.declareTemplateCall(html, fieldName));
+ writer.setFieldInitializerAsConstructor(fieldName, type, writer.declareTemplateCall(html));
} else {
writer.setFieldInitializerAsConstructor(fieldName, type, customTag,
- writer.declareTemplateCall(html, fieldName));
+ writer.declareTemplateCall(html));
}
}
diff --git a/user/src/com/google/gwt/uibinder/elementparsers/HasHTMLParser.java b/user/src/com/google/gwt/uibinder/elementparsers/HasHTMLParser.java
index cfdf40f..bcc24bf 100644
--- a/user/src/com/google/gwt/uibinder/elementparsers/HasHTMLParser.java
+++ b/user/src/com/google/gwt/uibinder/elementparsers/HasHTMLParser.java
@@ -35,8 +35,7 @@
writer.endAttachedSection();
// TODO(jgw): throw an error if there's a conflicting 'html' attribute.
if (html.trim().length() > 0) {
- writer.genPropertySet(fieldName, "HTML", writer.declareTemplateCall(html,
- fieldName));
+ writer.genPropertySet(fieldName, "HTML", writer.declareTemplateCall(html));
}
}
}
diff --git a/user/src/com/google/gwt/uibinder/elementparsers/StackLayoutPanelParser.java b/user/src/com/google/gwt/uibinder/elementparsers/StackLayoutPanelParser.java
index 00f3ffb..c4bbd2e 100644
--- a/user/src/com/google/gwt/uibinder/elementparsers/StackLayoutPanelParser.java
+++ b/user/src/com/google/gwt/uibinder/elementparsers/StackLayoutPanelParser.java
@@ -76,7 +76,7 @@
String size = children.header.consumeRequiredDoubleAttribute("size");
String html = children.header.consumeInnerHtml(htmlInt);
writer.addStatement("%s.add(%s, %s, true, %s);", fieldName,
- childFieldName, writer.declareTemplateCall(html, fieldName), size);
+ childFieldName, writer.declareTemplateCall(html), size);
} else if (children.customHeader != null) {
XMLElement headerElement = children.customHeader.consumeSingleChildElement();
String size = children.customHeader.consumeRequiredDoubleAttribute("size");
diff --git a/user/src/com/google/gwt/uibinder/elementparsers/TabLayoutPanelParser.java b/user/src/com/google/gwt/uibinder/elementparsers/TabLayoutPanelParser.java
index 0eceec0..e5447df 100644
--- a/user/src/com/google/gwt/uibinder/elementparsers/TabLayoutPanelParser.java
+++ b/user/src/com/google/gwt/uibinder/elementparsers/TabLayoutPanelParser.java
@@ -79,7 +79,7 @@
writer, fieldName);
String html = children.header.consumeInnerHtml(htmlInt);
writer.addStatement("%s.add(%s, %s, true);", fieldName,
- childFieldName, writer.declareTemplateCall(html, fieldName));
+ childFieldName, writer.declareTemplateCall(html));
} else if (children.customHeader != null) {
XMLElement headerElement = children.customHeader.consumeSingleChildElement();
diff --git a/user/src/com/google/gwt/uibinder/elementparsers/TabPanelParser.java b/user/src/com/google/gwt/uibinder/elementparsers/TabPanelParser.java
index a1736b0..c7e45f6 100644
--- a/user/src/com/google/gwt/uibinder/elementparsers/TabPanelParser.java
+++ b/user/src/com/google/gwt/uibinder/elementparsers/TabPanelParser.java
@@ -70,7 +70,7 @@
}
if (tabHTML != null) {
writer.addStatement("%1$s.add(%2$s, %3$s, true);", fieldName,
- childFieldName, writer.declareTemplateCall(tabHTML, fieldName));
+ childFieldName, writer.declareTemplateCall(tabHTML));
} else if (tabCaption != null) {
writer.addStatement("%1$s.add(%2$s, %3$s);", fieldName, childFieldName,
tabCaption);
diff --git a/user/src/com/google/gwt/uibinder/rebind/AbstractFieldWriter.java b/user/src/com/google/gwt/uibinder/rebind/AbstractFieldWriter.java
index 04b4ccf..8eb5814 100644
--- a/user/src/com/google/gwt/uibinder/rebind/AbstractFieldWriter.java
+++ b/user/src/com/google/gwt/uibinder/rebind/AbstractFieldWriter.java
@@ -60,7 +60,6 @@
private int buildPrecedence;
private final MortalLogger logger;
private final FieldWriterType fieldType;
- private String html;
public AbstractFieldWriter(String name, FieldWriterType fieldType, MortalLogger logger) {
if (name == null) {
@@ -96,9 +95,6 @@
public FieldWriterType getFieldType() {
return fieldType;
}
- public String getHtml() {
- return html + ".asString()";
- }
public String getInitializer() {
return initializer;
@@ -119,10 +115,6 @@
return getReturnType(getAssignableType(), pathList, logger);
}
- public String getSafeHtml() {
- return html;
- }
-
public void needs(FieldWriter f) {
needs.add(f);
}
@@ -132,10 +124,6 @@
this.buildPrecedence = precedence;
}
- public void setHtml(String html) {
- this.html = html;
- }
-
public void setInitializer(String initializer) {
this.initializer = initializer;
}
diff --git a/user/src/com/google/gwt/uibinder/rebind/FieldWriter.java b/user/src/com/google/gwt/uibinder/rebind/FieldWriter.java
index dd9851d..6ed3527 100644
--- a/user/src/com/google/gwt/uibinder/rebind/FieldWriter.java
+++ b/user/src/com/google/gwt/uibinder/rebind/FieldWriter.java
@@ -99,11 +99,6 @@
FieldWriterType getFieldType();
/**
- * Returns the string html representation of the field.
- */
- String getHtml();
-
- /**
* Returns the custom initializer for this field, or null if it is not set.
*/
String getInitializer();
@@ -132,11 +127,6 @@
JType getReturnType(String[] path, MonitoredLogger logger);
/**
- * Returns the string SafeHtml representation of the field.
- */
- String getSafeHtml();
-
- /**
* Declares that the receiver depends upon the given field.
*/
void needs(FieldWriter f);
@@ -150,11 +140,6 @@
void setBuildPrecedence(int precedence);
/**
- * Sets the html representation of the field for applicable field types.
- */
- void setHtml(String html);
-
- /**
* Used to provide an initializer string to use instead of a
* {@link com.google.gwt.core.client.GWT#create} call. Note that this is an
* RHS expression. Don't include the leading '=', and don't end it with ';'.
diff --git a/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java b/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
index 2dcc917..4a66155 100644
--- a/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
+++ b/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
@@ -23,7 +23,6 @@
import com.google.gwt.core.ext.typeinfo.TypeOracle;
import com.google.gwt.dom.client.TagName;
import com.google.gwt.resources.client.ClientBundle;
-import com.google.gwt.text.shared.SafeHtmlRenderer;
import com.google.gwt.uibinder.attributeparsers.AttributeParser;
import com.google.gwt.uibinder.attributeparsers.AttributeParsers;
import com.google.gwt.uibinder.attributeparsers.BundleAttributeParser;
@@ -242,8 +241,6 @@
private final UiBinderContext uiBinderCtx;
- private final boolean isRenderer;
-
public UiBinderWriter(JClassType baseClass, String implClassName,
String templatePath, TypeOracle oracle, MortalLogger logger,
FieldManager fieldManager, MessagesWriter messagesWriter,
@@ -278,38 +275,13 @@
JClassType uiBinderType = uiBinderTypes[0];
JClassType[] typeArgs = uiBinderType.isParameterized().getTypeArgs();
-
- String binderType = uiBinderType.getName();
-
- JClassType safeHtmlRendererClass = getOracle().findType(SafeHtmlRenderer.class.getName());
- if (uiBinderType.isAssignableTo(uibinderItself)) {
- if (typeArgs.length < 2) {
- throw new RuntimeException(
- "Root and owner type parameters are required for type %s"
- + binderType);
- }
- uiRootType = typeArgs[0];
- uiOwnerType = typeArgs[1];
- isRenderer = false;
- } else if (uiBinderType.isAssignableTo(safeHtmlRendererClass)) {
- if (typeArgs.length < 1) {
- throw new RuntimeException(
- "Owner type parameter is required for type %s"
- + binderType);
- }
- if (!useSafeHtmlTemplates) {
- die("Configuration property UiBinder.useSafeHtmlTemplates\n"
- + " must be set to true to generate a SafeHtmlRenderer");
- }
-
- uiOwnerType = typeArgs[0];
- uiRootType = null;
- isRenderer = true;
- } else {
- die(baseClass.getName() + " must implement UiBinder or SafeHtmlRenderer");
- // This is unreachable in practice, but silences not initialized errors
- throw new UnableToCompleteException();
+ if (typeArgs.length < 2) {
+ throw new RuntimeException(
+ "Root and owner type parameters are required for type %s"
+ + uiBinderType.getName());
}
+ uiRootType = typeArgs[0];
+ uiOwnerType = typeArgs[1];
isRenderableClassType = oracle.findType(IsRenderable.class.getCanonicalName());
lazyDomElementClass = oracle.findType(LazyDomElement.class.getCanonicalName());
@@ -509,14 +481,13 @@
* @return The invocation of the SafeHtml template function with the arguments
* filled in
*/
- public String declareTemplateCall(String html, String fieldName)
+ public String declareTemplateCall(String html)
throws IllegalArgumentException {
if (!useSafeHtmlTemplates) {
return '"' + html + '"';
}
- FieldWriter w = fieldManager.lookup(fieldName);
- w.setHtml(htmlTemplates.addSafeHtmlTemplate(html, tokenator));
- return w.getHtml();
+
+ return htmlTemplates.addSafeHtmlTemplate(html, tokenator);
}
/**
@@ -782,8 +753,9 @@
return lazyDomElementClass.isAssignableFrom(ownerField.getType().getRawType());
}
- public boolean isRenderableElement(XMLElement elem) throws UnableToCompleteException {
- return findFieldType(elem).isAssignableTo(isRenderableClassType);
+ public boolean isRenderableElement(XMLElement elem)
+ throws UnableToCompleteException {
+ return findFieldType(elem).isAssignableTo(isRenderableClassType);
}
public boolean isWidgetElement(XMLElement elem) throws UnableToCompleteException {
@@ -964,6 +936,11 @@
*/
void parseDocument(Document doc, PrintWriter printWriter)
throws UnableToCompleteException {
+ JClassType uiBinderClass = getOracle().findType(UiBinder.class.getName());
+ if (!baseClass.isAssignableTo(uiBinderClass)) {
+ die(baseClass.getName() + " must implement UiBinder");
+ }
+
Element documentElement = doc.getDocumentElement();
gwtPrefix = documentElement.lookupPrefix(UiBinderGenerator.BINDER_URI);
@@ -1200,9 +1177,7 @@
IndentedWriter niceWriter = new IndentedWriter(
new PrintWriter(stringWriter));
- if (isRenderer) {
- writeRenderer(niceWriter, rootField);
- } else if (useLazyWidgetBuilders) {
+ if (useLazyWidgetBuilders) {
for (ImplicitCssResource css : bundleClass.getCssMethods()) {
String fieldName = css.getName();
FieldWriter cssField = fieldManager.require(fieldName);
@@ -1212,6 +1187,7 @@
} else {
writeBinder(niceWriter, rootField);
}
+
ensureAttachmentCleanedUp();
return stringWriter.toString();
}
@@ -1406,16 +1382,10 @@
}
private void writeClassOpen(IndentedWriter w) {
- if (!isRenderer) {
- w.write("public class %s implements UiBinder<%s, %s>, %s {", implClassName,
- uiRootType.getParameterizedQualifiedSourceName(),
- uiOwnerType.getParameterizedQualifiedSourceName(),
- baseClass.getParameterizedQualifiedSourceName());
- } else {
- w.write("public class %s extends AbstractSafeHtmlRenderer<%s> implements %s {", implClassName,
- uiOwnerType.getParameterizedQualifiedSourceName(),
- baseClass.getParameterizedQualifiedSourceName());
- }
+ w.write("public class %s implements UiBinder<%s, %s>, %s {", implClassName,
+ uiRootType.getParameterizedQualifiedSourceName(),
+ uiOwnerType.getParameterizedQualifiedSourceName(),
+ baseClass.getParameterizedQualifiedSourceName());
w.indent();
}
@@ -1459,6 +1429,7 @@
}
}
+ // Write gwt field declarations.
fieldManager.writeGwtFieldsDeclaration(niceWriter, uiOwnerType.getName());
}
@@ -1476,18 +1447,11 @@
w.write("import com.google.gwt.safehtml.client.SafeHtmlTemplates;");
w.write("import com.google.gwt.safehtml.shared.SafeHtml;");
w.write("import com.google.gwt.safehtml.shared.SafeHtmlUtils;");
- w.write("import com.google.gwt.safehtml.shared.SafeHtmlBuilder;");
- w.write("import com.google.gwt.uibinder.client.UiBinderUtil;");
}
-
- if (!isRenderer) {
- w.write("import com.google.gwt.uibinder.client.UiBinder;");
- w.write("import com.google.gwt.uibinder.client.UiBinderUtil;");
- w.write("import %s.%s;", uiRootType.getPackage().getName(),
- uiRootType.getName());
- } else {
- w.write("import com.google.gwt.text.shared.AbstractSafeHtmlRenderer;");
- }
+ w.write("import com.google.gwt.uibinder.client.UiBinder;");
+ w.write("import com.google.gwt.uibinder.client.UiBinderUtil;");
+ w.write("import %s.%s;", uiRootType.getPackage().getName(),
+ uiRootType.getName());
}
/**
@@ -1550,41 +1514,6 @@
}
/**
- * Writes the SafeHtmlRenderer's source.
- */
- private void writeRenderer(IndentedWriter w, String rootField)
- throws UnableToCompleteException {
- writePackage(w);
-
- writeImports(w);
- w.newline();
-
- writeClassOpen(w);
- writeStatics(w);
- w.newline();
-
- // Create SafeHtml Template
- writeSafeHtmlTemplates(w);
-
- w.write("public SafeHtml render(final %s owner) {",
- uiOwnerType.getParameterizedQualifiedSourceName());
- w.indent();
- w.newline();
-
- writeGwtFields(w);
- w.newline();
-
- String safeHtml = fieldManager.lookup(rootField).getSafeHtml();
- w.write("return %s;", safeHtml);
- w.outdent();
- w.write("}\n");
-
- // Close class
- w.outdent();
- w.write("}");
- }
-
- /**
* Write statements created by {@link HtmlTemplates#addSafeHtmlTemplate}. This
* code must be placed after all instantiation code.
*/
diff --git a/user/src/com/google/gwt/uibinder/rebind/model/HtmlTemplate.java b/user/src/com/google/gwt/uibinder/rebind/model/HtmlTemplate.java
index f8c4994..f8dd711 100644
--- a/user/src/com/google/gwt/uibinder/rebind/model/HtmlTemplate.java
+++ b/user/src/com/google/gwt/uibinder/rebind/model/HtmlTemplate.java
@@ -77,7 +77,7 @@
*/
public String writeTemplateCall() {
return "template." + methodName + "(" + getSafeHtmlArgs()
- + ")";
+ + ").asString()";
}
/**
diff --git a/user/test/com/google/gwt/uibinder/elementparsers/DialogBoxParserTest.java b/user/test/com/google/gwt/uibinder/elementparsers/DialogBoxParserTest.java
index 2cdc6af..4dce3fa 100644
--- a/user/test/com/google/gwt/uibinder/elementparsers/DialogBoxParserTest.java
+++ b/user/test/com/google/gwt/uibinder/elementparsers/DialogBoxParserTest.java
@@ -77,8 +77,7 @@
b.append("</g:DialogBox> ");
String[] expected = {
- "fieldName.setHTML(\"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-Hello, I <b>caption</b>you.\");",
+ "fieldName.setHTML(\"@mockToken-Hello, I <b>caption</b>you.\");",
"fieldName.setWidget(<g:Label>);",};
FieldWriter w = tester.parse(b.toString());
@@ -343,8 +342,7 @@
b.append("</ui:UiBinder>");
String[] expected = {
- "fieldName.setHTML(\"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-Hello, I <b>caption</b>you.\");",
+ "fieldName.setHTML(\"@mockToken-Hello, I <b>caption</b>you.\");",
"fieldName.setWidget(<g:Label>);",};
parser.parse(tester.getElem(b.toString(), "my:MyDialogBox"), "fieldName",
diff --git a/user/test/com/google/gwt/uibinder/elementparsers/GridParserTest.java b/user/test/com/google/gwt/uibinder/elementparsers/GridParserTest.java
index ea11f9e..5a55684 100644
--- a/user/test/com/google/gwt/uibinder/elementparsers/GridParserTest.java
+++ b/user/test/com/google/gwt/uibinder/elementparsers/GridParserTest.java
@@ -132,16 +132,12 @@
String[] expected = {"fieldName.resize(2, 2);",
"fieldName.getRowFormatter().setStyleName(0, \"rowHeaderStyle\");",
- "fieldName.setHTML(0, 0, \"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-foo\");",
+ "fieldName.setHTML(0, 0, \"@mockToken-foo\");",
"fieldName.getCellFormatter().setStyleName(0, 0, \"headerStyle\");",
- "fieldName.setHTML(0, 1, \"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-bar\");",
+ "fieldName.setHTML(0, 1, \"@mockToken-bar\");",
"fieldName.getCellFormatter().setStyleName(0, 1, \"headerStyle\");",
- "fieldName.setHTML(1, 0, \"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-foo\");",
- "fieldName.setHTML(1, 1, \"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-bar\");"};
+ "fieldName.setHTML(1, 0, \"@mockToken-foo\");",
+ "fieldName.setHTML(1, 1, \"@mockToken-bar\");"};
FieldWriter w = tester.parse(b.toString());
@@ -176,10 +172,8 @@
String[] expected = {
"fieldName.resize(2, 2);",
- "fieldName.setHTML(0, 0, \"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-<div>foo HTML element</div>\");",
- "fieldName.setHTML(0, 1, \"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-<div>bar HTML element</div>\");",
+ "fieldName.setHTML(0, 0, \"@mockToken-<div>foo HTML element</div>\");",
+ "fieldName.setHTML(0, 1, \"@mockToken-<div>bar HTML element</div>\");",
"fieldName.setWidget(1, 0, <g:Label>);",
"fieldName.setWidget(1, 1, <g:Label>);"};
@@ -215,8 +209,7 @@
String[] expected = {
"fieldName.resize(2, 2);",
- "fieldName.setHTML(0, 0, \"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-<div>foo HTML element</div>\");",
+ "fieldName.setHTML(0, 0, \"@mockToken-<div>foo HTML element</div>\");",
"fieldName.setWidget(1, 0, <g:Label>);",
"fieldName.setWidget(1, 1, <g:Label>);"};
diff --git a/user/test/com/google/gwt/uibinder/elementparsers/MockUiBinderWriter.java b/user/test/com/google/gwt/uibinder/elementparsers/MockUiBinderWriter.java
index 12d59da..ad145ca 100644
--- a/user/test/com/google/gwt/uibinder/elementparsers/MockUiBinderWriter.java
+++ b/user/test/com/google/gwt/uibinder/elementparsers/MockUiBinderWriter.java
@@ -45,12 +45,11 @@
}
/**
- * Mocked out version of the template declaration. Returns the fieldName and
- * template separated with a dash, all prefixed with "@mockToken-"
+ * Mocked out version of the template declaration. Returns the template
+ * prefixed with "@mockToken-"
*/
- @Override
- public String declareTemplateCall(String html, String fieldName) {
- return "\"@mockToken-" + fieldName + "-" + html + "\"";
+ public String declareTemplateCall(String html) {
+ return "\"@mockToken-" + html + "\"";
}
@Override
diff --git a/user/test/com/google/gwt/uibinder/elementparsers/StackLayoutPanelParserTest.java b/user/test/com/google/gwt/uibinder/elementparsers/StackLayoutPanelParserTest.java
index 6f41f5e..6987761 100644
--- a/user/test/com/google/gwt/uibinder/elementparsers/StackLayoutPanelParserTest.java
+++ b/user/test/com/google/gwt/uibinder/elementparsers/StackLayoutPanelParserTest.java
@@ -165,8 +165,7 @@
+ "(com.google.gwt.dom.client.Style.Unit.PX)", w.getInitializer());
assertStatements(
- "fieldName.add(<g:Label id='able'>, \"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-Re<b>mark</b>able\", true, 3);",
+ "fieldName.add(<g:Label id='able'>, \"@mockToken-Re<b>mark</b>able\", true, 3);",
"fieldName.add(<g:Label id='baker'>, " + "<g:Label id='custom'>, 3);");
}
diff --git a/user/test/com/google/gwt/uibinder/elementparsers/TabLayoutPanelParserTest.java b/user/test/com/google/gwt/uibinder/elementparsers/TabLayoutPanelParserTest.java
index 1b49860..4bc18ec 100644
--- a/user/test/com/google/gwt/uibinder/elementparsers/TabLayoutPanelParserTest.java
+++ b/user/test/com/google/gwt/uibinder/elementparsers/TabLayoutPanelParserTest.java
@@ -168,8 +168,7 @@
b.append("</g:TabLayoutPanel>");
String[] expected = {
- "fieldName.add(<g:Label id='able'>, \"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-Re<b>mark</b>able\", true);",
+ "fieldName.add(<g:Label id='able'>, \"@mockToken-Re<b>mark</b>able\", true);",
"fieldName.add(<g:Label id='baker'>, " + "<g:Label id='custom'>);",};
FieldWriter w = tester.parse(b.toString());
diff --git a/user/test/com/google/gwt/uibinder/elementparsers/TabPanelParserTest.java b/user/test/com/google/gwt/uibinder/elementparsers/TabPanelParserTest.java
index 1117c95..2fc5ed7 100644
--- a/user/test/com/google/gwt/uibinder/elementparsers/TabPanelParserTest.java
+++ b/user/test/com/google/gwt/uibinder/elementparsers/TabPanelParserTest.java
@@ -146,8 +146,7 @@
tester.parse(b.toString());
assertStatements("fieldName.add(<g:Label id='0'>, \"Foo\");",
- "fieldName.add(<g:Label id='1'>, \"@mockToken-" + ElementParserTester.FIELD_NAME
- + "-B<b>a</b>r\", true);");
+ "fieldName.add(<g:Label id='1'>, \"@mockToken-B<b>a</b>r\", true);");
}
private void assertStatements(String... expected) {
diff --git a/user/test/com/google/gwt/uibinder/test/client/Constants.java b/user/test/com/google/gwt/uibinder/test/client/Constants.java
index 5e9b536..e387a7a 100644
--- a/user/test/com/google/gwt/uibinder/test/client/Constants.java
+++ b/user/test/com/google/gwt/uibinder/test/client/Constants.java
@@ -39,8 +39,4 @@
}
public static String CONST_FOO = "Foo";
-
- public String getText() {
- return "<b>Here's the text!</b>";
- }
}
diff --git a/user/test/com/google/gwt/uibinder/test/client/SafeHtmlRendererUi.css b/user/test/com/google/gwt/uibinder/test/client/SafeHtmlRendererUi.css
deleted file mode 100644
index d277a99..0000000
--- a/user/test/com/google/gwt/uibinder/test/client/SafeHtmlRendererUi.css
+++ /dev/null
@@ -1,8 +0,0 @@
-.bodyColor {
- color: indigo;
-}
-
-.bodyFont {
- font-family: Helvetica, Arial, sans-serif;
- font-size: small;
-}
diff --git a/user/test/com/google/gwt/uibinder/test/client/SafeHtmlRendererUi.java b/user/test/com/google/gwt/uibinder/test/client/SafeHtmlRendererUi.java
deleted file mode 100644
index a4d4348..0000000
--- a/user/test/com/google/gwt/uibinder/test/client/SafeHtmlRendererUi.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright 2008 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.uibinder.test.client;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.resources.client.ClientBundle;
-import com.google.gwt.resources.client.CssResource;
-import com.google.gwt.safehtml.shared.SafeHtml;
-import com.google.gwt.text.shared.SafeHtmlRenderer;
-
-/**
- * Sample use of a {@code SafeHtmlRenderer} with no dependency on
- * com.google.gwt.user.
- */
-public class SafeHtmlRendererUi {
- /**
- * Resources for this template.
- */
- public interface Resources extends ClientBundle {
- @Source("SafeHtmlRendererUi.css")
- Style style();
- }
-
- /**
- * CSS for this template.
- */
- public interface Style extends CssResource {
- String bodyColor();
- String bodyFont();
- }
-
- interface HtmlRenderer extends SafeHtmlRenderer<String> { }
- private static final HtmlRenderer renderer = GWT.create(HtmlRenderer.class);
-
- public SafeHtmlRendererUi() {
- }
-
- public SafeHtml render() {
- return renderer.render(null);
- }
-}
diff --git a/user/test/com/google/gwt/uibinder/test/client/SafeHtmlRendererUi.ui.xml b/user/test/com/google/gwt/uibinder/test/client/SafeHtmlRendererUi.ui.xml
deleted file mode 100644
index 6a31cb4..0000000
--- a/user/test/com/google/gwt/uibinder/test/client/SafeHtmlRendererUi.ui.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-<!-- -->
-<!-- Copyright 2008 Google Inc. -->
-<!-- Licensed under the Apache License, Version 2.0 (the "License"); you -->
-<!-- may not use this file except in compliance with the License. You may -->
-<!-- may obtain a copy of the License at -->
-<!-- -->
-<!-- http://www.apache.org/licenses/LICENSE-2.0 -->
-<!-- -->
-<!-- Unless required by applicable law or agreed to in writing, software -->
-<!-- distributed under the License is distributed on an "AS IS" BASIS, -->
-<!-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -->
-<!-- implied. License for the specific language governing permissions and -->
-<!-- limitations under the License. -->
-<ui:UiBinder
- xmlns:ui='urn:ui:com.google.gwt.uibinder'
- xmlns:res='urn:with:com.google.gwt.uibinder.test.client.DomBasedUi.Resources'
- >
- <ui:with field="constants" type="com.google.gwt.uibinder.test.client.Constants"/>
- <div ui:field='root' res:class="style.bodyColor style.bodyFont"
- title="The title of this div is localizable">
- <ui:attribute name='title'/>
- <span><ui:text from="{constants.getText}" /></span>
- Hello, <span ui:field="nameSpan" />.
- <ui:msg>How goes it?</ui:msg>
- <h2 res:class="style.bodyColor style.bodyFont">Placeholders in localizables</h2>
- <p><ui:msg>When you mark up your text for translation, there will be bits
- that you don't want the translators to mess with. You can protect
- these with <span style="font-weight:bold"
- ui:ph="boldSpan">placeholders</span><ui:ph name="tm"><sup ui:field="tmElement">TM</sup></ui:ph>.</ui:msg></p>
- <table>
- <col ui:field='narrowColumn' width='0%'></col>
- <col width='100%'></col>
- <tr ui:field='tr'>
- <th ui:field='th1'>Tables with col elements</th>
- <th ui:field='th2' align='left'>are</th>
- <th ui:field='th3' align='left'>tricky</th>
- </tr>
- </table>
- <table>
- <tbody ui:field='tbody'>
- <tr ui:field='tr2'>
- <th ui:field='th4'>Tables with tbody elements too</th>
- </tr>
- </tbody>
- </table>
- </div>
-</ui:UiBinder>
diff --git a/user/test/com/google/gwt/uibinder/test/client/UiBinderTest.java b/user/test/com/google/gwt/uibinder/test/client/UiBinderTest.java
index 3a8c3e9..91a5203 100644
--- a/user/test/com/google/gwt/uibinder/test/client/UiBinderTest.java
+++ b/user/test/com/google/gwt/uibinder/test/client/UiBinderTest.java
@@ -18,15 +18,12 @@
import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.DivElement;
import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.LabelElement;
-import com.google.gwt.dom.client.Node;
import com.google.gwt.dom.client.ParagraphElement;
import com.google.gwt.dom.client.SpanElement;
import com.google.gwt.junit.client.GWTTestCase;
import com.google.gwt.resources.client.ClientBundle;
import com.google.gwt.resources.client.ImageResource;
import com.google.gwt.resources.client.CssResource.NotStrict;
-import com.google.gwt.safehtml.shared.SafeHtml;
import com.google.gwt.uibinder.test.client.EnumeratedLabel.Suffix;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.ui.AbsolutePanel;
@@ -53,7 +50,6 @@
private WidgetBasedUi widgetUi;
private DomBasedUi domUi;
private com.google.gwt.user.client.ui.DockPanel root;
- private SafeHtmlRendererUi safeHtmlUi;
@Override
public String getModuleName() {
@@ -67,28 +63,6 @@
widgetUi = app.getWidgetUi();
domUi = app.getDomUi();
root = widgetUi.root;
- safeHtmlUi = app.getSafeHtmlUi();
- }
-
- public void testSafeHtmlRendererText() {
- SafeHtml render = safeHtmlUi.render();
-
- LabelElement renderedHtml = domUi.root.getOwnerDocument().createLabelElement();
- renderedHtml.setInnerHTML(render.asString());
-
- Node innerDiv = renderedHtml.getFirstChild();
-
- // Was the first span rendered as a "HTML-safe" text string?
- Node spanWithConstantTextNode = innerDiv.getChild(0);
- assertEquals("span", spanWithConstantTextNode.getNodeName().toLowerCase());
- assertEquals(Node.TEXT_NODE, spanWithConstantTextNode.getFirstChild().getNodeType());
- assertEquals("<b>Here's the text!</b>",
- spanWithConstantTextNode.getFirstChild().getNodeValue());
-
- Node firstRawTextNode = innerDiv.getChild(1);
- assertEquals(Node.TEXT_NODE, firstRawTextNode.getNodeType());
- assertEquals(" Hello, ",
- firstRawTextNode.getNodeValue());
}
public void testTableWithColumns() {
diff --git a/user/test/com/google/gwt/uibinder/test/client/UiBinderTestApp.java b/user/test/com/google/gwt/uibinder/test/client/UiBinderTestApp.java
index a2c3269..c998f65 100644
--- a/user/test/com/google/gwt/uibinder/test/client/UiBinderTestApp.java
+++ b/user/test/com/google/gwt/uibinder/test/client/UiBinderTestApp.java
@@ -41,16 +41,12 @@
instance.domUi = new DomBasedUi("Mr. User Man");
Document.get().getBody().appendChild(instance.domUi.root);
- instance.safeHtmlUi = new SafeHtmlRendererUi();
-
instance.widgetUi = new WidgetBasedUi();
RootPanel.get().add(instance.widgetUi);
}
private DomBasedUi domUi;
- private SafeHtmlRendererUi safeHtmlUi;
-
private WidgetBasedUi widgetUi;
private UiBinderTestApp() {
@@ -60,10 +56,6 @@
return domUi;
}
- public SafeHtmlRendererUi getSafeHtmlUi() {
- return safeHtmlUi;
- }
-
public WidgetBasedUi getWidgetUi() {
return widgetUi;
}