diff -r 3bd43aa6f08d -r 445d5f1d4177 javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java Mon Apr 08 12:12:42 2013 +0200 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java Mon Apr 08 12:36:12 2013 +0200 @@ -485,7 +485,7 @@ if (p.array()) { w.write("private KOList<" + tn + "> prop_" + p.name() + " = new KOList<" + tn + ">(\"" + p.name() + "\""); - final Collection dependants = deps.get(p.name()); + Collection dependants = deps.get(p.name()); if (dependants != null) { for (String depProp : dependants) { w.write(", "); @@ -494,7 +494,18 @@ w.write('\"'); } } - w.write(");\n"); + w.write(")"); + + dependants = functionDeps.get(p.name()); + if (dependants != null) { + w.write(".onChange(new Runnable() { public void run() {\n"); + for (String call : dependants) { + w.append(call); + } + w.write("}})"); + } + w.write(";\n"); + w.write("public java.util.List<" + tn + "> " + gs[0] + "() {\n"); w.write(" if (locked) throw new IllegalStateException();\n"); w.write(" prop_" + p.name() + ".assign(ko);\n");