1.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java Thu Nov 07 09:41:45 2013 +0100
1.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java Thu Jan 09 08:21:26 2014 +0100
1.3 @@ -1623,6 +1623,7 @@
1.4 String[] args = new String[30];
1.5 String body;
1.6 boolean javacall;
1.7 + boolean html4j;
1.8
1.9 @Override
1.10 protected void visitAttr(String type, String attr, String at, String value) {
1.11 @@ -1636,6 +1637,7 @@
1.12 }
1.13 }
1.14 if (type.equals(htmlType)) {
1.15 + html4j = true;
1.16 if ("body".equals(attr)) {
1.17 body = value;
1.18 } else if ("args".equals(attr)) {
1.19 @@ -1659,12 +1661,18 @@
1.20 out.append(" = function(");
1.21 String space = "";
1.22 int index = 0;
1.23 + StringBuilder toValue = new StringBuilder();
1.24 for (int i = 0; i < cnt.length(); i++) {
1.25 out.append(space);
1.26 space = outputArg(out, p.args, index);
1.27 + if (p.html4j && space.length() > 0) {
1.28 + toValue.append("\n ").append(p.args[index]).append(" = vm.org_apidesign_bck2brwsr_emul_lang_System(false).toJS(").
1.29 + append(p.args[index]).append(");");
1.30 + }
1.31 index++;
1.32 }
1.33 out.append(") {").append("\n");
1.34 + out.append(toValue.toString());
1.35 if (p.javacall) {
1.36 int lastSlash = jc.getClassName().lastIndexOf('/');
1.37 final String pkg = jc.getClassName().substring(0, lastSlash);