[gwt-contrib] [google-web-toolkit] r6369 committed - Rearrange ant test targets....

2009-10-14 Thread codesite-noreply

Revision: 6369
Author: j...@google.com
Date: Tue Oct 13 23:49:20 2009
Log: Rearrange ant test targets.

The continuous build systems need to have gwt.hosts.dev.remote and
gwt.hosts.dev.selenium set to those hosts which have the devmode plugin
installed for devmode tests to be run at all, until HtmlUnit is made  
reliable
enough to enable by default.

Patch by: jat
Review by: amitmanjhi, jlabanca (TBR)

http://code.google.com/p/google-web-toolkit/source/detail?r=6369

Modified:
  /changes/jat/noswt-merge6200/user/build.xml

===
--- /changes/jat/noswt-merge6200/user/build.xml Tue Sep 29 11:05:28 2009
+++ /changes/jat/noswt-merge6200/user/build.xml Tue Oct 13 23:49:20 2009
@@ -3,6 +3,14 @@
property name=project.tail value=user /
property name=test.args value= /

+  !-- support old variables names --
+  condition property=gwt.hosts.web.remote  
value=${gwt.remote.browsers}
+isset property=gwt.remote.browsers /
+  /condition
+  condition property=gwt.hosts.web.selenium  
value=${gwt.selenium.hosts}
+isset property=gwt.selenium.hosts /
+  /condition
+
!-- BrowserManagerServer_Stub compiled using rmic, which doesn't  
generate full source code --
property name=emma.filter.exclude value=*BrowserManagerServer_Stub*  
/

@@ -100,39 +108,137 @@
  /gwt.checkstyle
/target

-  target name=remoteweb-test depends=test.remoteweb
-echo message=DEPRECATED: remoteweb-test has been renamed  
test.remoteweb/
+  target name=remoteweb-test depends=test.web.remote
+echo message=DEPRECATED: remoteweb-test has been renamed  
test.web.remote/
/target

-  target name=test.remoteweb description=Run a remoteweb test at the  
given host and path if=gwt.remote.browsers
-echo message=Performing remote browser testing at  
${gwt.remote.browsers} /
-property name=test.remoteweb.args value=${test.args} /
-fileset id=test.remoteweb.tests dir=${javac.junit.out}  
includes=${gwt.junit.testcase.web.includes}  
excludes=${gwt.junit.testcase.web.excludes} /
-gwt.junit test.args=${test.args} -out www -runStyle  
RemoteWeb:${gwt.remote.browsers} -batch module -precompile parallel  
test.out=${junit.out}/remoteweb test.cases=test.remoteweb.tests 
+  target name=test.remoteweb depends=test.web.remote
+echo message=DEPRECATED: test.remoteweb has been renamed  
test.web.remote/
+  /target
+
+  target name=test.web.remote description=Run a remoteweb test at the  
given host and path if=gwt.hosts.web.remote
+echo message=Performing web remote testing at  
${gwt.hosts.web.remote} /
+property name=test.web.remote.args value=${test.args} /
+fileset id=test.web.remote.tests dir=${javac.junit.out}  
includes=${gwt.junit.testcase.web.includes}  
excludes=${gwt.junit.testcase.web.excludes} /
+gwt.junit test.args=${test.args} -web -out www -runStyle  
RemoteWeb:${gwt.hosts.web.remote} -batch module -precompile parallel  
test.out=${junit.out}/web-remote test.cases=test.web.remote.tests 
extraclasspaths
  path refid=test.extraclasspath /
/extraclasspaths
  /gwt.junit
/target

-  target name=selenium-test depends=test.selenium
+  target name=test.dev.remote description=Run a remoteweb test at the  
given host and path if=gwt.hosts.dev.remote
+echo message=Performing dev-mode remote testing at  
${gwt.remote.browsers} /
+property name=test.dev.remote.args value=${test.args} /
+fileset id=test.dev.remote.tests dir=${javac.junit.out}  
includes=${gwt.junit.testcase.hosted.includes}  
excludes=${gwt.junit.testcase.hosted.excludes} /
+gwt.junit test.args=${test.args} -out www -runStyle  
RemoteWeb:${gwt.hosts.dev.remote} -batch module -precompile parallel  
test.out=${junit.out}/dev-remote test.cases=test.dev.remote.tests 
+  extraclasspaths
+path refid=test.extraclasspath /
+  /extraclasspaths
+/gwt.junit
+  /target
+
+  target name=test.emma.remote description=Run a remoteweb test at the  
given host and path if=gwt.hosts.dev.remote
+echo message=Performing emma remote testing at  
${gwt.hosts.dev.remote} /
+property name=test.emma.remote.args value=${test.args} /
+fileset id=test.emma.remote.tests dir=${javac.junit.out}  
includes=${gwt.junit.testcase.hosted.emma.includes}  
excludes=${gwt.junit.testcase.hosted.emma.excludes} /
+gwt.junit test.args=${test.args} -out www -runStyle  
RemoteWeb:${gwt.hosts.dev.remote} -batch module -precompile parallel  
test.out=${junit.out}/emma-remote test.cases=test.emma.remote.tests 
+  extraclasspaths
+path refid=test.extraclasspath /
+pathelement location=${gwt.tools.redist}/emma/emma.jar /
+  /extraclasspaths
+/gwt.junit
+  /target
+
+  target name=test.emma.selenium description=Run a remoteweb test at  
the given host and path if=gwt.hosts.dev.selenium
+echo message=Performing emma selenium testing at  
${gwt.hosts.dev.selenium} /
+property name=test.emma.remote.args value=${test.args} /
+

[gwt-contrib] [google-web-toolkit] r6370 committed - Rearrange ant test targets....

2009-10-14 Thread codesite-noreply

Revision: 6370
Author: j...@google.com
Date: Wed Oct 14 00:44:30 2009
Log: Rearrange ant test targets.

The continuous build systems need to have gwt.hosts.dev.remote and
gwt.hosts.dev.selenium set to those hosts which have the devmode plugin
installed for devmode tests to be run at all, until HtmlUnit is made  
reliable
enough to enable by default.

Patch by: jat
Review by: amitmanjhi, jlabanca (TBR)


http://code.google.com/p/google-web-toolkit/source/detail?r=6370

Modified:
  /trunk/user/build.xml

===
--- /trunk/user/build.xml   Tue Oct 13 16:57:19 2009
+++ /trunk/user/build.xml   Wed Oct 14 00:44:30 2009
@@ -3,6 +3,14 @@
property name=project.tail value=user /
property name=test.args value= /

+  !-- support old variables names --
+  condition property=gwt.hosts.web.remote  
value=${gwt.remote.browsers}
+isset property=gwt.remote.browsers /
+  /condition
+  condition property=gwt.hosts.web.selenium  
value=${gwt.selenium.hosts}
+isset property=gwt.selenium.hosts /
+  /condition
+
!-- BrowserManagerServer_Stub compiled using rmic, which doesn't  
generate full source code --
property name=emma.filter.exclude value=*BrowserManagerServer_Stub*  
/

@@ -13,9 +21,12 @@
property name=gwt.junit.testcase.web.includes  
value=${gwt.junit.testcase.includes} /
property name=gwt.junit.testcase.web.excludes value= /

+  property name=gwt.junit.testcase.dev.includes  
value=${gwt.junit.testcase.includes} /
+  property name=gwt.junit.testcase.dev.excludes value= /
+
!-- CoverageTest.java fails due to a javac bug in sun/OpenJDK's Java.  
See the file contents for details --
-  property name=gwt.junit.testcase.hosted.emma.includes  
value=**/*Suite.class,com/google/gwt/dev/jjs/test/*Test.class /
-  property name=gwt.junit.testcase.hosted.emma.excludes  
value=**/CoverageTest.class,**/CompilerSuite.class /
+  property name=gwt.junit.testcase.dev.emma.includes  
value=**/*Suite.class,com/google/gwt/dev/jjs/test/*Test.class /
+  property name=gwt.junit.testcase.dev.emma.excludes  
value=**/CoverageTest.class,**/CompilerSuite.class /

!-- Only IFrameLinker actually supports -noserver mode; run the other  
linker tests if and when they are supported --
property name=gwt.junit.testcase.noserver.includes  
value=**/IFrameLinkerTest.class /
@@ -34,10 +45,10 @@
  pathelement location=${gwt.build}/out/dev/bin-test /
  pathelement location=test-super /
  pathelement location=test_i18n_${gwt.i18n.test.InnerClassChar} /
-   pathelement location=${gwt.tools.lib}/cglib/cglib-2.2.jar/
-   pathelement location=${gwt.tools.lib}/easymock/easymock.jar/
-   pathelement  
location=${gwt.tools.lib}/easymock/easymockclassextension.jar/
-   pathelement location=${gwt.tools.lib}/objectweb/asm-3.1.jar/
+pathelement location=${gwt.tools.lib}/cglib/cglib-2.2.jar/
+pathelement location=${gwt.tools.lib}/easymock/easymock.jar/
+pathelement  
location=${gwt.tools.lib}/easymock/easymockclassextension.jar/
+pathelement location=${gwt.tools.lib}/objectweb/asm-3.1.jar/
/path

!-- Platform shouldn't matter here, just picking one --
@@ -90,7 +101,8 @@
  /gwt.javac
/target

-  target name=build depends=compile description=Build and package  
this project
+  target name=build depends=compile
+  description=Build and package this project
  mkdir dir=${gwt.build.lib} /
  gwt.jar
fileset dir=src excludes=**/package.html /
@@ -110,33 +122,153 @@
  /gwt.checkstyle
/target

-  target name=test.remoteweb depends=compile, compile.tests
-  description=Run a remoteweb test at the given host and path  
if=gwt.remote.browsers
-echo message=Performing remote browser testing at  
${gwt.remote.browsers} /
-property name=test.remoteweb.args value=${test.args} /
-fileset id=test.remoteweb.tests dir=${javac.junit.out}  
includes=${gwt.junit.testcase.web.includes}  
excludes=${gwt.junit.testcase.web.excludes} /
-gwt.junit test.args=${test.args} -out www -web -runStyle  
RemoteWeb:${gwt.remote.browsers} -batch module -precompile parallel  
test.out=${junit.out}/remoteweb test.cases=test.remoteweb.tests 
+  target name=test.remoteweb depends=test.web.remote
+echo message=DEPRECATED: test.remoteweb has been renamed  
test.web.remote/
+  /target
+
+  target name=test.web.remote
+  description=Run a remoteweb test at the given host and path
+  if=gwt.hosts.web.remote
+echo message=Performing web remote testing at  
${gwt.hosts.web.remote} /
+property name=test.web.remote.args value=${test.args} /
+fileset id=test.web.remote.tests dir=${javac.junit.out}  
includes=${gwt.junit.testcase.web.includes}  
excludes=${gwt.junit.testcase.web.excludes} /
+gwt.junit test.args=${test.args} -out www -web -runStyle  
RemoteWeb:${gwt.hosts.web.remote} -batch module -precompile parallel  
test.out=${junit.out}/web-remote test.cases=test.web.remote.tests 

[gwt-contrib] Refactored DisclosurePanel and better DisclosurePanelParser

2009-10-14 Thread rjrjr

Reviewers: jgw,

Message:
Thanks in advance, Joel.



Please review this at http://gwt-code-reviews.appspot.com/78817

Affected files:
   M user/src/com/google/gwt/uibinder/parsers/DisclosurePanelParser.java
   M user/src/com/google/gwt/uibinder/rebind/XMLElement.java
   M user/src/com/google/gwt/uibinder/sample/client/WidgetBasedUi.ui.xml
   A user/src/com/google/gwt/uibinder/sample/client/down.png
   A user/src/com/google/gwt/uibinder/sample/client/right.png
   M user/src/com/google/gwt/user/client/ui/DisclosurePanel.java
   A user/src/com/google/gwt/user/client/ui/DisclosurePanelHeader.java
   M user/src/com/google/gwt/user/client/ui/DisclosurePanelImages.java
   M user/src/com/google/gwt/user/client/ui/DisclosurePanelImagesRTL.java
   A user/src/com/google/gwt/user/client/ui/OpensAndCloses.java



--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Refactored DisclosurePanel and better DisclosurePanelParser

2009-10-14 Thread t . broyer
My 2 c€nts


http://gwt-code-reviews.appspot.com/78817/diff/15/1029
File user/src/com/google/gwt/user/client/ui/DisclosurePanel.java
(right):

http://gwt-code-reviews.appspot.com/78817/diff/15/1029#newcode62
Line 62: super(DOM.createAnchor());
Couldn't you use a FocusImpl instead, and therefore fix issue 1449?
(might have implications with using focusable widgets within the header
though, particularly when using FocusImplOld, so maybe there rather
shouldn't be a ClickableHeader at all within DisclosurePanel, and defer
the focus/open/close handling to the header widget instead; and provide
a wrapper equivalent to this ClickableHeader for
non-focusable/non-clickable widgets)

http://gwt-code-reviews.appspot.com/78817

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: RR : Add lightweight Scheduler API

2009-10-14 Thread bobv

 http://gwt-code-reviews.appspot.com/77820/diff/1004/1005#newcode23
 Line 23: public class Scheduler {

The public Scheduler class is now abstract.


 http://gwt-code-reviews.appspot.com/77820/diff/1004/1005#newcode123
 Line 123: public static void schedulePause() {

schedulePause has been removed.


http://gwt-code-reviews.appspot.com/77820

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: maximal sharding of builds and linkers

2009-10-14 Thread spoon

IMPLEMENTATION NOTES

This patch updates the Linker API to be shardable.  It updates the
compiler to deal with this new API, and it updates the built-in
linkers to support it.

The main API change is that Linker.link has an extra boolean argument.
That method is to be called once per permutation with the argument set
to true.  It is then called at the end of compilation with the
argument set to false.

Linker classes that don't implement this new method are still
supported, but they go through simulated sharding code paths.
Additionally, Compiler and GWTCompiler always use simulated sharding.

Additionally, to make multi-computer builds more efficient, artifacts
are not provided by default to the final call to Linker.link.
Instead, artifacts go through a thinning-down process.  All
EmittedArtifacts are turned into BinaryEmittedArtifacts, thus dropping
any extra fields the original artifacts might have had.  Other
artifacts are simply dropped, unless they are marked as @Transferable.

The API change itself is in classes Linker and in the two new
annotations Transferable and Shardable.

The bulk of the real changes are in class Link.  Instead of doLink,
there is now doSimulatedShardingLink and doLinkFinal.  The former is
used if any linkers haven't been updated and so need to have calls to
the non-sharding API mixed in.  The latter is used when all linkers
have been updated and the Precompile/CompilePerms/Link entry points
are being used.

Link also has new methods related to thinning out the artifact set
for transfer from CompilePerms computers to the Link computer:
linkOnePermutationToJar and scanJars are the pair used for true
sharding, and simulateTransferThinning is used for simulated
sharding.

CompilePerms and Precompile are updated to support sharded linking in
addition to their old code paths.  If all linkers have been updated,
then Precompile only counts the permutations, CompilePerms does a
precompile, and CompilePerms calls the per-permutation part of the new
Linker API.  If any linker hasn't been updated, then a non-sharded
compile
is still used.

I believe the linker changes are straightforward.  Each one is updated
to be shardable, and to transfer the minimum possible from CompilePerms
to Link.


The rest of the patch is a variety of little odds and ends.

There is a new little hierarchy of BinaryEmittedArtifacts.
Implementations of that abstract class exist for jar entries and for
wrapping a preexisting EmittedArtifact.

There is one skimpy test case.  It checks that if one final linker
produces
an artifact that other final linkers will see it.  This is also a test
that PRE/PRIMARY/POST is respected for final linkers.

To factor out Link a little bit, the patch adds an OutputFileSet
interface.  That interface can target a directory or a jar.

LinkerContext now has getLinkerShortName(Class) for reasoning about
the emitted file names of private linker artifacts.  This is needed in
final calls to Linker.link because they deal with binary emitted
artifacts.  Linkers can't know their own short name, because it depends
on what the module's gwt.xml file has.

LinkerContext also has getModuleScriptReferences() and
getModuleStylesheetReferences().  This means we don't have to create
artifacts that get passed all the way through to the final link step.
I can add it back if necessary, but this way is simple and should run
fast.



http://gwt-code-reviews.appspot.com/78805

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: RR : Add lightweight Scheduler API

2009-10-14 Thread bruce

Assuming you've tested the RESCUE SSW behavior and that Joel likes it,
this LGTM.

http://gwt-code-reviews.appspot.com/77820

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Refactored DisclosurePanel and better DisclosurePanelParser

2009-10-14 Thread jgw

Broadly, I'm not entirely sure what we're trying to achieve by promoting
DisclosurePanelHeader to a public top-level class. It's pretty complex,
for a seemingly simple problem. If you were to replace it wholesale
within an application, you will pretty much be replacing the entire
widget.

It seems that being able to (a) replace the images, and (b) replace the
header contents with an arbitrary widget, would handle all reasonable
use-cases. And it doesn't really solve the problem Thomas mentions with
the focusable part of the header (i.e., the anchor) interfering with
form elements placed within it.

Am I missing something here?


http://gwt-code-reviews.appspot.com/78817/diff/15/1029
File user/src/com/google/gwt/user/client/ui/DisclosurePanel.java
(right):

http://gwt-code-reviews.appspot.com/78817/diff/15/1029#newcode62
Line 62: super(DOM.createAnchor());
On 2009/10/14 12:33:13, t.broyer wrote:
 Couldn't you use a FocusImpl instead, and therefore fix issue 1449?
 (might have implications with using focusable widgets within the
header though,
 particularly when using FocusImplOld, so maybe there rather shouldn't
be a
 ClickableHeader at all within DisclosurePanel, and defer the
focus/open/close
 handling to the header widget instead; and provide a wrapper
equivalent to this
 ClickableHeader for non-focusable/non-clickable widgets)

I don't actually believe that switching from using an anchor to
FocusImpl will make much of a difference. They both have the effect of
wrapping the contained widget in a focusable area, which is necessary
to make them keyboard-accessible. It's not immediately obvious how we
could *both* make the header focusable, *and* not interfere with form
elements stuck inside it.

http://gwt-code-reviews.appspot.com/78817

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Allows multiple sources on a ui:style

2009-10-14 Thread jgw

On 2009/10/13 21:00:25, Ray Ryan wrote:
 Another one for you, Joel. This allows multiple source files to be
specified for
 a ui:style, just like any other CssResource.

 It also allows you to put body text on a ui:style that has sources.
The body
 becomes just one more source file, the last one--nice for local tweaks
on
 centrally defined styles, perhaps.

 That doesn't actually work yet, though. It exposes a bug on
 ResourceGeneratorUtil, logged separately. Bob and I figure that fix
can happen
 post MS2, and needn't gate this one.

LGTM.

http://gwt-code-reviews.appspot.com/77819

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] RR : GWT 2.0 Bugfix when rewriting static calls with JMultiExpr qualifiers

2009-10-14 Thread bobv

Reviewers: scottb,

Message:
Review requested.  The explanation is longer than the bugfix.

Description:
This fixes a problem where a statically-initialized field could be
referred to before it has been initialized by its clinit.

I found this pattern would result in invalid code generation;

class NiceApi {
   static Foo IMPL = new FooImpl();

   static NiceApi get() { return IMPL; }

   interface InnerIntf {}

   abstract void instance(InnerIntf inner);
}

class NiceApiImpl extends NiceApi {
   static Object SOME_FIELD = new Object();
   void instance(InnerIntf inner) {
 instanceImpl(innerIntf);
   }

   static void instanceImpl(InnerIntf inner) {
 SOME_FIELD.doSomething(inner);
   }
}


could get reduced to

doSomething(SOME_FIELD, (FooImplClinit(), moreCode));


Please review this at http://gwt-code-reviews.appspot.com/78818

Affected files:
   M dev/core/src/com/google/gwt/dev/jjs/impl/MakeCallsStatic.java


Index: dev/core/src/com/google/gwt/dev/jjs/impl/MakeCallsStatic.java
diff --git a/dev/core/src/com/google/gwt/dev/jjs/impl/MakeCallsStatic.java  
b/dev/core/src/com/google/gwt/dev/jjs/impl/MakeCallsStatic.java
index  
7a7f6b8481c606693a634d9ae1219c56444d2437..1fe417ad801aef52a677c146aece7f5744c91e68
  
100644
--- a/dev/core/src/com/google/gwt/dev/jjs/impl/MakeCallsStatic.java
+++ b/dev/core/src/com/google/gwt/dev/jjs/impl/MakeCallsStatic.java
@@ -19,6 +19,7 @@ import com.google.gwt.dev.jjs.SourceInfo;
  import com.google.gwt.dev.jjs.ast.Context;
  import com.google.gwt.dev.jjs.ast.JAbstractMethodBody;
  import com.google.gwt.dev.jjs.ast.JClassType;
+import com.google.gwt.dev.jjs.ast.JExpression;
  import com.google.gwt.dev.jjs.ast.JMethod;
  import com.google.gwt.dev.jjs.ast.JMethodBody;
  import com.google.gwt.dev.jjs.ast.JMethodCall;
@@ -31,6 +32,7 @@ import com.google.gwt.dev.jjs.ast.JStatement;
  import com.google.gwt.dev.jjs.ast.JThisRef;
  import com.google.gwt.dev.jjs.ast.JType;
  import com.google.gwt.dev.jjs.ast.JVisitor;
+import com.google.gwt.dev.jjs.ast.js.JMultiExpression;
  import com.google.gwt.dev.jjs.ast.js.JsniMethodBody;
  import com.google.gwt.dev.js.ast.JsContext;
  import com.google.gwt.dev.js.ast.JsExpression;
@@ -320,15 +322,31 @@ public class MakeCallsStatic {
  return new MakeCallsStatic(program).execImpl();
}

-  static JMethodCall makeStaticCall(JMethodCall x, JMethod newMethod) {
+  static JExpression makeStaticCall(JMethodCall x, JMethod newMethod) {
  // Update the call site
  JMethodCall newCall = new JMethodCall(x.getSourceInfo().makeChild(
  MakeCallsStatic.class, Devirtualized function call), null,  
newMethod);

-// The qualifier becomes the first arg
-newCall.addArg(x.getInstance());
-newCall.addArgs(x.getArgs());
-return newCall;
+/*
+ * If the qualifier is a JMultiExpression, invoke on the last value.  
This
+ * ensures that clinits maintain the same execution order relative to
+ * parameters in deeply-inlined scenarios.
+ */
+// (a, b).foo() -- (a, foo(b))
+if (x.getInstance() instanceof JMultiExpression) {
+  JMultiExpression multi = (JMultiExpression) x.getInstance();
+  int lastIndex = multi.exprs.size() - 1;
+  newCall.addArg(multi.exprs.get(lastIndex));
+  newCall.addArgs(x.getArgs());
+  multi.exprs.set(lastIndex, newCall);
+  return multi;
+} else {
+  // The qualifier becomes the first arg
+  // a.foo(b) -- foo(a,b)
+  newCall.addArg(x.getInstance());
+  newCall.addArgs(x.getArgs());
+  return newCall;
+}
}

protected SetJMethod toBeMadeStatic = new HashSetJMethod();



--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: RR : Make StyleInjector use Scheduler.scheduleFinally() API

2009-10-14 Thread jgw

On 2009/10/14 04:58:42, bruce wrote:
 LGTM with a typo fix. An idea for an incredibly trivial improvement if
you just
 want to change something more for the heck of it.

 http://gwt-code-reviews.appspot.com/78816/diff/1/2
 File user/src/com/google/gwt/dom/client/StyleInjector.java (right):

 http://gwt-code-reviews.appspot.com/78816/diff/1/2#newcode341
 Line 341: * The codewith/code parameter is used to support the
deprecated
 API.
 with = which

 http://gwt-code-reviews.appspot.com/78816/diff/1/4
 File user/test/com/google/gwt/dom/client/StyleInjectorTest.java
(right):

 http://gwt-code-reviews.appspot.com/78816/diff/1/4#newcode136
 Line 136: delayTestFinish(500);
 (Ignore if you please) The '500' here seems like it wants to be a
symbolic
 constants, along with the other bare '500's elsewhere in the file.

LGTM2.

http://gwt-code-reviews.appspot.com/78816

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Comment on UiBinderI18n in google-web-toolkit

2009-10-14 Thread codesite-noreply

Comment by benzheren:

I am following example on wiki:  
http://code.google.com/p/google-web-toolkit/wiki/UiBinderI18n
to try out UiBinderi18n in the latest 2.0 MS 1 release. I wrote a
sample ui.xml file like this:
{{{
?xml version=1.0 encoding=UTF-8?
ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
 xmlns:g='urn:import:com.google.gwt.user.client.ui'
 ui:defaultLocale=en_us
 ui:generateKeys=com.google.gwt.i18n.rebind.keygen.MD5KeyGenerator
ui:generateFormat=com.google.gwt.i18n.rebind.format.PropertiesFormat
 ui:generateFilename=myapp_translate_source
ui:generateLocales=default
 g:HTMLPanel
 table align=center
 tbody
 tr
 td style=font-weight: bold;  
colspan=2
 ui:msg  
key=enterYourNamePlease enter your name:/ui:msg
 /td
 /tr
 tr
 td id=nameFieldContainer
 g:TextBox  
ui:field=nameField /
 /td
 td id=sendButtonContainer
 g:Button  
ui:field=sendButton text=Send /
 /td
 /tr
 /tbody
 /table
 /g:HTMLPanel
/ui:UiBinder
}}}
But it does not generate any file, shall I do something extra to make
it work?
Thanks!


For more information:
http://code.google.com/p/google-web-toolkit/wiki/UiBinderI18n

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Refactored DisclosurePanel and better DisclosurePanelParser

2009-10-14 Thread Ray Ryan
First, sorry to throw something like this at you at the last second. What
was that Bruce said about getting enough sleep and making good decisions?
The other goal, which I realize know I didn't hit, was to be able to put the
stock header in one spot and the panel it opens or closes in another spot.
It's something I've had to do in real apps surprisingly often, and I thought
I saw an easy way to get there. But because DisclosurePanelHeader isn't
master of its own clickiness, that's a fail.

I'll put DPanel back the way it was, but using ImageResource. (Thanks to git
I have that exact spot working already in my local repository.)

While we're chatting, what do you like better:

g:DisclosurePanel
  g:header Whoopie doo /g:header
  g:LabelI am the hidden part/g:Label
/g:DisclosurePanel

or

g:DisclosurePanel
  g:header Whoopie doo /g:header
  g:body
g:LabelI am the hidden part/g:Label
  /g:body
/g:DisclosurePanel

I implemented the former, but know I think the latter is better.

On Wed, Oct 14, 2009 at 8:43 AM, j...@google.com wrote:

 Broadly, I'm not entirely sure what we're trying to achieve by promoting
 DisclosurePanelHeader to a public top-level class. It's pretty complex,
 for a seemingly simple problem. If you were to replace it wholesale
 within an application, you will pretty much be replacing the entire
 widget.

 It seems that being able to (a) replace the images, and (b) replace the
 header contents with an arbitrary widget, would handle all reasonable
 use-cases. And it doesn't really solve the problem Thomas mentions with
 the focusable part of the header (i.e., the anchor) interfering with
 form elements placed within it.

 Am I missing something here?


 http://gwt-code-reviews.appspot.com/78817/diff/15/1029
 File user/src/com/google/gwt/user/client/ui/DisclosurePanel.java
 (right):

 http://gwt-code-reviews.appspot.com/78817/diff/15/1029#newcode62
 Line 62: super(DOM.createAnchor());
 On 2009/10/14 12:33:13, t.broyer wrote:

 Couldn't you use a FocusImpl instead, and therefore fix issue 1449?
 (might have implications with using focusable widgets within the

 header though,

 particularly when using FocusImplOld, so maybe there rather shouldn't

 be a

 ClickableHeader at all within DisclosurePanel, and defer the

 focus/open/close

 handling to the header widget instead; and provide a wrapper

 equivalent to this

 ClickableHeader for non-focusable/non-clickable widgets)


 I don't actually believe that switching from using an anchor to
 FocusImpl will make much of a difference. They both have the effect of
 wrapping the contained widget in a focusable area, which is necessary
 to make them keyboard-accessible. It's not immediately obvious how we
 could *both* make the header focusable, *and* not interfere with form
 elements stuck inside it.


 http://gwt-code-reviews.appspot.com/78817


--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Refactored DisclosurePanel and better DisclosurePanelParser

2009-10-14 Thread t . broyer
On 2009/10/14 15:43:38, jgw wrote:
 Broadly, I'm not entirely sure what we're trying to achieve by
promoting
 DisclosurePanelHeader to a public top-level class. It's pretty
complex, for a
 seemingly simple problem. If you were to replace it wholesale within
an
 application, you will pretty much be replacing the entire widget.

 It seems that being able to (a) replace the images, and (b) replace
the header
 contents with an arbitrary widget, would handle all reasonable
use-cases.

Say I want to add an online indicator as in the chat panel in GMail?
or I want to add a button in the header (my use case: I have a
disclosure panel for data filters, much similar to GMail saved searches
or labels, and initially I'd have liked to put the create filter
button in the header, but that would have meant re-implementing the
image toggle, so I gave up in included it within the disclosure panel's
content)? also think about Reader's menu in its left pane panels.

   And it
 doesn't really solve the problem Thomas mentions with the focusable
part of the
 header (i.e., the anchor) interfering with form elements placed within
it.

The only issue if you replace the anchor with a FocusImpl is in the case
it is a FocusImplOld (i.e. in WebKit, although Safari 4 and Chrome 3 now
correctly implement tabIndex as a way to make any element focusable –I
don't know about mobile webkits such as the iPhone and Android, but
they're not officially supported afaik–, and in old gecko, which was
still supported only because of the hosted mode), because it'll steal
the focus from a focusable child (see issue 1471)


http://gwt-code-reviews.appspot.com/78817/diff/15/1029
File user/src/com/google/gwt/user/client/ui/DisclosurePanel.java
(right):

http://gwt-code-reviews.appspot.com/78817/diff/15/1029#newcode62
Line 62: super(DOM.createAnchor());
On 2009/10/14 15:43:39, jgw wrote:

 I don't actually believe that switching from using an anchor to
FocusImpl will
 make much of a difference. They both have the effect of wrapping the
contained
 widget in a focusable area, which is necessary to make them
 keyboard-accessible.

but the anchor impacts your CSS, as you'll inherit its color:blue style
in your header text.

 It's not immediately obvious how we could *both* make the
 header focusable, *and* not interfere with form elements stuck inside
it.

Hence my other proposition, to have two public disclosure headers: one
that can only contain text, as is the case today, and one that can
contain widget (in this case, only the image is focusable and
clickable). And if you want to replace the whole header with your own
(which handles the image display, as of today), that's still possible,
but you'd also have to handle focusability and clicks (for backwards
compatibility, widgets that do not implement OpensAndCloses –or should
it be OpensAndCloses.Handler?– would automatically be wrapped within a
special, private header based on e.g. a FocusPanel).

http://gwt-code-reviews.appspot.com/78817

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Refactored DisclosurePanel and better DisclosurePanelParser

2009-10-14 Thread Ray Ryan
Thomas, this all makes sense but I don't think we can make it happen for
2.0. Certainly not MS2, and probably not for the RC (though it's tempting,
DisclosurePanel is so close to being so much more useful). Do you mind
creating an issue on the public tracker capturing this?

On Wed, Oct 14, 2009 at 9:45 AM, t.bro...@gmail.com wrote:

 On 2009/10/14 15:43:38, jgw wrote:

 Broadly, I'm not entirely sure what we're trying to achieve by

 promoting

 DisclosurePanelHeader to a public top-level class. It's pretty

 complex, for a

 seemingly simple problem. If you were to replace it wholesale within

 an

 application, you will pretty much be replacing the entire widget.


  It seems that being able to (a) replace the images, and (b) replace

 the header

 contents with an arbitrary widget, would handle all reasonable

 use-cases.

 Say I want to add an online indicator as in the chat panel in GMail?
 or I want to add a button in the header (my use case: I have a
 disclosure panel for data filters, much similar to GMail saved searches
 or labels, and initially I'd have liked to put the create filter
 button in the header, but that would have meant re-implementing the
 image toggle, so I gave up in included it within the disclosure panel's
 content)? also think about Reader's menu in its left pane panels.

   And it
 doesn't really solve the problem Thomas mentions with the focusable

 part of the

 header (i.e., the anchor) interfering with form elements placed within

 it.

 The only issue if you replace the anchor with a FocusImpl is in the case
 it is a FocusImplOld (i.e. in WebKit, although Safari 4 and Chrome 3 now
 correctly implement tabIndex as a way to make any element focusable –I
 don't know about mobile webkits such as the iPhone and Android, but
 they're not officially supported afaik–, and in old gecko, which was
 still supported only because of the hosted mode), because it'll steal
 the focus from a focusable child (see issue 1471)


 http://gwt-code-reviews.appspot.com/78817/diff/15/1029
 File user/src/com/google/gwt/user/client/ui/DisclosurePanel.java
 (right):

 http://gwt-code-reviews.appspot.com/78817/diff/15/1029#newcode62
 Line 62: super(DOM.createAnchor());
 On 2009/10/14 15:43:39, jgw wrote:

  I don't actually believe that switching from using an anchor to

 FocusImpl will

 make much of a difference. They both have the effect of wrapping the

 contained

 widget in a focusable area, which is necessary to make them
 keyboard-accessible.


 but the anchor impacts your CSS, as you'll inherit its color:blue style
 in your header text.

  It's not immediately obvious how we could *both* make the
 header focusable, *and* not interfere with form elements stuck inside

 it.

 Hence my other proposition, to have two public disclosure headers: one
 that can only contain text, as is the case today, and one that can
 contain widget (in this case, only the image is focusable and
 clickable). And if you want to replace the whole header with your own
 (which handles the image display, as of today), that's still possible,
 but you'd also have to handle focusability and clicks (for backwards
 compatibility, widgets that do not implement OpensAndCloses –or should
 it be OpensAndCloses.Handler?– would automatically be wrapped within a
 special, private header based on e.g. a FocusPanel).


 http://gwt-code-reviews.appspot.com/78817


--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: RR : Add lightweight Scheduler API

2009-10-14 Thread Ray Ryan
Yes, please, please, please make this instance based. Every serious app I've
seen winds up creating its own interface to wrap around our static calls to
make them testable (and the ones on commands in particular), and it's
generally a painful retrofit. It also becomes a real difficultly for those
writing test runners.

On Wed, Oct 14, 2009 at 7:32 AM, br...@google.com wrote:


 Assuming you've tested the RESCUE SSW behavior and that Joel likes it,
 this LGTM.

 http://gwt-code-reviews.appspot.com/77820

 


--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: RR : Add lightweight Scheduler API

2009-10-14 Thread BobV

On Wed, Oct 14, 2009 at 1:03 PM, Ray Ryan rj...@google.com wrote:
 Yes, please, please, please make this instance based. Every serious app I've
 seen winds up creating its own interface to wrap around our static calls to
 make them testable (and the ones on commands in particular), and it's
 generally a painful retrofit. It also becomes a real difficultly for those
 writing test runners.

The current version of the patch is instance-based.  I assume it's ok
to have Scheduler be an abstract base class?

-- 
Bob Vawter
Google Web Toolkit Team

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: RR : Add lightweight Scheduler API

2009-10-14 Thread Ray Ryan
On Wed, Oct 14, 2009 at 10:04 AM, BobV b...@google.com wrote:

 On Wed, Oct 14, 2009 at 1:03 PM, Ray Ryan rj...@google.com wrote:
  Yes, please, please, please make this instance based. Every serious app
 I've
  seen winds up creating its own interface to wrap around our static calls
 to
  make them testable (and the ones on commands in particular), and it's
  generally a painful retrofit. It also becomes a real difficultly for
 those
  writing test runners.

 The current version of the patch is instance-based.  I assume it's ok
 to have Scheduler be an abstract base class?


Would I be able to mock it out in a JRE test? If not, providing an interface
that the base class implements would be very helpful.


 --
 Bob Vawter
 Google Web Toolkit Team


--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: RR : Add lightweight Scheduler API

2009-10-14 Thread Ray Ryan
LGTM

On Wed, Oct 14, 2009 at 10:06 AM, Ray Ryan rj...@google.com wrote:



 On Wed, Oct 14, 2009 at 10:04 AM, BobV b...@google.com wrote:

 On Wed, Oct 14, 2009 at 1:03 PM, Ray Ryan rj...@google.com wrote:
  Yes, please, please, please make this instance based. Every serious app
 I've
  seen winds up creating its own interface to wrap around our static calls
 to
  make them testable (and the ones on commands in particular), and it's
  generally a painful retrofit. It also becomes a real difficultly for
 those
  writing test runners.

 The current version of the patch is instance-based.  I assume it's ok
 to have Scheduler be an abstract base class?


 Would I be able to mock it out in a JRE test? If not, providing an
 interface that the base class implements would be very helpful.


 --
 Bob Vawter
 Google Web Toolkit Team




--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Refactored DisclosurePanel and better DisclosurePanelParser

2009-10-14 Thread Joel Webber
How's this sound for a proposal to wrap all this up, then:- Drop the public
DisclosureHeader class, as Ray suggested earlier.
- Implement the g:header/g:body/ version of the parser (I agree it's
probably clearer).
- Create a separate issue (possibly eclipsing issue 1449, possibly simply
clarifying it), that captures the desire to be able to add focusable widgets
to the header without conflicting with the anchor.

?

On Wed, Oct 14, 2009 at 12:55 PM, Ray Ryan rj...@google.com wrote:

 Thomas, this all makes sense but I don't think we can make it happen for
 2.0. Certainly not MS2, and probably not for the RC (though it's tempting,
 DisclosurePanel is so close to being so much more useful). Do you mind
 creating an issue on the public tracker capturing this?


 On Wed, Oct 14, 2009 at 9:45 AM, t.bro...@gmail.com wrote:

 On 2009/10/14 15:43:38, jgw wrote:

 Broadly, I'm not entirely sure what we're trying to achieve by

 promoting

 DisclosurePanelHeader to a public top-level class. It's pretty

 complex, for a

 seemingly simple problem. If you were to replace it wholesale within

 an

 application, you will pretty much be replacing the entire widget.


  It seems that being able to (a) replace the images, and (b) replace

 the header

 contents with an arbitrary widget, would handle all reasonable

 use-cases.

 Say I want to add an online indicator as in the chat panel in GMail?
 or I want to add a button in the header (my use case: I have a
 disclosure panel for data filters, much similar to GMail saved searches
 or labels, and initially I'd have liked to put the create filter
 button in the header, but that would have meant re-implementing the
 image toggle, so I gave up in included it within the disclosure panel's
 content)? also think about Reader's menu in its left pane panels.

   And it
 doesn't really solve the problem Thomas mentions with the focusable

 part of the

 header (i.e., the anchor) interfering with form elements placed within

 it.

 The only issue if you replace the anchor with a FocusImpl is in the case
 it is a FocusImplOld (i.e. in WebKit, although Safari 4 and Chrome 3 now
 correctly implement tabIndex as a way to make any element focusable –I
 don't know about mobile webkits such as the iPhone and Android, but
 they're not officially supported afaik–, and in old gecko, which was
 still supported only because of the hosted mode), because it'll steal
 the focus from a focusable child (see issue 1471)


 http://gwt-code-reviews.appspot.com/78817/diff/15/1029
 File user/src/com/google/gwt/user/client/ui/DisclosurePanel.java
 (right):

 http://gwt-code-reviews.appspot.com/78817/diff/15/1029#newcode62
 Line 62: super(DOM.createAnchor());
 On 2009/10/14 15:43:39, jgw wrote:

  I don't actually believe that switching from using an anchor to

 FocusImpl will

 make much of a difference. They both have the effect of wrapping the

 contained

 widget in a focusable area, which is necessary to make them
 keyboard-accessible.


 but the anchor impacts your CSS, as you'll inherit its color:blue style
 in your header text.

  It's not immediately obvious how we could *both* make the
 header focusable, *and* not interfere with form elements stuck inside

 it.

 Hence my other proposition, to have two public disclosure headers: one
 that can only contain text, as is the case today, and one that can
 contain widget (in this case, only the image is focusable and
 clickable). And if you want to replace the whole header with your own
 (which handles the image display, as of today), that's still possible,
 but you'd also have to handle focusability and clicks (for backwards
 compatibility, widgets that do not implement OpensAndCloses –or should
 it be OpensAndCloses.Handler?– would automatically be wrapped within a
 special, private header based on e.g. a FocusPanel).


 http://gwt-code-reviews.appspot.com/78817




--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] [google-web-toolkit] r6372 committed - Clean up formatting and ant -p output in ant build files....

2009-10-14 Thread codesite-noreply

Revision: 6372
Author: j...@google.com
Date: Wed Oct 14 11:08:29 2009
Log: Clean up formatting and ant -p output in ant build files.

Patch by: jat
Review by: jlabanca (desk)

http://code.google.com/p/google-web-toolkit/source/detail?r=6372

Modified:
  /trunk/common.ant.xml
  /trunk/user/build.xml

===
--- /trunk/common.ant.xml   Tue Oct 13 16:57:19 2009
+++ /trunk/common.ant.xml   Wed Oct 14 11:08:29 2009
@@ -340,13 +340,15 @@

taskdef resource=emma_ant.properties classpathref=emma.taskdef.lib  
/

-  target name=compile.emma.if.enabled description=Instruments emma  
classes unless=emma.compiled
+  !-- Instruments emma classes --
+  target name=compile.emma.if.enabled unless=emma.compiled
  delete dir=${javac.emma.out} /
  property name=emma.compiled value=true /
  antcall target=-compile.emma.if.enabled /
/target

-  target name=-compile.emma.if.enabled description=Instruments emma  
classes if=emma.enabled
+  !-- Instruments emma classes --
+  target name=-compile.emma.if.enabled if=emma.enabled
  mkdir dir=${javac.emma.out} /
  path id=emma.classpath
pathelement location=${javac.out} /
@@ -359,7 +361,8 @@
  /emma
/target

-  target name=-create.emma.coverage.if.enabled description=Create the  
emma coverage directory if=emma.enabled
+  !-- Create the emma coverage directory --
+  target name=-create.emma.coverage.if.enabled if=emma.enabled
  delete dir=${test.emma.coverage} /
  mkdir dir=${test.emma.coverage} /
/target
@@ -367,7 +370,8 @@
!-- Default implementations of the required targets; projects should
override the ones that matter --
target name=all depends=verify /
-  target name=verify depends=checkstyle, test description=Runs tests  
and checkstyle static analysis /
+  target name=verify depends=checkstyle, test
+  description=Runs tests and checkstyle static analysis /
target name=checkstyle /
target name=test depends=build /
target name=build /
===
--- /trunk/user/build.xml   Wed Oct 14 08:30:35 2009
+++ /trunk/user/build.xml   Wed Oct 14 11:08:29 2009
@@ -11,7 +11,10 @@
  isset property=gwt.selenium.hosts /
/condition

-  !-- BrowserManagerServer_Stub compiled using rmic, which doesn't  
generate full source code --
+  !--
+BrowserManagerServer_Stub compiled using rmic, which doesn't generate
+full source code
+  --
property name=emma.filter.exclude value=*BrowserManagerServer_Stub*  
/

import file=${gwt.root}/common.ant.xml /
@@ -24,15 +27,21 @@
property name=gwt.junit.testcase.dev.includes  
value=${gwt.junit.testcase.includes} /
property name=gwt.junit.testcase.dev.excludes value= /

-  !-- CoverageTest.java fails due to a javac bug in sun/OpenJDK's Java.  
See the file contents for details --
+  !--
+CoverageTest.java fails due to a javac bug in sun/OpenJDK's Java. See  
the
+file contents for details
+  --
property name=gwt.junit.testcase.dev.emma.includes  
value=**/*Suite.class,com/google/gwt/dev/jjs/test/*Test.class /
property name=gwt.junit.testcase.dev.emma.excludes  
value=**/CoverageTest.class,**/CompilerSuite.class /

-  !-- Only IFrameLinker actually supports -noserver mode; run the other  
linker tests if and when they are supported --
+  !--
+Only IFrameLinker actually supports -noserver mode; run the other  
linker
+tests if and when they are supported
+  --
property name=gwt.junit.testcase.noserver.includes  
value=**/IFrameLinkerTest.class /
property name=gwt.junit.testcase.noserver.excludes value= /

-  !--
+  !--
  Whether I18NSuite should test e.g. Foo$InnerMsgs_fr.properties (if the
  value is dollar) or Foo_Inner_fr.properties (for bar)
 --
@@ -70,22 +79,26 @@

  !-- Build the BrowserManagerServer_Stub to allow remote browser  
testing --
  rmic base=${javac.out}
-   
classname=com.google.gwt.junit.remote.BrowserManagerServer
-  stubversion=1.2/
+classname=com.google.gwt.junit.remote.BrowserManagerServer
+stubversion=1.2/
/target

!--
  Compile test code for dev to pick up TypeOracleTestUtils and others.
+Compiles test dependencies in dev/core
--
-  target name=compile.dev.tests description=Compiles test dependencies  
in dev/core
+  target name=compile.dev.tests
  gwt.ant dir=../dev target=compile.tests /
/target

+  !--
+  Compiles the test code for this project
+  --
target name=compile.tests
-depends=compile.dev.tests, compile.emma.if.enabled
-description=Compiles the test code for this project
+  depends=compile.dev.tests, compile.emma.if.enabled
  mkdir dir=${javac.junit.out} /
-gwt.javac srcdir=test excludes=com/google/gwt/langtest/**  
destdir=${javac.junit.out}
+gwt.javac srcdir=test excludes=com/google/gwt/langtest/**
+destdir=${javac.junit.out}
classpath
  pathelement 

[gwt-contrib] Re: Refactored DisclosurePanel and better DisclosurePanelParser

2009-10-14 Thread jgw
On 2009/10/14 16:45:38, t.broyer wrote:
 On 2009/10/14 15:43:38, jgw wrote:
  Broadly, I'm not entirely sure what we're trying to achieve by
promoting
  DisclosurePanelHeader to a public top-level class. It's pretty
complex, for a
  seemingly simple problem. If you were to replace it wholesale within
an
  application, you will pretty much be replacing the entire widget.
 
  It seems that being able to (a) replace the images, and (b) replace
the header
  contents with an arbitrary widget, would handle all reasonable
use-cases.

 Say I want to add an online indicator as in the chat panel in GMail?
or I want
 to add a button in the header (my use case: I have a disclosure panel
for data
 filters, much similar to GMail saved searches or labels, and initially
I'd have
 liked to put the create filter button in the header, but that would
have meant
 re-implementing the image toggle, so I gave up in included it within
the
 disclosure panel's content)? also think about Reader's menu in its
left pane
 panels.

   And it
  doesn't really solve the problem Thomas mentions with the focusable
part of
 the
  header (i.e., the anchor) interfering with form elements placed
within it.

 The only issue if you replace the anchor with a FocusImpl is in the
case it is a
 FocusImplOld (i.e. in WebKit, although Safari 4 and Chrome 3 now
correctly
 implement tabIndex as a way to make any element focusable –I don't
know about
 mobile webkits such as the iPhone and Android, but they're not
officially
 supported afaik–, and in old gecko, which was still supported only
because of
 the hosted mode), because it'll steal the focus from a focusable child
(see
 issue 1471)

 http://gwt-code-reviews.appspot.com/78817/diff/15/1029
 File user/src/com/google/gwt/user/client/ui/DisclosurePanel.java
(right):

 http://gwt-code-reviews.appspot.com/78817/diff/15/1029#newcode62
 Line 62: super(DOM.createAnchor());
 On 2009/10/14 15:43:39, jgw wrote:
 
  I don't actually believe that switching from using an anchor to
FocusImpl will
  make much of a difference. They both have the effect of wrapping the
contained
  widget in a focusable area, which is necessary to make them
  keyboard-accessible.

 but the anchor impacts your CSS, as you'll inherit its color:blue
style in your
 header text.

  It's not immediately obvious how we could *both* make the
  header focusable, *and* not interfere with form elements stuck
inside it.

 Hence my other proposition, to have two public disclosure headers: one
that can
 only contain text, as is the case today, and one that can contain
widget (in
 this case, only the image is focusable and clickable). And if you want
to
 replace the whole header with your own (which handles the image
display, as of
 today), that's still possible, but you'd also have to handle
focusability and
 clicks (for backwards compatibility, widgets that do not implement
 OpensAndCloses –or should it be OpensAndCloses.Handler?– would
automatically be
 wrapped within a special, private header based on e.g. a FocusPanel).

[Repeat of what I said earlier on email but should have said here]

How's this sound for a proposal to wrap all this up, then:
- Drop the public DisclosureHeader class, as Ray suggested earlier.
- Implement the g:header/g:body/ version of the parser (I agree it's
probably clearer).
- Create a separate issue (possibly eclipsing issue 1449, possibly
simply clarifying it), that captures the desire to be able to add
focusable widgets to the header without conflicting with the anchor.
?

http://gwt-code-reviews.appspot.com/78817

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: RR : GWT 2.0 Bugfix when rewriting static calls with JMultiExpr qualifiers

2009-10-14 Thread scottb

Bob, this patch looks good.  But I have to admit I can't understand why
it's currently broken.

Explain to me again why this transformation breaks?
(a, b).foo() -- foo((a,b))

I didn't completely follow the pattern you showed.


http://gwt-code-reviews.appspot.com/78818/diff/1/2
File dev/core/src/com/google/gwt/dev/jjs/impl/MakeCallsStatic.java
(right):

http://gwt-code-reviews.appspot.com/78818/diff/1/2#newcode336
Line 336: if (x.getInstance() instanceof JMultiExpression) {
Nitpick: can you swap these two lines?

http://gwt-code-reviews.appspot.com/78818

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: RR : GWT 2.0 Bugfix when rewriting static calls with JMultiExpr qualifiers

2009-10-14 Thread scottb

Also: test case por favor?

http://gwt-code-reviews.appspot.com/78818

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] [google-web-toolkit] r6373 committed - Edited wiki page through web user interface.

2009-10-14 Thread codesite-noreply

Revision: 6373
Author: tamplinjohn
Date: Wed Oct 14 12:02:28 2009
Log: Edited wiki page through web user interface.
http://code.google.com/p/google-web-toolkit/source/detail?r=6373

Modified:
  /wiki/UsingOOPHM.wiki

===
--- /wiki/UsingOOPHM.wiki   Tue Oct 13 17:10:54 2009
+++ /wiki/UsingOOPHM.wiki   Wed Oct 14 12:02:28 2009
@@ -38,26 +38,8 @@
Download and run the  
[http://google-web-toolkit.googlecode.com/svn/trunk/plugins/ie/prebuilt/GwtDevModeIePluginInstaller.msi
  
GWT Dev Mode Plugin for IE] installer.

  = Using OOPHM =
-OOPHM is currently in trunk (it is not and will not be available with any  
version of GWT earlier than 2.0), but is not enabled by default because the  
UI needs some work and some features are missing, plus it just hasn't had  
enough testing to be sure it is completely usable as a replacement.  So, to  
use it now, you need to add gwt-dev-oophm.jar at the beginning of your  
classpath.  There are a number of ways to do it:
-
-== Getting the right Classpath ==
-
-  * *webAppCreator*
-  If you are creating a war-style project, you can just use webAppCreator  
and it will generate an ant target oophm for you.  You can just run ant  
oophm and it will run your application using OOPHM instead of legacy  
hosted mode.  If you have an existing project, you can delete the build.xml  
file and then run webAppCreator with -ignore and it won't overwrite any  
existing files.
-
-  * *Eclipse*
-  If you have an existing launch config for Eclipse, simply edit the  
classpath for that launch config and add gwt-dev-oophm.jar at the top of  
the classpath.
-
-blockquote _Life is more complicated if you are running Eclipse on a  
Macintosh, and working with GWT source rather than release jars. In that  
case you will need to make sure that -XstartOnFirstThread is not in your  
launch config arguments, and you will have to remove the SWT jar from your  
gwt-dev-mac project._
-
-_However, if you want to run legacy hosted mode again (e.g. to run a  
GWTTestCase), you will have to restore the SWT jar to gwt-dev-mac_
-
-_Here's a recipe: OophmForMacBasedGwtContributors_ /blockquote
-
-  * *Others*
-  Basically, wherever you set the classpath that includes  
gwt-dev-{platform}.jar, make sure that gwt-dev-oophm.jar is searched before  
the platform-specific jar.
-
-== Running ==
-Just execute the GWTShell or !HostedMode classes as usual.  A swing UI  
will show up and it will try and launch firefox with the proper URL -- it  
does this by just running firefox URL, so if you don't have the path set  
properly or if you need to run a different executable it will fail -- in  
that case, just copy the URL from the log window and paste it in the  
browser you want to use.
+OOPHM is currently in trunk (it is not and will not be available with any  
version of GWT earlier than 2.0), and is now enabled by default.
+
+If you are using the Eclipse plugin, you may need to manually create a  
plain Java launch config until version 1.2 is available (1.12 has some  
support).

  Note that calls between Java and JS are synchronous, and that means the  
plugin has to block the browser while a Java method is executing.  If you  
are debugging your Java code, the browser will appear hung until you return  
back to browser-side code.

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Add a HelpInfo link for old plugins

2009-10-14 Thread jat

Reviewers: amitmanjhi,

Description:
A warning is printed when a really old plugin connects to the code
server.  This adds a HelpInfo link, which points at the UsingOOPHM web
page for now, giving users information about getting a later plugin.

In the future, this will be changed to a better location.

Please review this at http://gwt-code-reviews.appspot.com/78819

Affected files:
   dev/oophm/src/com/google/gwt/dev/shell/BrowserChannelServer.java


Index: dev/oophm/src/com/google/gwt/dev/shell/BrowserChannelServer.java
===
--- dev/oophm/src/com/google/gwt/dev/shell/BrowserChannelServer.java 
(revision 6372)
+++ dev/oophm/src/com/google/gwt/dev/shell/BrowserChannelServer.java 
(working copy)
@@ -16,12 +16,15 @@
  package com.google.gwt.dev.shell;

  import com.google.gwt.core.ext.TreeLogger;
+import com.google.gwt.core.ext.TreeLogger.HelpInfo;
  import com.google.gwt.dev.shell.JsValue.DispatchObject;

  import java.io.IOException;
  import java.io.InputStream;
  import java.io.OutputStream;
+import java.net.MalformedURLException;
  import java.net.Socket;
+import java.net.URL;
  import java.util.HashMap;
  import java.util.Map;
  import java.util.Set;
@@ -233,8 +236,27 @@
  moduleName = oldLoadModule.getModuleName();
  userAgent = oldLoadModule.getUserAgent();
  protocolVersion = 1;
+HelpInfo helpInfo = new HelpInfo() {
+  @Override
+  public String getAnchorText() {
+return UsingOOPHM wiki page;
+  }
+
+  @Override
+  public URL getURL() {
+try {
+  // TODO(jat): better landing page for more info
+  return new URL(
+  
http://code.google.com/p/google-web-toolkit/wiki/UsingOOPHM;);
+} catch (MalformedURLException e) {
+  // can't happen
+  return null;
+}
+  }
+};
  logger.log(TreeLogger.WARN, Connection from old browser plugin  
-- 
-+ please upgrade to a later version for full functionality);
++ please upgrade to a later version for full functionality,  
null,
+helpInfo);
  break;
case CHECK_VERSIONS:
  String connectError = null;



--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Proposed API Addition - @WithModuleParameters on test cases

2009-10-14 Thread Pascal Muetschard
I've uploaded another patch set, which merges in the latest changes from the
trunk.

On Mon, Oct 12, 2009 at 2:34 AM, John Tamplin j...@google.com wrote:

 On Mon, Oct 12, 2009 at 12:03 AM, John LaBanca jlaba...@google.comwrote:

 @jat -
 When do you think we'll merge the htmlunit branch into trunk so we can
 check in this patch?


 We are supposed to ship MS2 on Wednesday, so it has to be real soon.

 --
 John A. Tamplin
 Software Engineer (GWT), Google


--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Add a HelpInfo link for old plugins

2009-10-14 Thread Amit Manjhi
LGTM

On Wed, Oct 14, 2009 at 12:05 PM, j...@google.com wrote:

 Reviewers: amitmanjhi,

 Description:
 A warning is printed when a really old plugin connects to the code
 server.  This adds a HelpInfo link, which points at the UsingOOPHM web
 page for now, giving users information about getting a later plugin.

 In the future, this will be changed to a better location.

 Please review this at http://gwt-code-reviews.appspot.com/78819

 Affected files:
  dev/oophm/src/com/google/gwt/dev/shell/BrowserChannelServer.java


 Index: dev/oophm/src/com/google/gwt/dev/shell/BrowserChannelServer.java
 ===
 --- dev/oophm/src/com/google/gwt/dev/shell/BrowserChannelServer.java
  (revision 6372)
 +++ dev/oophm/src/com/google/gwt/dev/shell/BrowserChannelServer.java
  (working copy)
 @@ -16,12 +16,15 @@
  package com.google.gwt.dev.shell;

  import com.google.gwt.core.ext.TreeLogger;
 +import com.google.gwt.core.ext.TreeLogger.HelpInfo;
  import com.google.gwt.dev.shell.JsValue.DispatchObject;

  import java.io.IOException;
  import java.io.InputStream;
  import java.io.OutputStream;
 +import java.net.MalformedURLException;
  import java.net.Socket;
 +import java.net.URL;
  import java.util.HashMap;
  import java.util.Map;
  import java.util.Set;
 @@ -233,8 +236,27 @@
 moduleName = oldLoadModule.getModuleName();
 userAgent = oldLoadModule.getUserAgent();
 protocolVersion = 1;
 +HelpInfo helpInfo = new HelpInfo() {
 +  @Override
 +  public String getAnchorText() {
 +return UsingOOPHM wiki page;
 +  }
 +
 +  @Override
 +  public URL getURL() {
 +try {
 +  // TODO(jat): better landing page for more info
 +  return new URL(
 +  
 http://code.google.com/p/google-web-toolkit/wiki/UsingOOPHM;);
 +} catch (MalformedURLException e) {
 +  // can't happen
 +  return null;
 +}
 +  }
 +};
 logger.log(TreeLogger.WARN, Connection from old browser plugin --
 
 -+ please upgrade to a later version for full functionality);
 ++ please upgrade to a later version for full functionality,
 null,
 +helpInfo);
 break;
   case CHECK_VERSIONS:
 String connectError = null;




--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Proposed API Addition - @WithModuleParameters on test cases

2009-10-14 Thread Bruce Johnson
@John L: You taking this one?

On Wed, Oct 14, 2009 at 12:08 PM, Pascal Muetschard
pmuetsch...@google.comwrote:

 I've uploaded another patch set, which merges in the latest changes from
 the trunk.


 On Mon, Oct 12, 2009 at 2:34 AM, John Tamplin j...@google.com wrote:

 On Mon, Oct 12, 2009 at 12:03 AM, John LaBanca jlaba...@google.comwrote:

 @jat -
 When do you think we'll merge the htmlunit branch into trunk so we can
 check in this patch?


 We are supposed to ship MS2 on Wednesday, so it has to be real soon.

 --
 John A. Tamplin
 Software Engineer (GWT), Google




--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] [google-web-toolkit] r6374 committed - Removing a statement from CoverageTest that triggers a javac bug....

2009-10-14 Thread codesite-noreply

Revision: 6374
Author: jlaba...@google.com
Date: Wed Oct 14 12:38:52 2009
Log: Removing a statement from CoverageTest that triggers a javac bug.

Patch by: jabanca
Review by: jat


http://code.google.com/p/google-web-toolkit/source/detail?r=6374

Modified:
  /trunk/user/test/com/google/gwt/dev/jjs/test/CoverageTest.java

===
--- /trunk/user/test/com/google/gwt/dev/jjs/test/CoverageTest.java  Mon Jul 
 
20 22:35:44 2009
+++ /trunk/user/test/com/google/gwt/dev/jjs/test/CoverageTest.java  Wed Oct 
 
14 12:38:52 2009
@@ -101,7 +101,7 @@
 * see Google's internal issue 1628473. This is likely to be an  
hindrance
 * if and when GWT attempts to read bytecode directly.
 */
-  new NamedLocal().new NamedLocalSub().foo();
+  // new NamedLocal().new NamedLocalSub().foo();
  }

  public void bar() {

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] [google-web-toolkit] r6375 committed - Removing emma exclusions from build file now that we removed the line ...

2009-10-14 Thread codesite-noreply

Revision: 6375
Author: jlaba...@google.com
Date: Wed Oct 14 12:48:54 2009
Log: Removing emma exclusions from build file now that we removed the line  
that triggers a javac bug in CoverageTest.

Patch by: jlabanca
Review by: jat


http://code.google.com/p/google-web-toolkit/source/detail?r=6375

Modified:
  /trunk/user/build.xml

===
--- /trunk/user/build.xml   Wed Oct 14 11:08:29 2009
+++ /trunk/user/build.xml   Wed Oct 14 12:48:54 2009
@@ -27,13 +27,6 @@
property name=gwt.junit.testcase.dev.includes  
value=${gwt.junit.testcase.includes} /
property name=gwt.junit.testcase.dev.excludes value= /

-  !--
-CoverageTest.java fails due to a javac bug in sun/OpenJDK's Java. See  
the
-file contents for details
-  --
-  property name=gwt.junit.testcase.dev.emma.includes  
value=**/*Suite.class,com/google/gwt/dev/jjs/test/*Test.class /
-  property name=gwt.junit.testcase.dev.emma.excludes  
value=**/CoverageTest.class,**/CompilerSuite.class /
-
!--
  Only IFrameLinker actually supports -noserver mode; run the other  
linker
  tests if and when they are supported
@@ -153,7 +146,7 @@
/target

target name=test.dev.remote
-  depends=compile, compile.tests, -test.dev.includes
+  depends=compile, compile.tests
description=Run dev-mode tests with remote browsers
if=gwt.hosts.dev.remote
  echo message=Performing dev-mode remote testing at  
${gwt.remote.browsers} /
@@ -171,14 +164,14 @@
/target

target name=test.emma.remote
-  depends=compile, compile.tests, -test.dev.includes
+  depends=compile, compile.tests
description=Run emma tests with remote browsers
if=gwt.hosts.dev.remote
  echo message=Performing emma remote testing at  
${gwt.hosts.dev.remote} /
  property name=test.emma.remote.args value=${test.args} /
  fileset id=test.emma.remote.tests dir=${javac.junit.out}
-includes=${gwt.junit.testcase.dev.emma.includes}
-excludes=${gwt.junit.testcase.dev.emma.excludes} /
+includes=${gwt.junit.testcase.dev.includes}
+excludes=${gwt.junit.testcase.dev.excludes} /
gwt.junit test.args=${test.args} -out www -runStyle  
RemoteWeb:${gwt.hosts.dev.remote} -batch module -precompile parallel
test.out=${junit.out}/emma-remote
test.cases=test.emma.remote.tests 
@@ -190,14 +183,14 @@
/target

target name=test.emma.selenium
-  depends=compile, compile.tests, -test.dev.includes
+  depends=compile, compile.tests
description=Run emma tests with Selenium-RC servers
if=gwt.hosts.dev.selenium
  echo message=Performing emma selenium testing at  
${gwt.hosts.dev.selenium} /
  property name=test.emma.remote.args value=${test.args} /
  fileset id=test.emma.selenium.tests dir=${javac.junit.out}
-includes=${gwt.junit.testcase.dev.emma.includes}
-excludes=${gwt.junit.testcase.dev.emma.excludes} /
+includes=${gwt.junit.testcase.dev.includes}
+excludes=${gwt.junit.testcase.dev.excludes} /
  gwt.junit test.args=${test.args} -out www -runStyle  
Selenium:${gwt.hosts.dev.selenium} -batch module -precompile parallel
  test.out=${junit.out}/emma-selenium
  test.cases=test.emma.selenium.tests 
@@ -266,7 +259,7 @@
/target

target name=test.dev.selenium
-  depends=compile, compile.tests, -test.dev.includes
+  depends=compile, compile.tests
description=Run dev-mode tests using Selenium RC servers
if=gwt.hosts.dev.selenium
  echo message=Performing dev-mode testing using Selenium RC at  
${gwt.hosts.dev.selenium} /
@@ -321,8 +314,8 @@
depends=compile, compile.tests
description=Run emma tests with HtmlUnit
fileset id=test.emma.htmlunit.tests dir=${javac.junit.out}
-  includes=${gwt.junit.testcase.dev.emma.includes}
-  excludes=${gwt.junit.testcase.dev.emma.excludes} /
+  includes=${gwt.junit.testcase.dev.includes}
+  excludes=${gwt.junit.testcase.dev.excludes} /
gwt.junit test.args=${test.args}
test.out=${junit.out}/emma-htmlunit
test.cases=test.emma.htmlunit.tests 
@@ -334,7 +327,7 @@
/target

target name=test.dev.htmlunit
-  depends=compile, compile.tests, -test.dev.includes
+  depends=compile, compile.tests
description=Run dev-mode tests with HtmlUnit.
  property name=gwt.junit.testcase.dev.includes
  value=${gwt.junit.testcase.includes} /
@@ -359,13 +352,6 @@
  echo message=DEPRECATED: test.hosted has been renamed test.dev/
/target

-  target name=-test.dev.includes if=emma.enabled
-property name=gwt.junit.testcase.dev.includes
-value=${gwt.junit.testcase.dev.emma.includes} /
-property name=gwt.junit.testcase.dev.excludes
-value=${gwt.junit.testcase.dev.emma.excludes} /
-  /target
-
target name=test.noserver
depends=compile, compile.tests

[gwt-contrib] Re: Proposed API Addition - @WithModuleParameters on test cases

2009-10-14 Thread John LaBanca
Yes, as soon as we get the build stabilized, I'll commit this.

Thanks,
John LaBanca
jlaba...@google.com


On Wed, Oct 14, 2009 at 3:20 PM, Bruce Johnson br...@google.com wrote:

 @John L: You taking this one?


 On Wed, Oct 14, 2009 at 12:08 PM, Pascal Muetschard 
 pmuetsch...@google.com wrote:

 I've uploaded another patch set, which merges in the latest changes from
 the trunk.


 On Mon, Oct 12, 2009 at 2:34 AM, John Tamplin j...@google.com wrote:

 On Mon, Oct 12, 2009 at 12:03 AM, John LaBanca jlaba...@google.comwrote:

 @jat -
 When do you think we'll merge the htmlunit branch into trunk so we can
 check in this patch?


 We are supposed to ship MS2 on Wednesday, so it has to be real soon.

 --
 John A. Tamplin
 Software Engineer (GWT), Google





--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Initial implementation of TabLayoutPanel.

2009-10-14 Thread jgw

Reviewers: rjrj_google.com, jlabanca,



Please review this at http://gwt-code-reviews.appspot.com/78820

Affected files:
   A user/javadoc/com/google/gwt/examples/TabLayoutPanelExample.java
   M user/src/com/google/gwt/user/client/ui/LayoutPanel.java
   A user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java
   A user/test/com/google/gwt/user/client/ui/TabLayoutPanelTest.java



--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Refactored DisclosurePanel and better DisclosurePanelParser

2009-10-14 Thread rjrjr

Okay Joel, ready for another look. The only big changes to
DisclosurePanel are that it is now ImageResource based, and I've
ruthlessly deprecated its convenience constructors.

http://gwt-code-reviews.appspot.com/78817

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Refactored DisclosurePanel and better DisclosurePanelParser

2009-10-14 Thread rjrjr

Uploaded a tweak to tidy up image initialization.

http://gwt-code-reviews.appspot.com/78817

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Initial implementation of TabLayoutPanel.

2009-10-14 Thread rjrjr

Reviewing this now. Tag, I'm it.

http://gwt-code-reviews.appspot.com/78820

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] [google-web-toolkit] r6376 committed - The test target in user now runs sequentially because browser manager ...

2009-10-14 Thread codesite-noreply

Revision: 6376
Author: jlaba...@google.com
Date: Wed Oct 14 13:51:57 2009
Log: The test target in user now runs sequentially because browser manager  
queues up too many requests in parallel.

Patch by: jlabanca
Review by: jgw


http://code.google.com/p/google-web-toolkit/source/detail?r=6376

Modified:
  /trunk/user/build.xml

===
--- /trunk/user/build.xml   Wed Oct 14 12:48:54 2009
+++ /trunk/user/build.xml   Wed Oct 14 13:51:57 2009
@@ -417,14 +417,14 @@
  property.ensure name=distro.built location=${gwt.dev.staging.jar}
  message=GWT must be built before performing any tests.  This can  
be fixed by running ant in the ${gwt.root} directory. /
  limit failonerror=true hours=${test.timeout}
-parallel threadsPerProcessor=${gwt.threadsPerProcessor}
+sequential
antcall target=test.dev/
antcall target=test.emma/
antcall target=test.web/
antcall target=test.draft/
antcall target=test.nometa/
antcall target=test.noserver/
-/parallel
+/sequential
  /limit
/target


--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Initial implementation of TabLayoutPanel.

2009-10-14 Thread rjrjr


http://gwt-code-reviews.appspot.com/78820/diff/1/2
File user/javadoc/com/google/gwt/examples/TabLayoutPanelExample.java
(right):

http://gwt-code-reviews.appspot.com/78820/diff/1/2#newcode41
Line 41: rp.layout();
I wonder if we could tie into the FinallyCommand mechanism to automate
and batch these initial layout calls? Not today, obviously, but food for
thought.

http://gwt-code-reviews.appspot.com/78820/diff/1/4
File user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java (right):

http://gwt-code-reviews.appspot.com/78820/diff/1/4#newcode61
Line 61: */
When I provide my own widget, will it be able to receive events? E.g.,
will I be able to implement a tab with a close box on it?

We had talked about allowing the client to provide a tab factory. Why
didn't that work out?

http://gwt-code-reviews.appspot.com/78820/diff/1/4#newcode387
Line 387: public void setTabHTML(int index, String text) {
I'd still rather see something like:

panel.getTab(i).setHTML(), etc. You'd have so many fewer methods.

http://gwt-code-reviews.appspot.com/78820

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Initial implementation of TabLayoutPanel.

2009-10-14 Thread rjrjr

LGTM


http://gwt-code-reviews.appspot.com/78820/diff/1/4
File user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java (right):

http://gwt-code-reviews.appspot.com/78820/diff/1/4#newcode61
Line 61: */
That customizability is my main concern. If the widget is actually
master of its own events, everything else is angels dancing on the heads
of pins.

So if I want to, say, put a popup volume slider on each of my Tabs, I'm
good?

http://gwt-code-reviews.appspot.com/78820

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Initial implementation of TabLayoutPanel.

2009-10-14 Thread jgw

LGTY for now?


http://gwt-code-reviews.appspot.com/78820/diff/1/2
File user/javadoc/com/google/gwt/examples/TabLayoutPanelExample.java
(right):

http://gwt-code-reviews.appspot.com/78820/diff/1/2#newcode41
Line 41: rp.layout();
On 2009/10/14 21:06:03, Ray Ryan wrote:
 I wonder if we could tie into the FinallyCommand mechanism to automate
and batch
 these initial layout calls? Not today, obviously, but food for
thought.

Definitely want to think about this a bit more. I've got a comment to
this effect in one of my git branches. It's a bit tricky because some
panels want to allow animated layout(), but I still think we can do
better than this.

http://gwt-code-reviews.appspot.com/78820/diff/1/4
File user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java (right):

http://gwt-code-reviews.appspot.com/78820/diff/1/4#newcode61
Line 61: */
On 2009/10/14 21:06:03, Ray Ryan wrote:
 When I provide my own widget, will it be able to receive events? E.g.,
will I be
 able to implement a tab with a close box on it?

Yes, this works fine (I've tested it by hand in a local project). Yes, I
need to add actual JUnit tests for this as well.

 We had talked about allowing the client to provide a tab factory. Why
didn't
 that work out?

Kelly and I sat down to talk about it, and came to the conclusion that
it would be about a bazillion times easier to just create two divs for
each tab, which can be used for the majority of rounded-corner tricks
one might want. This drastically simplifies the API surface area,
because the Tab itself becomes a private implementation detail. We may
need to revisit it later to make sure we haven't missed any reasonable
styling cases, but I think we'll be fine (also remember that you can, if
absolutely necessary, add extra elements to a widget, added to a tab,
for styling purposes -- but I expect this won't ever really be
necessary).

http://gwt-code-reviews.appspot.com/78820/diff/1/4#newcode387
Line 387: public void setTabHTML(int index, String text) {
On 2009/10/14 21:06:03, Ray Ryan wrote:
 I'd still rather see something like:

 panel.getTab(i).setHTML(), etc. You'd have so many fewer methods.

I'm willing to consider it, but was mainly aiming to get something close
enough to the existing TabPanel that it wouldn't be hard to port. Maybe
we can revisit this again after MS2 (I still have a nasty warning in the
javadoc about the API changing without warning)?

http://gwt-code-reviews.appspot.com/78820

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Re: Initial implementation of TabLayoutPanel.

2009-10-14 Thread amirkashani

If I could chime in...


http://gwt-code-reviews.appspot.com/78820/diff/1/4
File user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java (right):

http://gwt-code-reviews.appspot.com/78820/diff/1/4#newcode365
Line 365: SelectionEvent.fire(this, index);
Any chance this could be gated on a issueEvent argument? In most cases
the handling of a user-select is the same as a programmatic select, but
it's nice to have the option. It does clutter up the API a bit though

http://gwt-code-reviews.appspot.com/78820

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] [google-web-toolkit] r6377 committed - Creating a branch for the Remote UI Communication implementation....

2009-10-14 Thread codesite-noreply

Revision: 6377
Author: rda...@google.com
Date: Wed Oct 14 14:33:21 2009
Log: Creating a branch for the Remote UI Communication implementation.

svn copy https://google-web-toolkit.googlecode.com/svn/tr...@6376  
https://google-web-toolkit.googlecode.com/svn/branches/remote-ui-communication

After the work is completed, this work will be merged up to the 2.0 MS2  
release branch.

http://code.google.com/p/google-web-toolkit/source/detail?r=6377

Added:
  /branches/remote-ui-communication


--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] Log a deprecation warning for CellPanelParsers

2009-10-14 Thread rjrjr

Reviewers: jgw,

Message:
Here's an easy one. It logs lines like this:

[WARN] gwt:DockPanel is deprecated. Use the appropriate LayoutPanel
instead.



Please review this at http://gwt-code-reviews.appspot.com/78821

Affected files:
   M user/src/com/google/gwt/uibinder/parsers/CellPanelParser.java


Index: user/src/com/google/gwt/uibinder/parsers/CellPanelParser.java
diff --git a/user/src/com/google/gwt/uibinder/parsers/CellPanelParser.java  
b/user/src/com/google/gwt/uibinder/parsers/CellPanelParser.java
index  
67d8ca2c6ff0a836638c8c608c4e8111fbb11d0e..e677aff77ea15a385b50e32aae5e993ddd28b2f5
  
100644
--- a/user/src/com/google/gwt/uibinder/parsers/CellPanelParser.java
+++ b/user/src/com/google/gwt/uibinder/parsers/CellPanelParser.java
@@ -46,8 +46,9 @@ public class CellPanelParser implements ElementParser {
 *
 * @throws UnableToCompleteException
 */
-  public static void parseCellAttributes(XMLElement cellElem, String  
fieldName,
+  static void parseCellAttributes(XMLElement cellElem, String fieldName,
String childFieldName, UiBinderWriter writer) throws  
UnableToCompleteException {
+
  // Parse horizontal and vertical alignment attributes.
  if (cellElem.hasAttribute(HALIGN_ATTR)) {
String value =
@@ -81,7 +82,10 @@ public class CellPanelParser implements ElementParser {

public void parse(XMLElement elem, String fieldName, JClassType type,
UiBinderWriter writer) throws UnableToCompleteException {
-for (XMLElement child : elem.consumeChildElements()) {
+writer.warn(
+%s:%s is deprecated. Use the appropriate LayoutPanel instead.,
+elem.getPrefix(), elem.getLocalName());
+   for (XMLElement child : elem.consumeChildElements()) {
String ns = child.getNamespaceUri();
String tagName = child.getLocalName();
if (ns.equals(elem.getNamespaceUri())  tagName.equals(CELL_TAG)) {



--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] [google-web-toolkit] r6378 committed - Updated branch-info.txt to match this branch.

2009-10-14 Thread codesite-noreply

Revision: 6378
Author: rda...@google.com
Date: Wed Oct 14 16:15:18 2009
Log: Updated branch-info.txt to match this branch.
http://code.google.com/p/google-web-toolkit/source/detail?r=6378

Modified:
  /branches/remote-ui-communication/branch-info.txt

===
--- /branches/remote-ui-communication/branch-info.txt   Tue Oct 13 16:57:19  
2009
+++ /branches/remote-ui-communication/branch-info.txt   Wed Oct 14 16:15:18  
2009
@@ -1,21 +1,8 @@
-Created from tr...@6101
+Created from tr...@6376
  
-svn copy -r6226 \
-https://google-web-toolkit.googlecode.com/svn/branches/farewellSwt \
- 
https://google-web-toolkit.googlecode.com/svn/changes/jat/noswt-merge6200
-
-Merges
-==
-svn merge https://google-web-toolkit.googlecode.com/svn/trunk \
--r6101:6142
-svn merge --ignore-ancestry -r6142:6200 \
-https://google-web-toolkit.googlecode.com/svn/trunk
-(via changes/jat/noswt-merge6200)
-svn merge https://google-web-toolkit.googlecode.com/svn/trunk \
-  -r6200:6239 .
-svn merge https://google-web-toolkit.googlecode.com/svn/trunk \
-  -r6239:6249 .
-svn merge https://google-web-toolkit.googlecode.com/svn/trunk \
-  --ignore-ancestry -r6249:6270 .
-svn merge --ignore-ancestry -r6280:6359 \
-https://google-web-toolkit.googlecode.com/svn/changes/jat/abstractui
+svn copy https://google-web-toolkit.googlecode.com/svn/tr...@6376 \
+https://google-web-toolkit.googlecode.com/svn/branches/remote-ui-communication
+
+Merged from trunk
+=
+

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] [google-web-toolkit] r6379 committed - Removed two unnecessary lines that were re-defining a property...

2009-10-14 Thread codesite-noreply

Revision: 6379
Author: amitman...@google.com
Date: Wed Oct 14 17:59:39 2009
Log: Removed two unnecessary lines that were re-defining a property

Patch by: amitmanjhi


http://code.google.com/p/google-web-toolkit/source/detail?r=6379

Modified:
  /trunk/user/build.xml

===
--- /trunk/user/build.xml   Wed Oct 14 13:51:57 2009
+++ /trunk/user/build.xml   Wed Oct 14 17:59:39 2009
@@ -329,10 +329,6 @@
target name=test.dev.htmlunit
depends=compile, compile.tests
description=Run dev-mode tests with HtmlUnit.
-property name=gwt.junit.testcase.dev.includes
-value=${gwt.junit.testcase.includes} /
-property name=gwt.junit.testcase.dev.excludes
-value=${gwt.junit.testcase.excludes} /
  fileset id=test.dev.htmlunit.tests dir=${javac.junit.out}
  includes=${gwt.junit.testcase.dev.includes}
  excludes=${gwt.junit.testcase.dev.excludes} /

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---



[gwt-contrib] [google-web-toolkit] r6380 committed - Ignoring the testNoOverrideInheritedSharedCssClasses for the time bein...

2009-10-14 Thread codesite-noreply

Revision: 6380
Author: amitman...@google.com
Date: Wed Oct 14 18:26:27 2009
Log: Ignoring the testNoOverrideInheritedSharedCssClasses for the time  
being, while
I debug it.  It is failing in hosted mode consistently.

Patch by: amitmanjhi


http://code.google.com/p/google-web-toolkit/source/detail?r=6380

Modified:
  /trunk/user/test/com/google/gwt/uibinder/sample/client/UiBinderTest.java

===
---  
/trunk/user/test/com/google/gwt/uibinder/sample/client/UiBinderTest.java
 
Tue Oct 13 16:57:19 2009
+++  
/trunk/user/test/com/google/gwt/uibinder/sample/client/UiBinderTest.java
 
Wed Oct 14 18:26:27 2009
@@ -236,6 +236,7 @@
  WidgetBasedUi.Style style();
}

+  @DoNotRunWith(Platform.Htmlunit)
public void testNoOverrideInheritedSharedCssClasses() {
  Bundle bundle = GWT.create(Bundle.class);
  WidgetBasedUi ui = GWT.create(WidgetBasedUi.class);

--~--~-~--~~~---~--~~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~--~~~~--~~--~--~---