Re: [gwt-contrib] GWT RC2 - Events are being hid by Layout layers in UIBinder

2009-12-01 Thread Stuart Moffatt
Thanks Joel.

My current workaround is to use the old Horizontal/VerticalPanel widgets,
so no harm, no foul. Looking forward to more examples!

Stuart

On Mon, Nov 30, 2009 at 12:20 PM, Joel Webber j...@google.com wrote:

 Stuart,

 Hiding/showing layers is slightly tricky (or at least non-obvious). I'm
 still working on examples in the documentation that should make it a lot
 clearer.

 In a nutshell, you need to actually show/hide the layer elements
 themselves. You can get the layer's element (referred to as a widget's
 container element) using *LayoutPanel.getWidgetContainerElement(Widget).
 Showing/hiding this element rather than the widget itself should get rid of
 any event problems. I'll make a point to add an example of this to the
 documentation.

 I didn't want to require the existence of the elements, but it proved
 impossible to support arbitrary CSS any other way (the existence of these
 elements makes it possible to efficiently account for margins, borders, and
 padding on the child widgets' elements).

 Cheers,
 joel.

 On Thu, Nov 26, 2009 at 2:33 AM, Stuart Moffatt 
 stuartmoff...@gmail.comwrote:


 Env: GWTRC2 Safari Mac OS X.

 UI binding:
 {{{
 g:LayoutPanel ui:field=layoutPanel
 g:layer
myclient:MyEditor ui:field='myEditor'/
 /g:layer
  g:layer
myclient:MyLister ui:field='myLister'/
 /g:layer
 /g:LayoutPanel
 }}}

 These two custom widgets sit right on top of each other visually. The
 reason is I want them to replace each other. Since MyLister is added
 last, I can trigger events from it. When I fire a certain event from
 MyLister, MyLister hides via setVisible(false) and MyEditor displays
 via setVisible(true) However, because MyEditor is a layer below
 MyLister, all events are hidden. E.g. onClick in widget in MyEditor
 does not fire.

 Is there any way (declaratively or programmatically) to swap the
 positions of the layers so that the visible layer is on top and can
 respond to events?

 sfm

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


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

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

Re: [gwt-contrib] Revisiting the script-via-iframe default linkage

2009-12-01 Thread Lex Spoon
On Mon, Nov 30, 2009 at 10:28 PM, Matt Mastracci matt...@mastracci.com wrote:
 2.  onerror works some of the time in some of the browsers. It fails on
 various combinations of resolve errors, error status codes and other failure
 conditions. For all browsers (except Opera) that don't support it directly,
 It can be emulated with onreadystatechange/onload and lack of a JSONP
 callback.

Can you expand on that?  IE has script-tag callbacks that should be
usable to detect download errors.  What did you get working on other
browsers?

If there's a way to detect download failures on Firefox and on
Webkit-based browser, then JSONP downloads are better than I thought.

Lex

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


Re: [gwt-contrib] Revisiting the script-via-iframe default linkage

2009-12-01 Thread Matt Mastracci
Ray/Lex,

I'm starting to think that the dynamic iframe might not be a bad first  
approach to this problem either.  A single linker would be able to  
provide cross-domain-capable, multi-module-safe code that doesn't  
require any additional post-processing to support loading of  
fragments.  It also runs in the global scope, saving the extra few ms  
per global access 
(http://blog.j15r.com/2009/08/where-should-i-define-javascript.html 
).

The method used to load the first and additional fragments could  
become a linker property. For our cross-domain loads, I'd like to have  
a strategy that tries to use cross-domain XMLHttpRequest first,  
assuming appropriate Access-Control-* headers on the other end, then  
falls back to script tags if this isn't available.  The default  
could be something simple like script tags, or even standard  
XMLHttpRequest, assuming the auxiliary scripts are stored on the same  
domain.

It still has the disadvantage of being slightly more magical,  
requiring tricks to work around IE's window event security, but the  
advantages are pretty substantial.  It should be possible to write  
this linker as a drop-in replacement for today's XSLinker and  
IFrameLinkers without touching any code outside of  
com.google.gwt.core.linker.

Matt.

On 30-Nov-09, at 5:09 PM, Ray Cromwell wrote:


 Lex,
   JSONP loading + dynamic iframe seems like a straightforward viable  
 option that doesn't require a lot of complicated compiler work, what  
 do you think of providing this as an option?

 -Ray

 On Mon, Nov 30, 2009 at 12:29 PM, Lex Spoon sp...@google.com wrote:
 (Reposting to get it on the mailing list; first try bounced.)


 Hey, Matt,

 I agree with your analysis about the code-splitting issues.

 I've worked out a preliminary patch to do var renaming, but I haven't
 shared it yet because it's in a pretty early state.  I could share it
 if you or someone is eager enough to see it that you're willing to
 hack some code to get to use it.

 To really get it polished up into a committable state, the main issue
 will be figuring out when to enable the rewrites.Whether to enable
 it or not depends on the choice of linker.

 For the off-domain loading, I was thinking to look into a JSONP-like
 downloader.  That, too, is something that should only optionally be
 enabled, because it has worse download failure reporting.  Thus, again
 the hardest part will be figuring out when to enable it.

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


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

Re: [gwt-contrib] Revisiting the script-via-iframe default linkage

2009-12-01 Thread Lex Spoon
Thanks for the test code and data, Matt!  It sounds like enough
browsers are covered that error reporting is no longer a major decider
between XHR vs. script tags.

Regarding iframes, be aware that some GWT users can't use them.  I
don't know all the reasons why, but one example reason is that iframes
don't work reasonably on iPhones.  So, we need to support non-iframe
linkers for at least some use cases.


Lex

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


[gwt-contrib] Re: Removes the use of FinallyCommand in StackLayoutPanel.

2009-12-01 Thread rjrjr
LGTM

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

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


[gwt-contrib] get RPC policy name from Java code

2009-12-01 Thread spoon
Reviewers: robertvawter_google.com,

Description:
Some GWT users want to build GWT RPC requests themselves, e.g. via
building a raw HTML form.  To do this, they need to supply the RPC
policy name as part of the request, just like GWT RPC normally does.
How shall they get the policy name?

This patch exports the information via ServiceDefTarget.   To get the
policy name then looks similar to the way a the URL is set for where the
RPC server lives:

   String policyName = ((ServiceDefTarget)
GWT.create(MyRpcService.class)).getSerializationPolicyName();


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

Affected files:
   user/src/com/google/gwt/user/client/rpc/ServiceDefTarget.java
   user/src/com/google/gwt/user/client/rpc/impl/RemoteServiceProxy.java


Index: user/src/com/google/gwt/user/client/rpc/impl/RemoteServiceProxy.java
===
--- user/src/com/google/gwt/user/client/rpc/impl/RemoteServiceProxy.java
 
(revision 7217)
+++ user/src/com/google/gwt/user/client/rpc/impl/RemoteServiceProxy.java
 
(working copy)
@@ -212,6 +212,10 @@
  clientSerializationStreamWriter.prepareToWrite();
  return clientSerializationStreamWriter;
}
+
+  public String getSerializationPolicyName() {
+return serializationPolicyName;
+  }

/**
 * @see ServiceDefTarget#getServiceEntryPoint()
Index: user/src/com/google/gwt/user/client/rpc/ServiceDefTarget.java
===
--- user/src/com/google/gwt/user/client/rpc/ServiceDefTarget.java   
(revision  
7217)
+++ user/src/com/google/gwt/user/client/rpc/ServiceDefTarget.java   
(working  
copy)
@@ -34,6 +34,12 @@
super(Service implementation URL not specified);
  }
}
+
+  /**
+   * Return the strong name of the serialization policy to be used with  
this RPC
+   * instance.
+   */
+  String getSerializationPolicyName();

/**
 * Gets the URL of a service implementation.


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


Re: [gwt-contrib] Revisiting the script-via-iframe default linkage

2009-12-01 Thread Joel Webber
To be clear, I don't know of any cases where people *can't* use iframes.
There are some cases where teams have chosen to use script tags for an
assumed performance benefit, but I don't know of anyone ever having measured
it. Most of the time people use script tags for cross-site or late-loading
behavior. If we could make iframes work for these cases, and show that
there's no performance benefit to script tags, it may be less of an issue.

The iPhone only has problems rendering iframes (it essentially drops their
content into the outer page as though it were inline), but that's about it.

On Tue, Dec 1, 2009 at 11:44 AM, Lex Spoon sp...@google.com wrote:

 Thanks for the test code and data, Matt!  It sounds like enough
 browsers are covered that error reporting is no longer a major decider
 between XHR vs. script tags.

 Regarding iframes, be aware that some GWT users can't use them.  I
 don't know all the reasons why, but one example reason is that iframes
 don't work reasonably on iPhones.  So, we need to support non-iframe
 linkers for at least some use cases.


 Lex


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

[gwt-contrib] [google-web-toolkit] r7218 committed - Cherry picking trunk c7178, c7185 into 2009.11.20 snapshot....

2009-12-01 Thread codesite-noreply
Revision: 7218
Author: sco...@google.com
Date: Tue Dec  1 09:29:17 2009
Log: Cherry picking trunk c7178, c7185 into 2009.11.20 snapshot.

- Fixes CustomButton's ability to have a text body
- UiBinder AttributeParsers can now distinguish  from null
http://code.google.com/p/google-web-toolkit/source/detail?r=7218

Modified:
   
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/attributeparsers/StrictAttributeParser.java
   
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/elementparsers/BeanParser.java
   
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/elementparsers/CustomButtonParser.java
   
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/elementparsers/DisclosurePanelParser.java
   
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/elementparsers/LayoutPanelParser.java
   
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/rebind/XMLElement.java
   
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/rebind/messages/MessagesWriter.java
   
/branches/snapshot-2009.11.20-r7061/user/test/com/google/gwt/uibinder/attributeparsers/IntAttributeParserTest.java
   
/branches/snapshot-2009.11.20-r7061/user/test/com/google/gwt/uibinder/attributeparsers/LengthAttributeParserTest.java
   
/branches/snapshot-2009.11.20-r7061/user/test/com/google/gwt/uibinder/attributeparsers/StringAttributeParserTest.java
   
/branches/snapshot-2009.11.20-r7061/user/test/com/google/gwt/uibinder/rebind/XMLElementTest.java
   
/branches/snapshot-2009.11.20-r7061/user/test/com/google/gwt/uibinder/test/client/UiBinderTest.java
   
/branches/snapshot-2009.11.20-r7061/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.java
   
/branches/snapshot-2009.11.20-r7061/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.ui.xml

===
---  
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/attributeparsers/StrictAttributeParser.java
 
Wed Nov 11 22:08:47 2009
+++  
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/attributeparsers/StrictAttributeParser.java
 
Tue Dec  1 09:29:17 2009
@@ -82,11 +82,13 @@
 * UnableToCompleteException is thrown.
 */
public String parse(String value) throws UnableToCompleteException {
-
+if (.equals(value.trim())) {
+  logger.die(Cannot use empty value as type %s,  
type.getSimpleSourceName());
+}
  try {
return converter.convert(value, new FieldReferenceDelegate(type));
  } catch (IllegalFieldReferenceException e) {
-  logger.die(Cannot parse value: \%s\, value);
+  logger.die(Cannot parse value: \%s\ as type %s, value,  
type.getSimpleSourceName());
return null; // Unreachable
  }
}
===
---  
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/elementparsers/BeanParser.java
  
Mon Nov 16 10:04:26 2009
+++  
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/elementparsers/BeanParser.java
  
Tue Dec  1 09:29:17 2009
@@ -135,8 +135,8 @@
writer.die(In %s, class %s has no appropriate set%s() method,  
elem,
elem.getLocalName(), initialCap(propertyName));
  }
-
-String value =  
elem.consumeAttributeWithDefault(attribute.getName(),
+String n = attribute.getName();
+String value = elem.consumeAttributeWithDefault(n,
  null, getParamTypes(setter));

  if (value == null) {
===
---  
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/elementparsers/CustomButtonParser.java
  
Wed Nov 11 22:08:47 2009
+++  
/branches/snapshot-2009.11.20-r7061/user/src/com/google/gwt/uibinder/elementparsers/CustomButtonParser.java
  
Tue Dec  1 09:29:17 2009
@@ -1,12 +1,12 @@
  /*
   * Copyright 2007 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
@@ -19,6 +19,7 @@
  import com.google.gwt.core.ext.typeinfo.JClassType;
  import com.google.gwt.uibinder.rebind.UiBinderWriter;
  import com.google.gwt.uibinder.rebind.XMLElement;
+import com.google.gwt.uibinder.rebind.XMLElement.Interpreter;
  import com.google.gwt.user.client.ui.Image;

  import java.util.HashSet;
@@ -41,39 +42,49 @@
  faceNames.add(downDisabledFace);
}

-  public void parse(XMLElement elem, String fieldName, JClassType type,
-  UiBinderWriter writer) throws UnableToCompleteException {
-
-// Parse children.

[gwt-contrib] Re: get RPC policy name from Java code

2009-12-01 Thread bobv
Access to the strong name isn't available anywhere else.  LGTM, but add
a test to RemoteServiceServletTest to at least assert that the return
value is non-null.

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

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


[gwt-contrib] Flow analysis framework definition and solver.

2009-12-01 Thread spoon
LGTM.  Aside from documentation and naming, there is one question about
which nodes are re-added to the worklist in the solver.

Can you post a large enough set of code to include an actual analysis
and optimization?  I don't think we should commit any of this code until
there it is causing at least some improvement, however small.


http://gwt-code-reviews.appspot.com/112811/diff/1/3
File dev/core/src/com/google/gwt/dev/jjs/impl/flow/AnalysisSolver.java
(right):

http://gwt-code-reviews.appspot.com/112811/diff/1/3#newcode28
Line 28: public interface AnalysisSolverN, E, T, G extends GraphN, E,
T, G {
Why the interface?  Unlike the other interfaces in this package, I don't
see why a second implementation would ever coexist in the same code
base.

http://gwt-code-reviews.appspot.com/112811/diff/1/4
File
dev/core/src/com/google/gwt/dev/jjs/impl/flow/AnalysisSolverImpl.java
(right):

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode30
Line 30: * backwards working. Both of directions will always produce a
fixed point,
Since forward only influences the initial visit order of the nodes in
the CFG, I don't think it's worth calling out in the class comment.
Talk about it in the constructor, and say that what it does is affect
the initial visit order.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode94
Line 94: MapE, A solution = iterate(newSubgraph,
subgraphSolution?  I find this method tricky, so careful names would
help.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode112
Line 112: return result;
No need to make a temp and return it.  Just return it.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode127
Line 127: * Solve analysis
Solve a non-integrated analysis.  (Or, come up with a better name than
non-integrated?)

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode142
Line 142: worklist.add(nodes.get(i));
I see a lot of random access on lists in this function.  Making them
ArrayLists instead of Lists would prevent accidental bad performance if
anyone tries to substitute something else.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode167
Line 167: throw new IllegalArgumentException();
Be consistent with this exception message and the previous one?

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode181
Line 181: addSuccessors(g, worklist, node);
Doesn't this add more nodes than necessary to the work list?  If only
one output edge changes, then only that node's target edge needs to be
visited again.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode185
Line 185: for (int i = 0; i  inEdges.size(); i++) {
Analogous questions here as for the previous loop.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode205
Line 205: * Solve integrated analysis.
Solve an integrated analysis by using an IntegratedFlowFunctionAdapter
and recursing into {...@link #solve()}

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode327
Line 327: private A extends AssumptionA MapE, A iterate(G g,
This method deserves a method comment.

http://gwt-code-reviews.appspot.com/112811/diff/1/5
File dev/core/src/com/google/gwt/dev/jjs/impl/flow/Assumption.java
(right):

http://gwt-code-reviews.appspot.com/112811/diff/1/5#newcode30
Line 30: Self meet(Self value);
The least upper bound is a *join*, not a meet.

http://gwt-code-reviews.appspot.com/112811/diff/1/7
File dev/core/src/com/google/gwt/dev/jjs/impl/flow/FlowFunction.java
(right):

http://gwt-code-reviews.appspot.com/112811/diff/1/7#newcode24
Line 24: * not clear yet.
To clear up this paragraph, keep the first sentence, and then say the
rest as: Typical flow functions update either outgoing assumptions
(forward flow) or incoming assumptions (backward flow) but not both.

http://gwt-code-reviews.appspot.com/112811/diff/1/10
File
dev/core/src/com/google/gwt/dev/jjs/impl/flow/IntegratedFlowFunction.java
(right):

http://gwt-code-reviews.appspot.com/112811/diff/1/10#newcode22
Line 22: * node transformation based on already computed assumptions.
Do I undestand correctly that in typical cases, the replacement graph
would be a single node, e.g. a nop node or a node that has fewer
connecting edges?

I started to say there are caching issue to consider here, but if the
typical replacements are a single node then it doesn't matter.

http://gwt-code-reviews.appspot.com/112811/diff/1/11
File dev/core/src/com/google/gwt/dev/jjs/impl/flow/NodeAssumptions.java
(right):

http://gwt-code-reviews.appspot.com/112811/diff/1/11#newcode24
Line 24: * node, which allows us to use this class to represnt graph
assumptions.
represent.  Although, given the second sentence, isn't this more
accurately described as the assumptions about a *subgraph* ?  The
subgraph is often exactly one node, but it doesn't have to be.

http://gwt-code-reviews.appspot.com/112811/diff/1/11#newcode26
Line 26: * @param A
Please add a doc string.

http://gwt-code-reviews.appspot.com/112811/diff/1/13
File 

[gwt-contrib] GPE 2.0-RC2 and GWTShell

2009-12-01 Thread Matt Mastracci
Hey all,

I installed the GPE 2.0-RC2 build (after cleaning out the old one) and  
I'm running into some issues. The plugin thinks that we're using the  
old-style layout, so it's attempting to launch GWTShell which won't  
initialize a local Jetty w/war.xml.

I've worked around it by creating a local copy of GWTShell that  
delegates to DevMode, but I'd like to figure out why it's using the  
wrong launch target.

What is the heuristic for determining whether a project uses the war  
layout vs. the GWTShell layout?

Thanks,
Matt.

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


Re: [gwt-contrib] GPE 2.0-RC2 and GWTShell

2009-12-01 Thread Joel Webber
@Miguel: I've hit this before when upgrading projects, and I keep forgetting
what the trick was. I seem to recall the plugin was making the project
layout determination at the time the GWT nature is added, but I'm not 100%
certain.

On Tue, Dec 1, 2009 at 3:55 PM, Matt Mastracci matt...@mastracci.comwrote:

 Hey all,

 I installed the GPE 2.0-RC2 build (after cleaning out the old one) and
 I'm running into some issues. The plugin thinks that we're using the
 old-style layout, so it's attempting to launch GWTShell which won't
 initialize a local Jetty w/war.xml.

 I've worked around it by creating a local copy of GWTShell that
 delegates to DevMode, but I'd like to figure out why it's using the
 wrong launch target.

 What is the heuristic for determining whether a project uses the war
 layout vs. the GWTShell layout?

 Thanks,
 Matt.

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


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

Re: [gwt-contrib] GPE 2.0-RC2 and GWTShell

2009-12-01 Thread Matt Mastracci
Ahh - there's a webAppNature in .project that gets set when you enable  
GWT.  I disabled GWT support, re-added it and now the .project has a  
com.google.gdt.eclipse.core.webAppNature.

This seems to be the trigger for enabling DevMode vs. GWTShell.

Thanks,
Matt.

On 1-Dec-09, at 1:57 PM, Joel Webber wrote:

 @Miguel: I've hit this before when upgrading projects, and I keep  
 forgetting what the trick was. I seem to recall the plugin was  
 making the project layout determination at the time the GWT nature  
 is added, but I'm not 100% certain.

 On Tue, Dec 1, 2009 at 3:55 PM, Matt Mastracci  
 matt...@mastracci.com wrote:
 Hey all,

 I installed the GPE 2.0-RC2 build (after cleaning out the old one) and
 I'm running into some issues. The plugin thinks that we're using the
 old-style layout, so it's attempting to launch GWTShell which won't
 initialize a local Jetty w/war.xml.

 I've worked around it by creating a local copy of GWTShell that
 delegates to DevMode, but I'd like to figure out why it's using the
 wrong launch target.

 What is the heuristic for determining whether a project uses the war
 layout vs. the GWTShell layout?

 Thanks,
 Matt.

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


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

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


Re: [gwt-contrib] GPE 2.0-RC2 and GWTShell

2009-12-01 Thread Miguel Méndez
That is right, at the time that the project is GWT-enabled it checks for the
existence of a war/WEB-INF/web.xml.  If that exists it will think that it is
dealing with a war-style project and then it will use the HostedMode if it
is available or DevMode when launching the application.  With that version
of the plugin, if you have a war/WEB-INF/web.xml file in your project, then
you can go to the project properties, and disable gwt for the project apply
the changes, go back in and re-enable GWT.That should make it think that
it is dealing with a war layout project and it won't use GWTShell.

There are a few problems with this heuristic that we need to revisit post
1.2/2.0.


On Tue, Dec 1, 2009 at 4:14 PM, Matt Mastracci matt...@mastracci.comwrote:

 Ahh - there's a webAppNature in .project that gets set when you enable
 GWT.  I disabled GWT support, re-added it and now the .project has a
 com.google.gdt.eclipse.core.webAppNature.

 This seems to be the trigger for enabling DevMode vs. GWTShell.

 Thanks,
 Matt.

 On 1-Dec-09, at 1:57 PM, Joel Webber wrote:

  @Miguel: I've hit this before when upgrading projects, and I keep
  forgetting what the trick was. I seem to recall the plugin was
  making the project layout determination at the time the GWT nature
  is added, but I'm not 100% certain.
 
  On Tue, Dec 1, 2009 at 3:55 PM, Matt Mastracci
  matt...@mastracci.com wrote:
  Hey all,
 
  I installed the GPE 2.0-RC2 build (after cleaning out the old one) and
  I'm running into some issues. The plugin thinks that we're using the
  old-style layout, so it's attempting to launch GWTShell which won't
  initialize a local Jetty w/war.xml.
 
  I've worked around it by creating a local copy of GWTShell that
  delegates to DevMode, but I'd like to figure out why it's using the
  wrong launch target.
 
  What is the heuristic for determining whether a project uses the war
  layout vs. the GWTShell layout?
 
  Thanks,
  Matt.
 
  --
  http://groups.google.com/group/Google-Web-Toolkit-Contributors
 
 
  --
  http://groups.google.com/group/Google-Web-Toolkit-Contributors

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




-- 
Miguel

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

Re: [gwt-contrib] GPE 2.0-RC2 and GWTShell

2009-12-01 Thread Miguel Méndez
One correction: When launching web apps, we use DevMode if the SDK supports
it and HostedMode otherwise.

2009/12/1 Miguel Méndez mmen...@google.com

 That is right, at the time that the project is GWT-enabled it checks for
 the existence of a war/WEB-INF/web.xml.  If that exists it will think that
 it is dealing with a war-style project and then it will use the HostedMode
 if it is available or DevMode when launching the application.  With that
 version of the plugin, if you have a war/WEB-INF/web.xml file in your
 project, then you can go to the project properties, and disable gwt for the
 project apply the changes, go back in and re-enable GWT.That should make
 it think that it is dealing with a war layout project and it won't use
 GWTShell.

 There are a few problems with this heuristic that we need to revisit post
 1.2/2.0.

 2009/12/1 Joel Webber j...@google.com

 @Miguel: I've hit this before when upgrading projects, and I keep
 forgetting what the trick was. I seem to recall the plugin was making the
 project layout determination at the time the GWT nature is added, but I'm
 not 100% certain.


 On Tue, Dec 1, 2009 at 3:55 PM, Matt Mastracci matt...@mastracci.comwrote:

 Hey all,

 I installed the GPE 2.0-RC2 build (after cleaning out the old one) and
 I'm running into some issues. The plugin thinks that we're using the
 old-style layout, so it's attempting to launch GWTShell which won't
 initialize a local Jetty w/war.xml.

 I've worked around it by creating a local copy of GWTShell that
 delegates to DevMode, but I'd like to figure out why it's using the
 wrong launch target.

 What is the heuristic for determining whether a project uses the war
 layout vs. the GWTShell layout?

 Thanks,
 Matt.

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





 --
 Miguel




-- 
Miguel

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

[gwt-contrib] [google-web-toolkit] r7219 committed - Javadoc fixes....

2009-12-01 Thread codesite-noreply
Revision: 7219
Author: j...@google.com
Date: Tue Dec  1 13:59:12 2009
Log: Javadoc fixes.

Patch by: jat
Review by: jgw (desk)

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

Modified:
  /trunk/user/src/com/google/gwt/i18n/client/DateTimeFormat.java
  /trunk/user/src/com/google/gwt/i18n/client/LocaleInfo.java

===
--- /trunk/user/src/com/google/gwt/i18n/client/DateTimeFormat.java  Mon Nov 
 
30 20:39:13 2009
+++ /trunk/user/src/com/google/gwt/i18n/client/DateTimeFormat.java  Tue Dec 
  
1 13:59:12 2009
@@ -112,6 +112,13 @@
   * tdcodeTuesday/code/td
   * /tr
   *
+ * tr
+ * tdcodec/code/td
+ * tdstandalone day of week/td
+ * tdText/td
+ * tdcodeTuesday/code/td
+ * /tr
+ *
   * tr
   * tdcodea/code/td
   * tdam/pm marker/td
===
--- /trunk/user/src/com/google/gwt/i18n/client/LocaleInfo.java  Mon Mar  2  
23:51:53 2009
+++ /trunk/user/src/com/google/gwt/i18n/client/LocaleInfo.java  Tue Dec  1  
13:59:12 2009
@@ -115,7 +115,7 @@
}

/**
-   * @return a NumberConstants interface for this locale.
+   * @return a DateTimeConstants instance for this locale.
 */
public final DateTimeConstants getDateTimeConstants() {
  ensureDateTimeConstants();
@@ -130,7 +130,7 @@
}

/**
-   * @return a NumberConstants interface for this locale.
+   * @return a NumberConstants instance for this locale.
 */
public final NumberConstants getNumberConstants() {
  ensureNumberConstants();

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


[gwt-contrib] Fwd: Flow analysis framework definition and solver.

2009-12-01 Thread Mike Aizatsky
Forwarding since I wasn't member of the group.


-- Forwarded message --
From:  mike.aizat...@gmail.com
Date: Tue, Dec 1, 2009 at 1:52 PM
Subject: Re: Flow analysis framework definition and solver.
To: sp...@google.com,
google-web-toolkit-contributors@googlegroups.com,
cromwell...@google.com


Reviewers: Lex, google-web-toolkit-contributors_googlegroups.com,
cromwellian_google.com,

Message:
Lex,

I can definitely publish some analyses for this framework. There's one
issue, though:

- Each CFG-based analysis is quite small and simple. They depend,
however, on CFG building functionality (156K of code, 200K with tests).

- Side-effects methods is non-integrated analysis, and you were
concerned about it's runtime performance (I didn't see any serious
performance degradation on huge project though). But it's really simple
32K analysis+call graph builder, which is also useful for other stuff.
Like my recent same parameter value.

I can create a separate CFG changelist + CFG-based analyses changelist.
I just worry that I will have to maintain several changelist branches +
main branch with all the code together. I would certainly prefer to land
this code into SVN even before it's actually plugged into compiler.


http://gwt-code-reviews.appspot.com/112811/diff/1/3
File dev/core/src/com/google/gwt/dev/jjs/impl/flow/AnalysisSolver.java
(right):

http://gwt-code-reviews.appspot.com/112811/diff/1/3#newcode28
Line 28: public interface AnalysisSolverN, E, T, G extends GraphN, E,
T, G {
On 2009/12/01 20:36:45, Lex wrote:

 Why the interface?  Unlike the other interfaces in this package, I

don't see why

 a second implementation would ever coexist in the same code base.

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/4
File
dev/core/src/com/google/gwt/dev/jjs/impl/flow/AnalysisSolverImpl.java
(right):

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode30
Line 30: * backwards working. Both of directions will always produce a
fixed point,
On 2009/12/01 20:36:45, Lex wrote:

 Since forward only influences the initial visit order of the nodes in

the CFG, I

 don't think it's worth calling out in the class comment.  Talk about

it in the

 constructor, and say that what it does is affect the initial visit

order.

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode94
Line 94: MapE, A solution = iterate(newSubgraph,
On 2009/12/01 20:36:45, Lex wrote:

 subgraphSolution?  I find this method tricky, so careful names would

help.

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode112
Line 112: return result;
On 2009/12/01 20:36:45, Lex wrote:

 No need to make a temp and return it.  Just return it.

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode127
Line 127: * Solve analysis
On 2009/12/01 20:36:45, Lex wrote:

 Solve a non-integrated analysis.  (Or, come up with a better name than
 non-integrated?)

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode142
Line 142: worklist.add(nodes.get(i));
On 2009/12/01 20:36:45, Lex wrote:

 I see a lot of random access on lists in this function.  Making them

ArrayLists

 instead of Lists would prevent accidental bad performance if anyone

tries to

 substitute something else.

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode167
Line 167: throw new IllegalArgumentException();
On 2009/12/01 20:36:45, Lex wrote:

 Be consistent with this exception message and the previous one?

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode181
Line 181: addSuccessors(g, worklist, node);
On 2009/12/01 20:36:45, Lex wrote:

 Doesn't this add more nodes than necessary to the work list?  If only

one output

 edge changes, then only that node's target edge needs to be visited

again.

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode185
Line 185: for (int i = 0; i  inEdges.size(); i++) {
On 2009/12/01 20:36:45, Lex wrote:

 Analogous questions here as for the previous loop.

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode205
Line 205: * Solve integrated analysis.
On 2009/12/01 20:36:45, Lex wrote:

 Solve an integrated analysis by using an IntegratedFlowFunctionAdapter

and

 recursing into {...@link #solve()}

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/4#newcode327
Line 327: private A extends AssumptionA MapE, A iterate(G g,
On 2009/12/01 20:36:45, Lex wrote:

 This method deserves a method comment.

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/5
File dev/core/src/com/google/gwt/dev/jjs/impl/flow/Assumption.java
(right):

http://gwt-code-reviews.appspot.com/112811/diff/1/5#newcode30
Line 30: Self meet(Self value);
On 2009/12/01 20:36:45, Lex wrote:

 The least upper bound is a *join*, not a meet.

Done.

http://gwt-code-reviews.appspot.com/112811/diff/1/7
File dev/core/src/com/google/gwt/dev/jjs/impl/flow/FlowFunction.java
(right):

http://gwt-code-reviews.appspot.com/112811/diff/1/7#newcode24
Line 24: * not clear 

[gwt-contrib] Re: Flow analysis framework definition and solver.

2009-12-01 Thread Lex Spoon
On Tue, Dec 1, 2009 at 4:52 PM,  mike.aizat...@gmail.com wrote:
 I can create a separate CFG changelist + CFG-based analyses changelist.
 I just worry that I will have to maintain several changelist branches +
 main branch with all the code together. I would certainly prefer to land
 this code into SVN even before it's actually plugged into compiler.

Well, it would be sitting in svn and not being tested in any way
except that it compiles.  If you want to commit the pieces somewhere,
why don't we make an svn branch?
  Shall I do that?  We can then put in the patches as they are
committed on the branch, and merge it to trunk once enough is in that
it does something.

For using this framework to walk the callgraph, I understand that the
implementation is simple, but simple things often don't perform well.
An easily O(n^3) graph traversal is okay if n is only the size of one
method, but is problematic if we are talking about a whole program.
Mostly, though, I'd simply like to divide the issue.  Since the patch
is already large, let's do the intra-proc part first.

Lex

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


[gwt-contrib] Re: Flow analysis framework definition and solver.

2009-12-01 Thread Mike Aizatsky
 Well, it would be sitting in svn and not being tested in any way
 except that it compiles.  If you want to commit the pieces somewhere,
 why don't we make an svn branch?

I don't think svn branch will help much. It will only add headaches.
What do you say if I would merge all LGTM'ed changes together into
single git branch on my workstation? This would at least help me
reduce the number of branches to maintain to 3: dev branch, under
review branch, LGTM'ed branch. I can also actively export that branch
to github if you need.

 For using this framework to walk the callgraph, I understand that the
 implementation is simple, but simple things often don't perform well.
 An easily O(n^3) graph traversal is okay if n is only the size of one
 method, but is problematic if we are talking about a whole program.

I don't see where you get O(n^3). Solver algorithm complexity is O(e *
l) where e is number of edges, and l is lattice height. For a simple
boolean lattice l = 2, so this should be quite efficient from
algorithmic point of view.

 Mostly, though, I'd simply like to divide the issue.  Since the patch
 is already large, let's do the intra-proc part first.

Ok. I'll cut the CFG change.

On Tue, Dec 1, 2009 at 2:20 PM, Lex Spoon sp...@google.com wrote:
 On Tue, Dec 1, 2009 at 4:52 PM,  mike.aizat...@gmail.com wrote:
 I can create a separate CFG changelist + CFG-based analyses changelist.
 I just worry that I will have to maintain several changelist branches +
 main branch with all the code together. I would certainly prefer to land
 this code into SVN even before it's actually plugged into compiler.

 Well, it would be sitting in svn and not being tested in any way
 except that it compiles.  If you want to commit the pieces somewhere,
 why don't we make an svn branch?
  Shall I do that?  We can then put in the patches as they are
 committed on the branch, and merge it to trunk once enough is in that
 it does something.

 For using this framework to walk the callgraph, I understand that the
 implementation is simple, but simple things often don't perform well.
 An easily O(n^3) graph traversal is okay if n is only the size of one
 method, but is problematic if we are talking about a whole program.
 Mostly, though, I'd simply like to divide the issue.  Since the patch
 is already large, let's do the intra-proc part first.

 Lex




-- 
Regards,
Mike

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


[gwt-contrib] Increase Java stack size for JUnit tests

2009-12-01 Thread jlabanca
Reviewers: jgw,

Description:
UiBinderTest requires 256k stack size.  This patch increases the stack
size to 512k.

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

Affected files:
   common.ant.xml


Index: common.ant.xml
===
--- common.ant.xml  (revision 7218)
+++ common.ant.xml  (working copy)
@@ -187,6 +187,7 @@
junit dir=@{test.out} fork=yes printsummary=yes
   failureproperty=junit.failure tempdir=@{test.out}
  jvmarg line=-Xmx768m /
+jvmarg line=-Xss512k /
  jvmarg  
value=-demma.coverage.out.fi...@{test.emma.coverage}/coverage.emma /
  jvmarg value=-Demma.coverage.out.merge=true /
  sysproperty key=gwt.args value=@{test.args} /


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


[gwt-contrib] [google-web-toolkit] r7221 committed - Fix for hosted.html missing plugin warning in IE7+ quirks mode....

2009-12-01 Thread codesite-noreply
Revision: 7221
Author: j...@google.com
Date: Tue Dec  1 15:17:53 2009
Log: Fix for hosted.html missing plugin warning in IE7+ quirks mode.
Found by: cramsdale
Patch by: scottb
Review by: jgw (desk check)
http://code.google.com/p/google-web-toolkit/source/detail?r=7221

Modified:
  /trunk/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html

===
--- /trunk/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html Mon  
Nov 30 07:50:48 2009
+++ /trunk/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html Tue  
Dec  1 15:17:53 2009
@@ -173,20 +173,19 @@
} else {
  topDoc.documentElement.style[overflow] = hidden;
}
-
+
// Steal focus.
glass.focus();
-
-  if (navigator.userAgent.indexOf(MSIE 6) = 0) {
+
+  if ((navigator.userAgent.indexOf(MSIE) = 0)  (topDoc.compatMode  
== BackCompat)) {
+// IE quirks mode doesn't support right/bottom, but does support this.
+glassStyle.width = 125%;
+glassStyle.height = 100%;
+  } else if (navigator.userAgent.indexOf(MSIE 6) = 0) {
+// IE6 doesn't have a real standards mode, so we have to use hacks.
  glassStyle.width = 125%; // Get past scroll bar area.
-if (topDoc.compatMode == BackCompat) {
-  // Works in quirks mode.
-  glassStyle.height = 100%;
-} else {
-  // Use a nasty CSS expression in standards mode; ideally we'd use the
-  // onresize event, but the outer window won't let us add one in IE6.
-   
glassStyle.setExpression(height, document.documentElement.clientHeight);
-}
+// Nasty CSS; onresize would be better but the outer window won't let  
us add a listener IE.
+ 
glassStyle.setExpression(height, document.documentElement.clientHeight);
}
  }

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


[gwt-contrib] Re: More UiBinder javadoc

2009-12-01 Thread jgw
On 2009/12/01 15:32:21, jgw wrote:
 On 2009/12/01 06:34:15, Ray Ryan wrote:
  Joel, can you review this? In fact, can you submit it for me, since
it seems
  like you early rising Atlantoids may roll GA before I get in?
 
  Also, I haven't doc'd LayoutPanel itself, because I don't quite
understand its
  constraints. Have it in you?

 LGTM. I've added LayoutPanel doc as well, and will commit the lot with
minor
 tweaks as soon as the build's green again :)

Committed at r7223.

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

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


[gwt-contrib] [google-web-toolkit] r7222 committed - Increasing the stack size when running JUnit tests because UiBinderTes...

2009-12-01 Thread codesite-noreply
Revision: 7222
Author: jlaba...@google.com
Date: Tue Dec  1 15:21:09 2009
Log: Increasing the stack size when running JUnit tests because  
UiBinderTest requires more than 256k.

Patch by: jlabanca
Review by: jat


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

Modified:
  /trunk/common.ant.xml

===
--- /trunk/common.ant.xml   Thu Nov 12 12:28:34 2009
+++ /trunk/common.ant.xml   Tue Dec  1 15:21:09 2009
@@ -187,6 +187,7 @@
junit dir=@{test.out} fork=yes printsummary=yes
   failureproperty=junit.failure tempdir=@{test.out}
  jvmarg line=-Xmx768m /
+jvmarg line=-Xss512k /
  jvmarg  
value=-demma.coverage.out.fi...@{test.emma.coverage}/coverage.emma /
  jvmarg value=-Demma.coverage.out.merge=true /
  sysproperty key=gwt.args value=@{test.args} /

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


[gwt-contrib] [google-web-toolkit] r7223 committed - Adding UiBinder doc for widgets that require it....

2009-12-01 Thread codesite-noreply
Revision: 7223
Author: j...@google.com
Date: Tue Dec  1 15:21:10 2009
Log: Adding UiBinder doc for widgets that require it.
Review: http://gwt-code-reviews.appspot.com/116803
http://code.google.com/p/google-web-toolkit/source/detail?r=7223

Modified:
  /trunk/user/src/com/google/gwt/user/client/ui/CustomButton.java
  /trunk/user/src/com/google/gwt/user/client/ui/DialogBox.java
  /trunk/user/src/com/google/gwt/user/client/ui/DisclosurePanel.java
  /trunk/user/src/com/google/gwt/user/client/ui/DockLayoutPanel.java
  /trunk/user/src/com/google/gwt/user/client/ui/HasHTML.java
  /trunk/user/src/com/google/gwt/user/client/ui/HasText.java
  /trunk/user/src/com/google/gwt/user/client/ui/LayoutPanel.java
  /trunk/user/src/com/google/gwt/user/client/ui/MenuBar.java
  /trunk/user/src/com/google/gwt/user/client/ui/StackLayoutPanel.java
  /trunk/user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java
  /trunk/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.ui.xml

===
--- /trunk/user/src/com/google/gwt/user/client/ui/CustomButton.java Wed  
Nov  4 10:50:50 2009
+++ /trunk/user/src/com/google/gwt/user/client/ui/CustomButton.java Tue  
Dec  1 15:21:10 2009
@@ -20,6 +20,7 @@
  import com.google.gwt.dom.client.NativeEvent;
  import com.google.gwt.event.dom.client.ClickEvent;
  import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.resources.client.ImageResource;
  import com.google.gwt.user.client.DOM;
  import com.google.gwt.user.client.Element;
  import com.google.gwt.user.client.Event;
@@ -99,6 +100,38 @@
   * /table
   * /p
   *
+ * h3Use in UiBinder Templates/h3
+ *
+ * When working with CustomButton subclasses in
+ * {...@link com.google.gwt.uibinder.client.UiBinder UiBinder} templates, you
+ * can set text and assign ImageResources for their various faces via
+ * child elements:
+ * p
+ * dl
+ * dtlt;g:upFace
+ * dtlt;g:downFace
+ * dtlt;g:upHoveringFace
+ * dtlt;g:downHoveringFace
+ * dtlt;g:upDisabledFace
+ * dtlt;g:downDisabledFace
+ * /dl
+ *
+ * Each face element can take an optional codeimage/code attribute
+ * and an html body. For example:pre
+ * lt;ui:image field='downButton'/ lt;!-- define an {...@link  
ImageResource} --
+ *
+ * lt;g:PushButton ui:field='pushButton' enabled='true'
+ *   lt;g:upFace
+ * lt;bclick melt;/b
+ *   lt;/gwt:upFace
+ *   lt;g:upHoveringFace
+ * lt;bClick ME!lt;/b
+ *   lt;/gwt:upHoveringFace
+ *
+ *   lt;g:downFace image='{downButton}'/
+ *   lt;g:downHoveringFace image='{downButton}'/
+ * lt;/g:PushButton
+ * /pre
   */
  public abstract class CustomButton extends ButtonBase {
/**
===
--- /trunk/user/src/com/google/gwt/user/client/ui/DialogBox.javaWed Nov 
 4  
09:18:51 2009
+++ /trunk/user/src/com/google/gwt/user/client/ui/DialogBox.javaTue Dec 
 1  
15:21:10 2009
@@ -79,6 +79,26 @@
   * h3Example/h3
   * {...@example com.google.gwt.examples.DialogBoxExample}
   * /p
+ *
+ * h3Use in UiBinder Templates/h3
+ * p
+ * DialogBox elements in
+ * {...@link com.google.gwt.uibinder.client.UiBinder UiBinder} templates can
+ * have one widget child and one lt;g:caption child. (Note the lower case
+ * c, meant to signal that the caption is not a runtime object, and so  
cannot
+ * have a codeui:field/code attribute.) The body of the
+ * caption can be html.
+ * p
+ * For example: pre
+ * lt;g:DialogBox autoHide=true modal=true
+ *   lt;g:captionlt;bCaption textlt;/blt;/g:caption
+ *   lt;g:HTMLPanel
+ * Body text
+ * lt;g:Button ui:field='cancelButton'Cancellt;/g:Button
+ * lt;g:Button ui:field='okButton'Okaylt;/g:Button
+ *   lt;/g:HTMLPanel
+ * lt;/g:DialogBox
+ * /pre
   */
  @SuppressWarnings(deprecation)
  public class DialogBox extends DecoratedPopupPanel implements HasHTML,
===
--- /trunk/user/src/com/google/gwt/user/client/ui/DisclosurePanel.java  Wed  
Oct 28 15:52:50 2009
+++ /trunk/user/src/com/google/gwt/user/client/ui/DisclosurePanel.java  Tue  
Dec  1 15:21:10 2009
@@ -37,11 +37,15 @@
   * A widget that consists of a header and a content panel that discloses  
the
   * content when a user clicks on the header.
   *
- * h3CSS Style Rules/h3 ul class=css li.gwt-DisclosurePanel { the
- * panel's primary style }/li li.gwt-DisclosurePanel-open { dependent  
style
- * set when panel is open }/li li.gwt-DisclosurePanel-closed {  
dependent
- * style set when panel is closed }/li
- *
+ * h3CSS Style Rules/h3
+ * dl class=css
+ * dt.gwt-DisclosurePanel
+ * ddthe panel's primary style
+ * dt.gwt-DisclosurePanel-open
+ * dd dependent style set when panel is open
+ * dt.gwt-DisclosurePanel-closed
+ * dd dependent style set when panel is closed
+ * /dl
   * p
   * img class='gallery' src='DisclosurePanel.png'/
   * /p
@@ -51,6 +55,29 @@
   * selector:br/
   * .gwt-DisclosurePanel-open .header { ... }
   * /p
+ * h3Use in UiBinder Templates/h3
+ * p
+ * DisclosurePanel elements in
+ * {...@link 

[gwt-contrib] [google-web-toolkit] r7224 committed - tr...@7222 was merged into this branch...

2009-12-01 Thread codesite-noreply
Revision: 7224
Author: jlaba...@google.com
Date: Tue Dec  1 15:25:46 2009
Log: tr...@7222 was merged into this branch
  Increase stack size of JUnit tests.
 svn merge --ignore-ancestry -c7222  
https://google-web-toolkit.googlecode.com/svn/trunk/ .

Patch by: jlabanca


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

Modified:
  /releases/2.0/branch-info.txt
  /releases/2.0/common.ant.xml

===
--- /releases/2.0/branch-info.txt   Tue Dec  1 14:05:14 2009
+++ /releases/2.0/branch-info.txt   Tue Dec  1 15:25:46 2009
@@ -1125,3 +1125,7 @@
   Javadoc fixes.
  svn merge --ignore-ancestry -c7219 \
https://google-web-toolkit.googlecode.com/svn/trunk/ .
+
+tr...@7222 was merged into this branch
+ Increase stack size of JUnit tests.
+svn merge --ignore-ancestry -c7222  
https://google-web-toolkit.googlecode.com/svn/trunk/ .
===
--- /releases/2.0/common.ant.xmlThu Nov 12 12:45:28 2009
+++ /releases/2.0/common.ant.xmlTue Dec  1 15:25:46 2009
@@ -187,6 +187,7 @@
junit dir=@{test.out} fork=yes printsummary=yes
   failureproperty=junit.failure tempdir=@{test.out}
  jvmarg line=-Xmx768m /
+jvmarg line=-Xss512k /
  jvmarg  
value=-demma.coverage.out.fi...@{test.emma.coverage}/coverage.emma /
  jvmarg value=-Demma.coverage.out.merge=true /
  sysproperty key=gwt.args value=@{test.args} /

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


[gwt-contrib] Re: Flow analysis framework definition and solver.

2009-12-01 Thread Lex Spoon
On Tue, Dec 1, 2009 at 5:59 PM, Mike Aizatsky mike.aizat...@gmail.com wrote:
 Well, it would be sitting in svn and not being tested in any way
 except that it compiles.  If you want to commit the pieces somewhere,
 why don't we make an svn branch?

 I don't think svn branch will help much. It will only add headaches.
 What do you say if I would merge all LGTM'ed changes together into
 single git branch on my workstation? This would at least help me
 reduce the number of branches to maintain to 3: dev branch, under
 review branch, LGTM'ed branch. I can also actively export that branch
 to github if you need.

Sounds good.  Git is optional; please do if it's easy, but don't worry
if it's not.  I can patch in multiple patches just fine.



 For using this framework to walk the callgraph, I understand that the
 implementation is simple, but simple things often don't perform well.
 An easily O(n^3) graph traversal is okay if n is only the size of one
 method, but is problematic if we are talking about a whole program.

 I don't see where you get O(n^3). Solver algorithm complexity is O(e *
 l) where e is number of edges, and l is lattice height. For a simple
 boolean lattice l = 2, so this should be quite efficient from
 algorithmic point of view.

I said n^3 because frequently the information is a set that is
proportional to the size of the program.  For example, we'd like to
analyze clinits that have definitely been called.   Then the lattice
height is the number of classes in the program, which is proportional
to n.

When you multiply it all out you get n^3 or n^4, depending on how big
you assume the call graphs are.


Lex

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


[gwt-contrib] Re: Increase Java stack size for JUnit tests

2009-12-01 Thread jat
LGTM


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

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


[gwt-contrib] Re: Comment on UiBinder in google-web-toolkit

2009-12-01 Thread codesite-noreply
Comment by vincent.case:

I found these UiBinder use cases very helpful in understanding the APIs.

However, I am unable to determine if UIBinder addresses the gwt 1.7 issues  
I have with formatting my app layout using CSS.

Specifically,
   * HTML generated by gwt layout widgets is not transparent/explicit,  
obscuring the application/intrepretation of css to the layout
   * HTML generated by gwt layout widgets is table based, foregoing the  
possiblity of many css layout techniques

Is one of the intentions of UiBinder to facilitate the use of CSS for app  
Layout by:
   * Allowing definition of an explicit HTML structue in the UIBinder xml to  
which css can be applied
   * Allowing app structure to be defined without use of the table based gwt  
widgets

Thanks for your feedback.



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

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


[gwt-contrib] GWT RC2: TabPanelLayout -- no supporting CSS?

2009-12-01 Thread Stuart Moffatt
All,

I found myself needing band-aids (read: bleeding edge) while trying
out TabLayoutPanel.

1) The javadocs and code for TabLayoutPanel suggest that the gwt-
TabLayoutPanel(*) css selectors exist:

http://code.google.com/p/google-web-toolkit/source/browse/releases/2.0/user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java

2) And, poking around the trunk shows this tidy example:

http://code.google.com/p/google-web-toolkit/source/browse/releases/2.0/user/javadoc/com/google/gwt/examples/TabLayoutPanelExample.java

3) When that example is implemented, there is no CSS on the
TabLayoutPanel:

http://tablayoutpanel.latest.emcode-dev.appspot.com/

While there is no CSS to dress it up, the layout and events are mostly
correct on Safari 4.0.3 (Mac). But on FF 3.5.5 (Mac) only one tab
shows (the third) sitting above the contents of the first tab. Yikes,
not really cross-browser.

4) Of course, it seems that the main problem is that the new gwt-
TabLayoutPanel(*) selectors don't yet exist, in here:

http://code.google.com/p/google-web-toolkit/source/browse/trunk/user/src/com/google/gwt/user/theme/standard/public/gwt/standard/standard.css

or any other of the themes/css files.

Is there someone sitting on a patch for gwt-TabLayoutPanel(*)
selectors, or is the problem deeper? I came across a couple of TODOs
and hints about css floats maybe not doing the trick under the
TabLayoutPanel implementation. Any help on this?

In the meantime, is there sample UIBinder xml to use the old TabPanel
instead?

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


[gwt-contrib] Re: Comment on UiBinder in google-web-toolkit

2009-12-01 Thread codesite-noreply
Comment by j...@google.com:

@vincent.case: It's not clear precisely what you're referring to when you  
reference the gwt layout widgets. Are you referring to the new  
*LayoutPanel structures or the existing panels such as DockPanel,  
Horizontal/VerticalPanel and such? The existing panels derived from  
CellPanel are all based on tables, which we know to be problematic under  
some circumstances.

The newer *LayoutPanel classes do not use tables, are much more predictable  
in their behavior, and fully support standards-mode doctypes, unlike the  
older table-based panels.

If you want to use common CSS layout techniques involving tricks like  
float:left, explicit large margins, and so forth, there's nothing stopping  
you from using regular widgets in FlowPanels and HTMLPanels and applying  
whatever CSS trickery you like. UiBinder actually makes this much easier by  
making it simple to use HTMLPanel and mix arbitrary HTML and widgets.


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

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


[gwt-contrib] Re: Make UiBinder handle custom subclasses of DialogBox

2009-12-01 Thread rjrjr
Ping. This is fairly urgent.

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

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


[gwt-contrib] [google-web-toolkit] r7228 committed - Fixing TabLayoutPanel tab stacking (float - cssFloat)....

2009-12-01 Thread codesite-noreply
Revision: 7228
Author: j...@google.com
Date: Tue Dec  1 22:01:22 2009
Log: Fixing TabLayoutPanel tab stacking (float - cssFloat).
Review: jlabanca (tbr)
http://code.google.com/p/google-web-toolkit/source/detail?r=7228

Modified:
  /trunk/user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java

===
--- /trunk/user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java   Tue  
Dec  1 15:21:10 2009
+++ /trunk/user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java   Tue  
Dec  1 22:01:22 2009
@@ -108,7 +108,7 @@
// heights, the shorter ones will top-align, rather than  
bottom-align,
// which is what we would want. display:inline-block fixes this, but
// needs lots of cross-browser hacks to work properly.
-  getElement().getStyle().setProperty(float, left);
+  getElement().getStyle().setProperty(cssFloat, left);
  }

  public HandlerRegistration addClickHandler(ClickHandler handler) {

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


[gwt-contrib] TBR: float - cssFloat in TabLayoutPanel

2009-12-01 Thread Joel Webber
http://code.google.com/p/google-web-toolkit/source/detail?r=7228

This was a mistake on my part. Some browsers (e.g., Firefox) won't accept
elem.style['float'], but rather require elem.style['cssFloat'].

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

Re: [gwt-contrib] GWT RC2: TabPanelLayout -- no supporting CSS?

2009-12-01 Thread Stuart Moffatt
Joel,

Is there something special that I need to do in my ui.xml in order to get
these CSS rules applied to my TabLayoutPanel?

!DOCTYPE ui:UiBinder SYSTEM 
http://google-web-toolkit.googlecode.com/files/xhtml.ent;
ui:UiBinder
  xmlns:ui='urn:ui:com.google.gwt.uibinder'
  xmlns:g='urn:import:com.google.gwt.user.client.ui'

 ... ui style ... src? type? empty? do I add {style.*} styles to the XML
below?

  g:TabLayoutPanel ui:field=tabLayoutPanel barHeight=20
   g:tabg:headerFirst Tab/g:headerg:HTMLfirst tab
content/g:HTML/g:tab
   g:tabg:headerSecond Tab/g:headerg:HTMLsecond tab
content/g:HTML/g:tab
  /g:TabLayoutPanel
/ui:UiBinder

You'll notice my sample app which has no default CSS rules applied:
http://tablayoutpanel.latest.emcode-dev.appspot.com/

Stuart

On Wed, Dec 2, 2009 at 12:49 AM, Joel Webber j...@google.com wrote:

 The following CSS rules should work fine with the TabLayoutPanel as checked
 in:

 .gwt-TabLayoutPanel { }
 .gwt-TabLayoutPanelTabs { }
 .gwt-TabLayoutPanelTab { }
 .gwt-TabLayoutPanelTab .gwt-TabLayoutPanelTabInner { }
 .gwt-TabLayoutPanelTab-selected { }
 .gwt-TabLayoutPanelTab-selected .gwt-TabLayoutPanelTabInner { }

 While we haven't added rules to default.css, et al, these rules should be
 sufficient for most standard CSS tricks. There is indeed an issue that's
 causing the tabs to stack up on Firefox, for which I will be committing a
 patch momentarily (TabLayoutPanel.java:111 should be setting cssFloat
 rather than just float).

 If you run into other problems with the structures that are there, please
 let me know.

 Thanks,
 joel.

 On Tue, Dec 1, 2009 at 11:12 PM, Stuart Moffatt 
 stuartmoff...@gmail.comwrote:

 All,

 I found myself needing band-aids (read: bleeding edge) while trying
 out TabLayoutPanel.

 1) The javadocs and code for TabLayoutPanel suggest that the gwt-
 TabLayoutPanel(*) css selectors exist:


 http://code.google.com/p/google-web-toolkit/source/browse/releases/2.0/user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java

 2) And, poking around the trunk shows this tidy example:


 http://code.google.com/p/google-web-toolkit/source/browse/releases/2.0/user/javadoc/com/google/gwt/examples/TabLayoutPanelExample.java

 3) When that example is implemented, there is no CSS on the
 TabLayoutPanel:

 http://tablayoutpanel.latest.emcode-dev.appspot.com/

 While there is no CSS to dress it up, the layout and events are mostly
 correct on Safari 4.0.3 (Mac). But on FF 3.5.5 (Mac) only one tab
 shows (the third) sitting above the contents of the first tab. Yikes,
 not really cross-browser.

 4) Of course, it seems that the main problem is that the new gwt-
 TabLayoutPanel(*) selectors don't yet exist, in here:


 http://code.google.com/p/google-web-toolkit/source/browse/trunk/user/src/com/google/gwt/user/theme/standard/public/gwt/standard/standard.css

 or any other of the themes/css files.

 Is there someone sitting on a patch for gwt-TabLayoutPanel(*)
 selectors, or is the problem deeper? I came across a couple of TODOs
 and hints about css floats maybe not doing the trick under the
 TabLayoutPanel implementation. Any help on this?

 In the meantime, is there sample UIBinder xml to use the old TabPanel
 instead?

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


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

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

[gwt-contrib] [google-web-toolkit] r7229 committed - Merging /trunk r7228 into this branch.

2009-12-01 Thread codesite-noreply
Revision: 7229
Author: j...@google.com
Date: Tue Dec  1 22:03:38 2009
Log: Merging /trunk r7228 into this branch.

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

Modified:
  /releases/2.0/branch-info.txt
  /releases/2.0/user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java

===
--- /releases/2.0/branch-info.txt   Tue Dec  1 21:26:37 2009
+++ /releases/2.0/branch-info.txt   Tue Dec  1 22:03:38 2009
@@ -1148,3 +1148,7 @@
   Also fixes mail icon showing up in front of the about dialog.
  svn merge --ignore-ancestry -c7226  
https://google-web-toolkit.googlecode.com/svn/trunk/ .

+tr...@7228 was merged into this branch
+ Fixing TabLayoutPanel tab stacking (float - cssFloat).
+svn merge --ignore-ancestry -c7228  
https://google-web-toolkit.googlecode.com/svn/trunk/ .
+
===
---  
/releases/2.0/user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java
 
Tue Dec  1 21:26:37 2009
+++  
/releases/2.0/user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java
 
Tue Dec  1 22:03:38 2009
@@ -108,7 +108,7 @@
// heights, the shorter ones will top-align, rather than  
bottom-align,
// which is what we would want. display:inline-block fixes this, but
// needs lots of cross-browser hacks to work properly.
-  getElement().getStyle().setProperty(float, left);
+  getElement().getStyle().setProperty(cssFloat, left);
  }

  public HandlerRegistration addClickHandler(ClickHandler handler) {

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


Re: [gwt-contrib] question about GWT RichTextArea

2009-12-01 Thread Nicolas Job
Dear John,
I would like to thank you for your response. We were working with GWT 1.7
and now we have to upgrade to 2.0.
Thanks,
Nicolas

2009/11/28 John LaBanca jlaba...@google.com

 Try this:
 richTextArea.getFormatter().setJustification(Justification.FULL);

 The RichTextArea uses execCommand() to modify the currently selected
 contents of the editable area.  Some of the inputs to execCommand() do not
 match similar CSS style names exactly.

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


 On Fri, Nov 27, 2009 at 8:58 AM, Nicolas Job 955...@gmail.com wrote:

 Dear contributors,
 I'm using the RichTextArea component from Google Web Toolkit and I met a
 problem with justifing text inside the text area. What I want is to justify
 my text like the CSS property text-align:justify; do it. Someone could
 help me ? is that feature planified in this editor ?
 Many thanks,
 Nicolas Job

 --
 --
 -
 ~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~
 ° °
  °   °
 ° °
   °  ° '(((
   °
 °  \
°|/
  °  \  \/
 °  \/ |/
 ` \|
  \ /
 _  _   -  _   ~  -  /_\   ~-_
- ____ __  -

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


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




-- 
-- 
-
~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~  ~
° °
 °   °
° °
  °  ° '(((
  °
°  \
   °|/
 °  \  \/
°  \/ |/
` \|
 \ /
_  _   -  _   ~  -  /_\   ~-_
   - ____ __  -

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