Re: [gwt-contrib] Re: expense isn't getting GWT RC1 release

2010-10-13 Thread Arthur Kalmenson
Great, thanks. Would a patch be helpful or will you be using some
other Maven repository?

--
Arthur Kalmenson



On Wed, Oct 13, 2010 at 5:22 PM, John LaBanca  wrote:
> I created an issue so we can fix this for the final GWT 2.1 release:
> http://code.google.com/p/google-web-toolkit/issues/detail?id=5418
>
> Thanks,
> John LaBanca
> jlaba...@google.com
>
>
> On Wed, Oct 13, 2010 at 5:18 PM, Arthur Kalmenson 
> wrote:
>>
>> Just to confirm, changing the repository definition to:
>>
>>        
>>            gwt-repo
>>
>>  https://oss.sonatype.org/content/repositories/google-snapshots
>>            Google Web Toolkit Repository
>>        
>>
>> Removes the compile errors from the expense report (I also had to
>> remove the .m2/repository/com/google/gwt folder to force Maven to
>> redownload 2.1-SNAPSHOT).
>>
>> --
>> Arthur Kalmenson
>>
>>
>>
>> On Wed, Oct 13, 2010 at 5:12 PM, Arthur Kalmenson 
>> wrote:
>> > Hello everyone,
>> >
>> > I'm trying to build the expense report app, and it looks like the
>> > source has been refactored to remove the "app" part from the packages
>> > for place, requestfactory, etc. Unfortunately, the expense report POM
>> > hasn't been updated to grab GWT RC 1. The repository definition looks
>> > like this:
>> >
>> >    
>> >            gwt-repo
>> >
>> >  http://google-web-toolkit.googlecode.com/svn/2.1.0.M3/gwt/maven
>> >            Google Web Toolkit Repository
>> >        
>> >
>> > While the
>> > "http://google-web-toolkit.googlecode.com/svn/2.1.0.RC1/gwt/maven/";
>> > repository doesn't have a GWT release. Will you be putting the new
>> > release in the 2.1.0.M3/gwt/maven repository or the
>> > 2.1.0.RC1/gwt/maven one? Because all the downloads of GWT RC 1 will
>> > have a broken expense report
>> >
>> > In the mean time, the snapshot repository linked from the blog post
>> > (https://oss.sonatype.org/content/repositories/google-snapshots) seems
>> > to contain the correct SNAPSHOT. I'll try to use that. Thank you.
>> >
>> > --
>> > Arthur Kalmenson
>> >
>>
>> --
>> 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] r9057 committed - DeadCodeElimination should only run once....

2010-10-13 Thread codesite-noreply

Revision: 9057
Author: gwt.mirror...@gmail.com
Date: Wed Oct 13 14:39:37 2010
Log: DeadCodeElimination should only run once.

Changes to DeadCodeElimination to ensure that almost all of the  
optimizations performed can be done in a single
pass.  I only know of one remaining case where running the visitor twice  
can result in additional changes: the
optimization performed in endVisit(JNewInstance) involving ignored new  
operations to empty constructor calls.
Sometimes the constructor becomes empty later in the optimization pass, and  
earlier calls aren't removed.  This

seems to be a very rare case, though.

http://gwt-code-reviews.appspot.com/983802/show

Review by: zun...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9057

Modified:
 /trunk/dev/core/src/com/google/gwt/dev/jjs/ast/JModVisitor.java
 /trunk/dev/core/src/com/google/gwt/dev/jjs/impl/DeadCodeElimination.java
 /trunk/dev/core/src/com/google/gwt/dev/jjs/impl/Simplifier.java
  
/trunk/dev/core/test/com/google/gwt/dev/jjs/impl/DeadCodeEliminationTest.java


===
--- /trunk/dev/core/src/com/google/gwt/dev/jjs/ast/JModVisitor.java	Tue Oct  
12 13:20:21 2010
+++ /trunk/dev/core/src/com/google/gwt/dev/jjs/ast/JModVisitor.java	Wed Oct  
13 14:39:37 2010

@@ -29,7 +29,7 @@
* Context for traversing a mutable list.
*/
   @SuppressWarnings("unchecked")
-  private class ListContext extends VisitorContext {
+  private class ListContext implements Context {
 int index;
 final List list;
 boolean removed;
@@ -50,13 +50,13 @@
 public void insertAfter(JNode node) {
   checkRemoved();
   list.add(index + 1, (T) node);
-  numMods++;
+  ++numVisitorChanges;
 }

 public void insertBefore(JNode node) {
   checkRemoved();
   list.add(index++, (T) node);
-  numMods++;
+  ++numVisitorChanges;
 }

 public boolean isLvalue() {
@@ -67,7 +67,7 @@
   checkState();
   list.remove(index--);
   removed = true;
-  numMods++;
+  ++numVisitorChanges;
 }

 public void replaceMe(JNode node) {
@@ -75,7 +75,7 @@
   checkReplacement(list.get(index), node);
   list.set(index, (T) node);
   replaced = true;
-  numMods++;
+  ++numVisitorChanges;
 }

 /**
@@ -87,7 +87,6 @@
   removed = replaced = false;
   list.get(index).traverse(JModVisitor.this, this);
 }
-JModVisitor.this.numVisitorChanges += numMods;
 return list;
   } catch (Throwable e) {
 throw translateException(list.get(index), e);
@@ -112,7 +111,7 @@
* Context for traversing an immutable list.
*/
   @SuppressWarnings("unchecked")
-  private class ListContextImmutable extends  
VisitorContext {

+  private class ListContextImmutable implements Context {
 int index;
 List list;
 boolean removed;
@@ -133,13 +132,13 @@
 public void insertAfter(JNode node) {
   checkRemoved();
   list = Lists.add(list, index + 1, (T) node);
-  numMods++;
+  ++numVisitorChanges;
 }

 public void insertBefore(JNode node) {
   checkRemoved();
   list = Lists.add(list, index++, (T) node);
-  numMods++;
+  ++numVisitorChanges;
 }

 public boolean isLvalue() {
@@ -150,7 +149,7 @@
   checkState();
   list = Lists.remove(list, index--);
   removed = true;
-  numMods++;
+  ++numVisitorChanges;
 }

 public void replaceMe(JNode node) {
@@ -158,7 +157,7 @@
   checkReplacement(list.get(index), node);
   list = Lists.set(list, index, (T) node);
   replaced = true;
-  numMods++;
+  ++numVisitorChanges;
 }

 /**
@@ -170,7 +169,6 @@
   removed = replaced = false;
   list.get(index).traverse(JModVisitor.this, this);
 }
-numVisitorChanges += numMods;
 return list;
   } catch (Throwable e) {
 throw translateException(list.get(index), e);
@@ -202,7 +200,7 @@
 }
   }

-  private static class NodeContext extends VisitorContext {
+  private class NodeContext implements Context {
 boolean canRemove;
 JNode node;
 boolean replaced;
@@ -237,7 +235,7 @@
   }

   this.node = null;
-  numMods++;
+  ++numVisitorChanges;
 }

 public void replaceMe(JNode node) {
@@ -247,17 +245,9 @@
   checkReplacement(this.node, node);
   this.node = node;
   replaced = true;
-  numMods++;
+  ++numVisitorChanges;
 }
   }
-
-  private abstract static class VisitorContext implements Context {
-int numMods = 0;
-
-public int getNumMods() {
-  return numMods;
-}
-  }

   protected static void checkReplacement(JNode origNode, JNode newNode) {
 if (newNode == null) {
@@ -282,7 +272,6 @@
 try {
   ctx.node = node;
   traverse(node, ctx);
-  numVisitorChanges += ctx.getNumMods();
   return ctx.node;
 } catch (Throwable e) {
   throw translateException(node, e);
@@ -302,7 +291,6 @@

[gwt-contrib] Re: make SimpleEventBus not defer adds (issue979801)

2010-10-13 Thread rjrjr

I'm getting cold feet about this change, especially when we're trying to
freeze 2.1

One problem is that this will break
com.google.gwt.event.shared.HandlerManagerTest.testConcurrentAdd(),
which still assumes that adds are deferred. And it will likewise break
any existing apps that are relying on that behavior of HandlerManager
(accidentally or otherwise). I suppose we could give the package
protected constructor another argument, SimpleEventBus(boolean
fireInReverseOrder, boolean deferAdds)?

I'm also uncomfortable with the lack of parallelism — when I add another
handler it's added immediately, but a remove happens later. If we make
the removes happen immediately, people will rely on the order that
handlers are called even more than they do already, not a great thing.
Am I worrying too much?

If we don't make this change, it's consistent and clear when adds and
removes happen: not now, so if I'm doing an add I'll also have to call
the thing myself if that's what I want. I'll have to learn that lesson,
like you did, but I have control.

I think we should pass on this. Sorry, Stephen.

http://gwt-code-reviews.appspot.com/979801/show

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


[gwt-contrib] [google-web-toolkit] r9056 committed - Use the response setContentType() in RequestFactoryServlet instead...

2010-10-13 Thread codesite-noreply

Revision: 9056
Author: gwt.mirror...@gmail.com
Date: Wed Oct 13 17:22:55 2010
Log: Use the response setContentType() in RequestFactoryServlet instead
of the more generic setHeader() call.

Review at http://gwt-code-reviews.appspot.com/980801

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

Modified:
  
/trunk/user/src/com/google/gwt/requestfactory/server/RequestFactoryServlet.java


===
---  
/trunk/user/src/com/google/gwt/requestfactory/server/RequestFactoryServlet.java	 
Tue Oct 12 10:53:11 2010
+++  
/trunk/user/src/com/google/gwt/requestfactory/server/RequestFactoryServlet.java	 
Wed Oct 13 17:22:55 2010

@@ -112,8 +112,7 @@
   requestProcessor.setOperationRegistry(new  
ReflectionBasedOperationRegistry(

   new DefaultSecurityProvider()));
   requestProcessor.setExceptionHandler(exceptionHandler);
-  response.setHeader("Content-Type",
-  RequestFactory.JSON_CONTENT_TYPE_UTF8);
+  response.setContentType(RequestFactory.JSON_CONTENT_TYPE_UTF8);

writer.print(requestProcessor.decodeAndInvokeRequest(jsonRequestString));

   writer.flush();
 }

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


[gwt-contrib] Public (stephen.haber...@gmail.com): (issue998801)

2010-10-13 Thread rjrjr

Reviewers: jlabanca,

Description:
Public (stephen.haber...@gmail.com):

Fixes GWT issue 5419, Panels do not emit AttachEvent
http://code.google.com/p/google-web-toolkit/issues/detail?id=5419

Review by: rj...@google.com


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

Affected files:
  M user/src/com/google/gwt/user/client/ui/Composite.java
  M user/src/com/google/gwt/user/client/ui/Panel.java
  M user/src/com/google/gwt/user/client/ui/Widget.java
  M user/test/com/google/gwt/user/client/ui/CompositeTest.java
  M user/test/com/google/gwt/user/client/ui/WidgetOnLoadTest.java


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


[gwt-contrib] Fixing IE6 CellTree bugs. Child nodes disappear after the open animation completes, and images ... (issue997801)

2010-10-13 Thread jlabanca

Reviewers: rice,

Description:
Fixing IE6 CellTree bugs.  Child nodes disappear after the open
animation completes, and images are not located correctly.


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

Affected files:
  M user/src/com/google/gwt/user/cellview/CellView.gwt.xml
  M user/src/com/google/gwt/user/cellview/client/CellTree.java
  M user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java


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


[gwt-contrib] Fixing a bug in DatePickerCell where selecting a new date does not update the cell. (issue996801)

2010-10-13 Thread jlabanca

Reviewers: rchandia,

Description:
Fixing a bug in DatePickerCell where selecting a new date does not
update the cell.


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

Affected files:
  M user/src/com/google/gwt/cell/client/DatePickerCell.java


Index: user/src/com/google/gwt/cell/client/DatePickerCell.java
===
--- user/src/com/google/gwt/cell/client/DatePickerCell.java (revision 9050)
+++ user/src/com/google/gwt/cell/client/DatePickerCell.java (working copy)
@@ -137,10 +137,16 @@
 // Hide the panel and call valueUpdater.update when a date is selected
 datePicker.addValueChangeHandler(new ValueChangeHandler() {
   public void onValueChange(ValueChangeEvent event) {
+// Remember the values before hiding the popup.
+Element cellParent = lastParent;
+Date oldValue = lastValue;
+Object key = lastKey;
 panel.hide();
+
+// Update the cell and value updater.
 Date date = event.getValue();
-setViewData(lastKey, date);
-setValue(lastParent, lastValue, lastKey);
+setViewData(key, date);
+setValue(cellParent, oldValue, key);
 if (valueUpdater != null) {
   valueUpdater.update(date);
 }


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


Re: [gwt-contrib] panel does not fire attach events (issue981801)

2010-10-13 Thread Ray Ryan
Oh cool, Stephen provided the patch for the robust fix.

On Wed, Oct 13, 2010 at 3:53 PM, Ray Ryan  wrote:

> These events are provided so that you can accomplish the same kinds of
> tasks without having to subclass the Widget, so it seemed natural (well,
> easier) to put the behavior there. But maybe that is too fragile, I'll try
> to move it where it belongs.
>
> Another question is why Panel overrides those methods in the first place.
> I'll delete those, they're noise.
>
> Stephen, thanks for catching this, and especially for punching up the test.
>
>
> On Tue, Oct 12, 2010 at 12:37 PM, Joel Webber  wrote:
>
>> Hmm... I didn't even realize AttachEvent had been added. John & Ray, you
>> might want to take a look at this -- in the original design this super
>> invocation wouldn't have mattered, because widget's onLoad() was empty
>> (onAttach/Detach() weren't really meant to overridden outside of Panel and
>> Composite -- onLoad/Unload() were the methods to override). But now it
>> appears that Widget.onLoad() has actual code in it. Could this not be moved
>> to onAttach?
>>
>> Le 11 octobre 2010 14:05,  a écrit :
>>
>>  Reviewers: ,
>>>
>>> Description:
>>> Panel's onLoad does not call super.onLoad. This is a simple fix that
>>> just adds the missing onLoad call.
>>>
>>> I have another patch set which fires the attach event in
>>> onAttach/onDetach, given these are more stable methods that user's are
>>> less prone overriding them.
>>>
>>> Please review this at http://gwt-code-reviews.appspot.com/981801/show
>>>
>>> Affected files:
>>>  user/src/com/google/gwt/user/client/ui/Panel.java
>>>  user/test/com/google/gwt/user/client/ui/WidgetOnLoadTest.java
>>>
>>>
>>> Index: user/test/com/google/gwt/user/client/ui/WidgetOnLoadTest.java
>>> ===
>>> --- user/test/com/google/gwt/user/client/ui/WidgetOnLoadTest.java
>>> (revision 8929)
>>> +++ user/test/com/google/gwt/user/client/ui/WidgetOnLoadTest.java
>>> (working copy)
>>> @@ -121,9 +121,12 @@
>>> }
>>>
>>> TestPanel tp = new TestPanel();
>>> +TestAttachHandler tpa = new TestAttachHandler();
>>> +tp.addAttachHandler(tpa);
>>> +
>>> TestWidget tw = new TestWidget();
>>> -TestAttachHandler ta = new TestAttachHandler();
>>> -tw.addAttachHandler(ta);
>>> +TestAttachHandler twa = new TestAttachHandler();
>>> +tw.addAttachHandler(twa);
>>>
>>> tp.add(tw);
>>> RootPanel.get().add(tp);
>>> @@ -134,9 +137,9 @@
>>> assertTrue(tp.onAttachOrder < tp.onLoadOrder);
>>> assertTrue(tp.onDetachOrder < tp.onUnloadOrder);
>>> assertTrue(tw.onAttachOrder < tw.onLoadOrder);
>>> -assertTrue(tw.onLoadOrder < ta.delegateAttachOrder);
>>> +assertTrue(tw.onLoadOrder < twa.delegateAttachOrder);
>>> assertTrue(tw.onDetachOrder < tw.onUnloadOrder);
>>> -assertTrue(tw.onUnloadOrder < ta.delegateDetachOrder);
>>> +assertTrue(tw.onUnloadOrder < twa.delegateDetachOrder);
>>>
>>> // Also trivial. Ensure that the panel's onAttach/onDetach is called
>>> before
>>> // its child's onAttach/onDetach.
>>> @@ -150,6 +153,9 @@
>>> // detached/unloaded.
>>> assertTrue(tp.onUnloadOrder < tw.onUnloadOrder);
>>>
>>> +assertTrue(tp.onLoadOrder < tpa.delegateAttachOrder);
>>> +assertTrue(tp.onUnloadOrder < tpa.delegateDetachOrder);
>>> +
>>> // Make sure each widget/panel's elements are actually still attached
>>> to the
>>> // DOM during onLoad/onUnload.
>>> assertTrue(tp.domAttachedOnLoad);
>>> Index: user/src/com/google/gwt/user/client/ui/Panel.java
>>> ===
>>> --- user/src/com/google/gwt/user/client/ui/Panel.java   (revision 8929)
>>> +++ user/src/com/google/gwt/user/client/ui/Panel.java   (working copy)
>>> @@ -183,6 +183,7 @@
>>>*/
>>>   @Override
>>>   protected void onLoad() {
>>> +super.onLoad();
>>>   }
>>>
>>>   /**
>>> @@ -193,6 +194,7 @@
>>>*/
>>>   @Override
>>>   protected void onUnload() {
>>> +super.onUnload();
>>>   }
>>>
>>>   /**
>>>
>>>
>>> --
>>> http://groups.google.com/group/Google-Web-Toolkit-Contributors
>>>
>>
>>
>

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

[gwt-contrib] Re: Update development mode bootstrap script to include browser refresh recommendation (issue984801)

2010-10-13 Thread fredsa

Committed as r9054

http://gwt-code-reviews.appspot.com/984801/show

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


Re: [gwt-contrib] panel does not fire attach events (issue981801)

2010-10-13 Thread Ray Ryan
These events are provided so that you can accomplish the same kinds of tasks
without having to subclass the Widget, so it seemed natural (well, easier)
to put the behavior there. But maybe that is too fragile, I'll try to move
it where it belongs.

Another question is why Panel overrides those methods in the first place.
I'll delete those, they're noise.

Stephen, thanks for catching this, and especially for punching up the test.

On Tue, Oct 12, 2010 at 12:37 PM, Joel Webber  wrote:

> Hmm... I didn't even realize AttachEvent had been added. John & Ray, you
> might want to take a look at this -- in the original design this super
> invocation wouldn't have mattered, because widget's onLoad() was empty
> (onAttach/Detach() weren't really meant to overridden outside of Panel and
> Composite -- onLoad/Unload() were the methods to override). But now it
> appears that Widget.onLoad() has actual code in it. Could this not be moved
> to onAttach?
>
> Le 11 octobre 2010 14:05,  a écrit :
>
> Reviewers: ,
>>
>> Description:
>> Panel's onLoad does not call super.onLoad. This is a simple fix that
>> just adds the missing onLoad call.
>>
>> I have another patch set which fires the attach event in
>> onAttach/onDetach, given these are more stable methods that user's are
>> less prone overriding them.
>>
>> Please review this at http://gwt-code-reviews.appspot.com/981801/show
>>
>> Affected files:
>>  user/src/com/google/gwt/user/client/ui/Panel.java
>>  user/test/com/google/gwt/user/client/ui/WidgetOnLoadTest.java
>>
>>
>> Index: user/test/com/google/gwt/user/client/ui/WidgetOnLoadTest.java
>> ===
>> --- user/test/com/google/gwt/user/client/ui/WidgetOnLoadTest.java
>> (revision 8929)
>> +++ user/test/com/google/gwt/user/client/ui/WidgetOnLoadTest.java
>> (working copy)
>> @@ -121,9 +121,12 @@
>> }
>>
>> TestPanel tp = new TestPanel();
>> +TestAttachHandler tpa = new TestAttachHandler();
>> +tp.addAttachHandler(tpa);
>> +
>> TestWidget tw = new TestWidget();
>> -TestAttachHandler ta = new TestAttachHandler();
>> -tw.addAttachHandler(ta);
>> +TestAttachHandler twa = new TestAttachHandler();
>> +tw.addAttachHandler(twa);
>>
>> tp.add(tw);
>> RootPanel.get().add(tp);
>> @@ -134,9 +137,9 @@
>> assertTrue(tp.onAttachOrder < tp.onLoadOrder);
>> assertTrue(tp.onDetachOrder < tp.onUnloadOrder);
>> assertTrue(tw.onAttachOrder < tw.onLoadOrder);
>> -assertTrue(tw.onLoadOrder < ta.delegateAttachOrder);
>> +assertTrue(tw.onLoadOrder < twa.delegateAttachOrder);
>> assertTrue(tw.onDetachOrder < tw.onUnloadOrder);
>> -assertTrue(tw.onUnloadOrder < ta.delegateDetachOrder);
>> +assertTrue(tw.onUnloadOrder < twa.delegateDetachOrder);
>>
>> // Also trivial. Ensure that the panel's onAttach/onDetach is called
>> before
>> // its child's onAttach/onDetach.
>> @@ -150,6 +153,9 @@
>> // detached/unloaded.
>> assertTrue(tp.onUnloadOrder < tw.onUnloadOrder);
>>
>> +assertTrue(tp.onLoadOrder < tpa.delegateAttachOrder);
>> +assertTrue(tp.onUnloadOrder < tpa.delegateDetachOrder);
>> +
>> // Make sure each widget/panel's elements are actually still attached
>> to the
>> // DOM during onLoad/onUnload.
>> assertTrue(tp.domAttachedOnLoad);
>> Index: user/src/com/google/gwt/user/client/ui/Panel.java
>> ===
>> --- user/src/com/google/gwt/user/client/ui/Panel.java   (revision 8929)
>> +++ user/src/com/google/gwt/user/client/ui/Panel.java   (working copy)
>> @@ -183,6 +183,7 @@
>>*/
>>   @Override
>>   protected void onLoad() {
>> +super.onLoad();
>>   }
>>
>>   /**
>> @@ -193,6 +194,7 @@
>>*/
>>   @Override
>>   protected void onUnload() {
>> +super.onUnload();
>>   }
>>
>>   /**
>>
>>
>> --
>> http://groups.google.com/group/Google-Web-Toolkit-Contributors
>>
>
>

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

[gwt-contrib] Re: Resolve GWT issue 5364. (issue992801)

2010-10-13 Thread Ray Ryan
LGTM presuming a good answer to:

So this is to ensure that the RequestFactoryGenerator can handle things the
following, right?

@Service(com.google.gwt.requestfactory.server.SimpleFoo
.*class*)*public*
*interface* *TestFooPolymorphicRequest* *extends* RequestContext {
   Request echo(P proxy);
}

Do we know what happens to the rest of the chain if someone actually tries
to call such a method?

rjrjr

On Wed, Oct 13, 2010 at 10:32 AM,  wrote:

> Reviewers: rjrjr,
>
> Description:
> Resolve GWT issue 5364.
> Enable RequestFactoryPolymorphicTest.
> Consolidate base-type code in ModelUtils.
> Patch by: bobv
> Review by: rjrjr
>
>
> Please review this at http://gwt-code-reviews.appspot.com/992801/show
>
> Affected files:
>  M user/src/com/google/gwt/editor/rebind/AutoBeanFactoryGenerator.java
>  M user/src/com/google/gwt/editor/rebind/model/AutoBeanFactoryModel.java
>  M user/src/com/google/gwt/editor/rebind/model/ModelUtils.java
>  M
> user/src/com/google/gwt/requestfactory/rebind/RequestFactoryGenerator.java
>  M
> user/src/com/google/gwt/requestfactory/rebind/model/EntityProxyModel.java
>  M
> user/src/com/google/gwt/requestfactory/rebind/model/RequestFactoryModel.java
>  M user/test/com/google/gwt/requestfactory/RequestFactorySuite.java
>
>
>

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

Re: [gwt-contrib] Re: expense isn't getting GWT RC1 release

2010-10-13 Thread John LaBanca
I created an issue so we can fix this for the final GWT 2.1 release:
http://code.google.com/p/google-web-toolkit/issues/detail?id=5418

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


On Wed, Oct 13, 2010 at 5:18 PM, Arthur Kalmenson wrote:

> Just to confirm, changing the repository definition to:
>
>
>gwt-repo
> 
> https://oss.sonatype.org/content/repositories/google-snapshots
> Google Web Toolkit Repository
>
>
> Removes the compile errors from the expense report (I also had to
> remove the .m2/repository/com/google/gwt folder to force Maven to
> redownload 2.1-SNAPSHOT).
>
> --
> Arthur Kalmenson
>
>
>
> On Wed, Oct 13, 2010 at 5:12 PM, Arthur Kalmenson 
> wrote:
> > Hello everyone,
> >
> > I'm trying to build the expense report app, and it looks like the
> > source has been refactored to remove the "app" part from the packages
> > for place, requestfactory, etc. Unfortunately, the expense report POM
> > hasn't been updated to grab GWT RC 1. The repository definition looks
> > like this:
> >
> >
> >gwt-repo
> >
> http://google-web-toolkit.googlecode.com/svn/2.1.0.M3/gwt/maven
> >Google Web Toolkit Repository
> >
> >
> > While the "
> http://google-web-toolkit.googlecode.com/svn/2.1.0.RC1/gwt/maven/";
> > repository doesn't have a GWT release. Will you be putting the new
> > release in the 2.1.0.M3/gwt/maven repository or the
> > 2.1.0.RC1/gwt/maven one? Because all the downloads of GWT RC 1 will
> > have a broken expense report
> >
> > In the mean time, the snapshot repository linked from the blog post
> > (https://oss.sonatype.org/content/repositories/google-snapshots) seems
> > to contain the correct SNAPSHOT. I'll try to use that. Thank you.
> >
> > --
> > Arthur Kalmenson
> >
>
> --
> http://groups.google.com/group/Google-Web-Toolkit-Contributors
>

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

[gwt-contrib] Re: expense isn't getting GWT RC1 release

2010-10-13 Thread Arthur Kalmenson
Just to confirm, changing the repository definition to:


gwt-repo

https://oss.sonatype.org/content/repositories/google-snapshots
Google Web Toolkit Repository


Removes the compile errors from the expense report (I also had to
remove the .m2/repository/com/google/gwt folder to force Maven to
redownload 2.1-SNAPSHOT).

--
Arthur Kalmenson



On Wed, Oct 13, 2010 at 5:12 PM, Arthur Kalmenson  wrote:
> Hello everyone,
>
> I'm trying to build the expense report app, and it looks like the
> source has been refactored to remove the "app" part from the packages
> for place, requestfactory, etc. Unfortunately, the expense report POM
> hasn't been updated to grab GWT RC 1. The repository definition looks
> like this:
>
>    
>            gwt-repo
>            
> http://google-web-toolkit.googlecode.com/svn/2.1.0.M3/gwt/maven
>            Google Web Toolkit Repository
>        
>
> While the "http://google-web-toolkit.googlecode.com/svn/2.1.0.RC1/gwt/maven/";
> repository doesn't have a GWT release. Will you be putting the new
> release in the 2.1.0.M3/gwt/maven repository or the
> 2.1.0.RC1/gwt/maven one? Because all the downloads of GWT RC 1 will
> have a broken expense report
>
> In the mean time, the snapshot repository linked from the blog post
> (https://oss.sonatype.org/content/repositories/google-snapshots) seems
> to contain the correct SNAPSHOT. I'll try to use that. Thank you.
>
> --
> Arthur Kalmenson
>

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


[gwt-contrib] Re: Relaxing the data parameter of HasData#setRowData() from a List to a List. (issue994801)

2010-10-13 Thread jlabanca

committed as r9053

http://gwt-code-reviews.appspot.com/994801/show

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


[gwt-contrib] [google-web-toolkit] r9055 committed - Cherry picking bug fixes from trunk into release branch: 991801, 98980...

2010-10-13 Thread codesite-noreply

Revision: 9055
Author: p...@google.com
Date: Wed Oct 13 10:19:59 2010
Log: Cherry picking bug fixes from trunk into release branch: 991801,  
989801, 995801, 988801


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

Added:
  
/releases/2.1/user/src/com/google/gwt/user/cellview/client/CellBasedWidgetImplSafari.java

Modified:
 /releases/2.1/samples/dynatablerf/build.xml
 /releases/2.1/user/src/com/google/gwt/activity/shared/ActivityManager.java
 /releases/2.1/user/src/com/google/gwt/activity/shared/ActivityMapper.java
 /releases/2.1/user/src/com/google/gwt/logging/client/LoggingPopup.java
 /releases/2.1/user/src/com/google/gwt/user/cellview/CellView.gwt.xml
 /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellBrowser.css
 /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellBrowser.java
 /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellList.java
 /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellTable.java
 /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellTree.java
  
/releases/2.1/user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java
  
/releases/2.1/user/test/com/google/gwt/activity/shared/ActivityManagerTest.java


===
--- /dev/null
+++  
/releases/2.1/user/src/com/google/gwt/user/cellview/client/CellBasedWidgetImplSafari.java	 
Wed Oct 13 10:19:59 2010

@@ -0,0 +1,31 @@
+/*
+ * Copyright 2010 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may  
not
+ * use this file except in compliance with the License. You may obtain a  
copy of

+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,  
WITHOUT

+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations  
under

+ * the License.
+ */
+package com.google.gwt.user.cellview.client;
+
+import com.google.gwt.core.client.Scheduler;
+import com.google.gwt.core.client.Scheduler.ScheduledCommand;
+
+/**
+ * Webkit specified Impl used by cell based widgets.
+ */
+public class CellBasedWidgetImplSafari extends CellBasedWidgetImplStandard  
{

+
+  @Override
+  public void resetFocus(ScheduledCommand command) {
+// Webkit will not focus an element that was created in this event  
loop.

+Scheduler.get().scheduleDeferred(command);
+  }
+}
===
--- /releases/2.1/samples/dynatablerf/build.xml Thu Oct  7 11:13:29 2010
+++ /releases/2.1/samples/dynatablerf/build.xml Wed Oct 13 10:19:59 2010
@@ -13,5 +13,6 @@
 
 
 
+
   
 
===
---  
/releases/2.1/user/src/com/google/gwt/activity/shared/ActivityManager.java	 
Wed Oct  6 08:01:28 2010
+++  
/releases/2.1/user/src/com/google/gwt/activity/shared/ActivityManager.java	 
Wed Oct 13 10:19:59 2010

@@ -54,7 +54,7 @@
 public void setWidget(IsWidget view) {
   if (this.activity == ActivityManager.this.currentActivity) {
 startingNext = false;
-display.setWidget(view);
+showWidget(view);
   }
 }
   }
@@ -94,11 +94,17 @@
   /**
* Deactive the current activity, find the next one from our  
ActivityMapper,

* and start it.
-   *
+   * 
+   * The current activity's widget will be hidden immediately, which can  
cause
+   * flicker if the next activity provides its widget asynchronously. That  
can
+   * be minimized by decent caching. Perenially slow activities might  
mitigate

+   * this by providing a widget immediately, with some kind of "loading"
+   * treatment.
+   *
* @see PlaceChangeEvent.Handler#onPlaceChange(PlaceChangeEvent)
*/
   public void onPlaceChange(PlaceChangeEvent event) {
-Activity nextActivity = mapper.getActivity(event.getNewPlace());
+Activity nextActivity = getNextActivity(event);

 Throwable caughtOnStop = null;
 Throwable caughtOnStart = null;
@@ -118,11 +124,7 @@
   currentActivity = NULL_ACTIVITY;
   startingNext = false;
 } else if (!currentActivity.equals(NULL_ACTIVITY)) {
-  /*
-   * TODO until caching is in place, relying on stopped activities to  
be

-   * good citizens to reduce flicker. This makes me very nervous.
-   */
-  // display.showActivityWidget(null);
+  showWidget(null);

   /*
* Kill off the activity's handlers, so it doesn't have to worry  
about

@@ -146,7 +148,7 @@
 currentActivity = nextActivity;

 if (currentActivity.equals(NULL_ACTIVITY)) {
-  display.setWidget(null);
+  showWidget(null);
   return;
 }

@@ -155,7 +157,7 @@
 /*
  * Now start the thing. Wrap the actual display with a per-call  
instance
  * that protects the display from canceled or stopped activities, and  
which

- * maintain our startingNext state

[gwt-contrib] expense isn't getting GWT RC1 release

2010-10-13 Thread Arthur Kalmenson
Hello everyone,

I'm trying to build the expense report app, and it looks like the
source has been refactored to remove the "app" part from the packages
for place, requestfactory, etc. Unfortunately, the expense report POM
hasn't been updated to grab GWT RC 1. The repository definition looks
like this:


gwt-repo

http://google-web-toolkit.googlecode.com/svn/2.1.0.M3/gwt/maven
Google Web Toolkit Repository


While the "http://google-web-toolkit.googlecode.com/svn/2.1.0.RC1/gwt/maven/";
repository doesn't have a GWT release. Will you be putting the new
release in the 2.1.0.M3/gwt/maven repository or the
2.1.0.RC1/gwt/maven one? Because all the downloads of GWT RC 1 will
have a broken expense report

In the mean time, the snapshot repository linked from the blog post
(https://oss.sonatype.org/content/repositories/google-snapshots) seems
to contain the correct SNAPSHOT. I'll try to use that. Thank you.

--
Arthur Kalmenson

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


[gwt-contrib] [google-web-toolkit] r9054 committed - Update development mode bootstrap script to include browser refresh re...

2010-10-13 Thread codesite-noreply

Revision: 9054
Author: fre...@google.com
Date: Wed Oct 13 10:37:01 2010
Log: Update development mode bootstrap script to include browser refresh  
recommendation

after switching GWT versions. Also, change 'hosted mode' reference to
'development mode'.

Review at http://gwt-code-reviews.appspot.com/984801

Review by: j...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9054

Modified:
 /trunk/dev/core/src/com/google/gwt/dev/shell/HostedHtmlVersion.java

===
--- /trunk/dev/core/src/com/google/gwt/dev/shell/HostedHtmlVersion.java	Tue  
Aug 10 05:38:02 2010
+++ /trunk/dev/core/src/com/google/gwt/dev/shell/HostedHtmlVersion.java	Wed  
Oct 13 10:37:01 2010

@@ -46,9 +46,10 @@
   "Invalid version number \"" + version
   + "\" passed to external.gwtOnLoad(), expected \""
   + EXPECTED_GWT_ONLOAD_VERSION
-  + "\"; your hosted mode bootstrap file may be out of date; "
+  + "\"; your development mode bootstrap file may be out of  
date; "
   + "if you are using -noserver try recompiling and  
redeploying "

-  + "your app");
+  + "your app; if you just switched to a different version of "
+  + "GWT, try clearing your browser cache");
   return false;
 }
 return true;

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


[gwt-contrib] [google-web-toolkit] r9053 committed - Relaxing the data parameter of HasData#setRowData() from a List to ...

2010-10-13 Thread codesite-noreply

Revision: 9053
Author: jlaba...@google.com
Date: Wed Oct 13 10:24:11 2010
Log: Relaxing the data parameter of HasData#setRowData() from a List to  
a List.


Review at http://gwt-code-reviews.appspot.com/994801

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

Modified:
 /trunk/user/src/com/google/gwt/user/cellview/client/AbstractHasData.java
 /trunk/user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java
 /trunk/user/src/com/google/gwt/user/cellview/client/HasDataPresenter.java
 /trunk/user/src/com/google/gwt/view/client/HasData.java
 /trunk/user/test/com/google/gwt/view/client/MockHasData.java

===
---  
/trunk/user/src/com/google/gwt/user/cellview/client/AbstractHasData.java	 
Tue Oct 12 07:55:56 2010
+++  
/trunk/user/src/com/google/gwt/user/cellview/client/AbstractHasData.java	 
Wed Oct 13 10:24:11 2010

@@ -535,7 +535,7 @@
 presenter.setRowCount(size, isExact);
   }

-  public void setRowData(int start, List values) {
+  public void setRowData(int start, List values) {
 presenter.setRowData(start, values);
   }

===
---  
/trunk/user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java	 
Wed Oct 13 12:59:56 2010
+++  
/trunk/user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java	 
Wed Oct 13 10:24:11 2010

@@ -492,7 +492,7 @@
   presenter.setRowCount(size, isExact);
 }

-public void setRowData(int start, List values) {
+public void setRowData(int start, List values) {
   presenter.setRowData(start, values);
 }

===
---  
/trunk/user/src/com/google/gwt/user/cellview/client/HasDataPresenter.java	 
Wed Oct  6 11:53:24 2010
+++  
/trunk/user/src/com/google/gwt/user/cellview/client/HasDataPresenter.java	 
Wed Oct 13 10:24:11 2010

@@ -651,7 +651,7 @@
 RowCountChangeEvent.fire(display, count, rowCountIsExact);
   }

-  public void setRowData(int start, List values) {
+  public void setRowData(int start, List values) {
 int valuesLength = values.size();
 int valuesEnd = start + valuesLength;

===
--- /trunk/user/src/com/google/gwt/view/client/HasData.java	Tue Oct 12  
07:55:56 2010
+++ /trunk/user/src/com/google/gwt/view/client/HasData.java	Wed Oct 13  
10:24:11 2010

@@ -39,7 +39,7 @@
* @param start the start index of the data
* @param values the values within the range
*/
-  void setRowData(int start, List values);
+  void setRowData(int start, List values);

   /**
* Set the {...@link SelectionModel} used by this {...@link HasData}.
===
--- /trunk/user/test/com/google/gwt/view/client/MockHasData.java	Tue Aug 17  
10:14:36 2010
+++ /trunk/user/test/com/google/gwt/view/client/MockHasData.java	Wed Oct 13  
10:24:11 2010

@@ -81,7 +81,7 @@

   private final HandlerManager handlerManager = new HandlerManager(this);
   private Range lastRange;
-  private List lastRowData;
+  private List lastRowData;

   private int pageStart;
   private int pageSize = DEFAULT_PAGE_SIZE;
@@ -117,7 +117,7 @@
*
* @return the last data set
*/
-  public List getLastRowData() {
+  public List getLastRowData() {
 return lastRowData;
   }

@@ -146,7 +146,7 @@
 return rowCountExact;
   }

-  public void setRowData(int start, List values) {
+  public void setRowData(int start, List values) {
 lastRange = new Range(start, values.size());
 lastRowData = values;
   }

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


[gwt-contrib] [google-web-toolkit] r9052 committed - Tighten up gwt-user checkstyle patterns....

2010-10-13 Thread codesite-noreply

Revision: 9052
Author: sco...@google.com
Date: Wed Oct 13 10:20:07 2010
Log: Tighten up gwt-user checkstyle patterns.

Review by: jlaba...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9052

Modified:
 /trunk/eclipse/user/.checkstyle

===
--- /trunk/eclipse/user/.checkstyle Mon Oct 11 04:23:50 2010
+++ /trunk/eclipse/user/.checkstyle Wed Oct 13 10:20:07 2010
@@ -1,9 +1,9 @@
 
 
 check-config-name="GWT Checks" local="false">
-include-pattern="true"/>
-match-pattern="core[/\\]src[/\\]javax[/\\]validation.*\.java"  
include-pattern="false"/>
-match-pattern="core[/\\]src[/\\]org[/\\]hibernate[/\\]validator.*\.java"  
include-pattern="false"/>
+include-pattern="true"/>
+match-pattern="core[/\\]src[/\\]javax[/\\]validation[/\\].*\.java$"  
include-pattern="false"/>
+match-pattern="core[/\\]src[/\\]org[/\\]hibernate[/\\]validator[/\\].*\.java$"  
include-pattern="false"/>

 
 check-config-name="GWT Checks for Tests" local="false">
 match-pattern="core[/\\]test[/\\]com[/\\]google[/\\].*\.java$"  
include-pattern="true"/>


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


[gwt-contrib] Re: Fixing a few logic and usability bugs in Cell Widgets. CellTree items are now easier to click. ... (issue995801)

2010-10-13 Thread jlabanca

committed as r9050

http://gwt-code-reviews.appspot.com/995801/show

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


[gwt-contrib] [google-web-toolkit] r9050 committed - Fixing a few logic and usability bugs in Cell Widgets. CellTree items...

2010-10-13 Thread codesite-noreply

Revision: 9050
Author: jlaba...@google.com
Date: Wed Oct 13 12:59:56 2010
Log: Fixing a few logic and usability bugs in Cell Widgets.  CellTree items  
are now easier to click. Fixed a bug in CellBrowser keyboard navigation on  
Chrome where we would get async blur events that prevented keyboard  
navigation. Fixed a few IE7 specific bugs that occur when delayed events  
fire on elements that have been replaced.


Review at http://gwt-code-reviews.appspot.com/995801

Review by: r...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9050

Added:
  
/trunk/user/src/com/google/gwt/user/cellview/client/CellBasedWidgetImplSafari.java

Modified:
 /trunk/user/src/com/google/gwt/user/cellview/CellView.gwt.xml
 /trunk/user/src/com/google/gwt/user/cellview/client/CellBrowser.css
 /trunk/user/src/com/google/gwt/user/cellview/client/CellBrowser.java
 /trunk/user/src/com/google/gwt/user/cellview/client/CellList.java
 /trunk/user/src/com/google/gwt/user/cellview/client/CellTable.java
 /trunk/user/src/com/google/gwt/user/cellview/client/CellTree.java
 /trunk/user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java

===
--- /dev/null
+++  
/trunk/user/src/com/google/gwt/user/cellview/client/CellBasedWidgetImplSafari.java	 
Wed Oct 13 12:59:56 2010

@@ -0,0 +1,31 @@
+/*
+ * Copyright 2010 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may  
not
+ * use this file except in compliance with the License. You may obtain a  
copy of

+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,  
WITHOUT

+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations  
under

+ * the License.
+ */
+package com.google.gwt.user.cellview.client;
+
+import com.google.gwt.core.client.Scheduler;
+import com.google.gwt.core.client.Scheduler.ScheduledCommand;
+
+/**
+ * Webkit specified Impl used by cell based widgets.
+ */
+public class CellBasedWidgetImplSafari extends CellBasedWidgetImplStandard  
{

+
+  @Override
+  public void resetFocus(ScheduledCommand command) {
+// Webkit will not focus an element that was created in this event  
loop.

+Scheduler.get().scheduleDeferred(command);
+  }
+}
===
--- /trunk/user/src/com/google/gwt/user/cellview/CellView.gwt.xml	Thu Sep  
23 12:26:00 2010
+++ /trunk/user/src/com/google/gwt/user/cellview/CellView.gwt.xml	Wed Oct  
13 12:59:56 2010

@@ -24,7 +24,6 @@
   class="com.google.gwt.user.cellview.client.CellBasedWidgetImplStandard">
 class="com.google.gwt.user.cellview.client.CellBasedWidgetImpl"/>

 
-  
   
   
   
@@ -40,6 +39,14 @@
 
   

+  
+  class="com.google.gwt.user.cellview.client.CellBasedWidgetImplSafari">
+class="com.google.gwt.user.cellview.client.CellBasedWidgetImpl"/>

+
+  
+
+  
+
   
   class="com.google.gwt.user.cellview.client.CellTable.ImplTrident">
 class="com.google.gwt.user.cellview.client.CellTable.Impl"/>

===
--- /trunk/user/src/com/google/gwt/user/cellview/client/CellBrowser.css	Wed  
Sep 22 12:58:01 2010
+++ /trunk/user/src/com/google/gwt/user/cellview/client/CellBrowser.css	Wed  
Oct 13 12:59:56 2010

@@ -40,6 +40,7 @@
 @sprite .cellBrowserSelectedItem {
   gwt-image: 'cellBrowserSelectedBackground';
   background-color: #628cd5;
+  background-repeat: repeat-x;
   color: white;
   height: auto;
   overflow: hidden;
@@ -48,6 +49,7 @@
 @sprite .cellBrowserOpenItem {
   gwt-image: 'cellBrowserOpenBackground';
   background-color: #7b7b7b;
+  background-repeat: repeat-x;
   color: white;
   height: auto;
   overflow: hidden;
===
--- /trunk/user/src/com/google/gwt/user/cellview/client/CellBrowser.java	 
Tue Oct 12 07:55:56 2010
+++ /trunk/user/src/com/google/gwt/user/cellview/client/CellBrowser.java	 
Wed Oct 13 12:59:56 2010

@@ -101,14 +101,16 @@
 /**
  * The background used for open items.
  */
-@ImageOptions(repeatStyle = RepeatStyle.Horizontal, flipRtl = true)
+// Use RepeatStyle.BOTH to ensure that we do not bundle the image.
+@ImageOptions(repeatStyle = RepeatStyle.Both, flipRtl = true)
 ImageResource cellBrowserOpenBackground();

 /**
  * The background used for selected items.
  */
+// Use RepeatStyle.BOTH to ensure that we do not bundle the image.
 @Source("cellTreeSelectedBackground.png")
-@ImageOptions(repeatStyle = RepeatStyle.Horizontal, flipRtl = true)
+@ImageOptions(repeatStyle = RepeatStyle.Both, flipRtl = true)
 ImageResource cellBrowserSelectedBackground();

 /**
===
--- /trunk/user/src/com/google/gwt/user/cellview/client/CellList.java	Tue  

[gwt-contrib] Re: The proposed fix will disambiguate setter overloads by ranking them according (issue993801)

2010-10-13 Thread rjrjr

That's a nice approach.


http://gwt-code-reviews.appspot.com/993801/diff/1/2
File user/src/com/google/gwt/uibinder/rebind/model/OwnerFieldClass.java
(right):

http://gwt-code-reviews.appspot.com/993801/diff/1/2#newcode46
user/src/com/google/gwt/uibinder/rebind/model/OwnerFieldClass.java:46:
private static HashMap typeRank;
Make this final. You can build it in another map in your static
initializer, and fill in typeRank via Collections.unmodifiableMap()

http://gwt-code-reviews.appspot.com/993801/diff/1/2#newcode51
user/src/com/google/gwt/uibinder/rebind/model/OwnerFieldClass.java:51:
typeRank.put("java.lang.Boolean", 2);
Seems like you could rank the java.lang types as 3, so that you prefer
setBaz(boolean) to setBaz(Boolean). (Remember to add that test if you
make this change, and to set your default cost to 4. And you might want
to put that default cost in a constant next to this map.)

http://gwt-code-reviews.appspot.com/993801/diff/1/2#newcode186
user/src/com/google/gwt/uibinder/rebind/model/OwnerFieldClass.java:186:
!sameParameterTypes(preferredMethod, method)) {
The sameParameterTypes call is required to distinguish overrides from
super methods, right? Should mention that, and be sure unit test covers
it.

http://gwt-code-reviews.appspot.com/993801/diff/1/2#newcode334
user/src/com/google/gwt/uibinder/rebind/model/OwnerFieldClass.java:334:
* Ranks given method based on parameter conversion cost.
Please document the ranking here, like you did in the patch description

http://gwt-code-reviews.appspot.com/993801/diff/1/2#newcode362
user/src/com/google/gwt/uibinder/rebind/model/OwnerFieldClass.java:362:
private boolean sameParameterTypes(final JMethod m1, final JMethod m2) {
why?

http://gwt-code-reviews.appspot.com/993801/diff/1/3
File
user/test/com/google/gwt/uibinder/rebind/model/OwnerFieldClassTest.java
(right):

http://gwt-code-reviews.appspot.com/993801/diff/1/3#newcode146
user/test/com/google/gwt/uibinder/rebind/model/OwnerFieldClassTest.java:146:
public void testCheckBoxValueSetters() throws Exception {
Thanks for the test, but you need more to cover your various ranking
scenarios.

http://gwt-code-reviews.appspot.com/993801/show

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


[gwt-contrib] Re: DeadCodeElimination should only run once. (issue983802)

2010-10-13 Thread zundel

LGTM, pending an extra test or TODO in the test casedescribing what
cases caused the optimizer to not run in one pass.

Looking further at the logs the initial run of the DeadCodeElimination
optimizer went from ~90ms down to ~45ms with this change, so I'd say its
a pretty clear win.

On 2010/10/13 19:02:46, scottb wrote:

Okay, so when I drill down, optimization is net faster with my patch.

A

typical example, on one particular optimize loop, before DCE would

take

  ~15-20ms, but with my patch more like ~7-15ms.  On the down side,
MethodInliner seems very slightly slower, but it appears to be a

decent net

win.



On Wed, Oct 13, 2010 at 2:46 PM, Scott Blum 

wrote:


> On Wed, Oct 13, 2010 at 2:39 PM, Eric Ayers

 wrote:

>
>> This is good, it confirms that the number of changes to the AST

hasn't

>> changed (or haven't changed much).  I was thinking of the

speedtracer logs

>> which would show a change in the real-time performance of each pass

the

>> optimizers. (re-run with

-Dgwt.speedtracerlog=/tmp/speedtracer-trunk.html )

>
>
> I did that first, but I found the results kind of hard to understand

for

> the particular application relative to using the logs.  Lemme put a

bit more

> effort in.
>





http://gwt-code-reviews.appspot.com/983802/show

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


[gwt-contrib] [google-web-toolkit] r9048 committed - Setting the background color of LoggingPopup using Style so it works c...

2010-10-13 Thread codesite-noreply

Revision: 9048
Author: jlaba...@google.com
Date: Wed Oct 13 08:53:39 2010
Log: Setting the background color of LoggingPopup using Style so it works  
correctly on IE. Also scrolling the log to the bottom when log items are  
added.


Review at http://gwt-code-reviews.appspot.com/989801

Review by: unn...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9048

Modified:
 /trunk/user/src/com/google/gwt/logging/client/LoggingPopup.java

===
--- /trunk/user/src/com/google/gwt/logging/client/LoggingPopup.java	Tue Jun  
22 06:26:45 2010
+++ /trunk/user/src/com/google/gwt/logging/client/LoggingPopup.java	Wed Oct  
13 08:53:39 2010

@@ -138,7 +138,7 @@
 super(false, false);
 VerticalPanel mainPanel = new VerticalPanel();
 mainPanel.setBorderWidth(1);
-mainPanel.getElement().setAttribute("style", "background-color:white");
+mainPanel.getElement().getStyle().setBackgroundColor("white");

 final HTML titleBar = new HTML("Logging");
 mainPanel.add(titleBar);
@@ -184,12 +184,12 @@
   @Override
   public void add(Widget w) {
 logArea.add(w);
+ 
scrollPanel.setScrollPosition(scrollPanel.getElement().getScrollHeight());

   }

   @Override
   public void setWidget(Widget w) {
 logArea.clear();
-logArea.add(w);
-  }
-
-}
+add(w);
+  }
+}

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


[gwt-contrib] [google-web-toolkit] r9049 committed - Fixes http://code.google.com/p/google-web-toolkit/issues/detail?id=537...

2010-10-13 Thread codesite-noreply

Revision: 9049
Author: rj...@google.com
Date: Wed Oct 13 09:41:33 2010
Log: Fixes  
http://code.google.com/p/google-web-toolkit/issues/detail?id=5375,

calling setDisplay(null) from a PlaceChangeEvent.Handler will cause an
NPE in the ActivityManager's own PlaceChangeEvent.Handler

Also undoes demo-time hack that left stopped widgets in place to
reduce flicker. Apps will have to reduce flicker themselves.

Review at http://gwt-code-reviews.appspot.com/988801

Review by: robertvaw...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9049

Modified:
 /trunk/user/src/com/google/gwt/activity/shared/ActivityManager.java
 /trunk/user/src/com/google/gwt/activity/shared/ActivityMapper.java
 /trunk/user/test/com/google/gwt/activity/shared/ActivityManagerTest.java

===
--- /trunk/user/src/com/google/gwt/activity/shared/ActivityManager.java	Tue  
Oct 12 10:53:11 2010
+++ /trunk/user/src/com/google/gwt/activity/shared/ActivityManager.java	Wed  
Oct 13 09:41:33 2010

@@ -1,12 +1,12 @@
 /*
  * Copyright 2010 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
@@ -49,7 +49,7 @@
 public void setWidget(IsWidget view) {
   if (this.activity == ActivityManager.this.currentActivity) {
 startingNext = false;
-display.setWidget(view);
+showWidget(view);
   }
 }
   }
@@ -74,7 +74,7 @@

   /**
* Create an ActivityManager. Next call {...@link #setDisplay}.
-   *
+   *
* @param mapper finds the {...@link Activity} for a given
*  {...@link com.google.gwt.place.shared.Place}
* @param eventBus source of {...@link PlaceChangeEvent} and
@@ -89,11 +89,17 @@
   /**
* Deactivate the current activity, find the next one from our  
ActivityMapper,

* and start it.
-   *
+   * 
+   * The current activity's widget will be hidden immediately, which can  
cause
+   * flicker if the next activity provides its widget asynchronously. That  
can
+   * be minimized by decent caching. Perenially slow activities might  
mitigate

+   * this by providing a widget immediately, with some kind of "loading"
+   * treatment.
+   *
* @see  
com.google.gwt.place.shared.PlaceChangeEvent.Handler#onPlaceChange(PlaceChangeEvent)

*/
   public void onPlaceChange(PlaceChangeEvent event) {
-Activity nextActivity = mapper.getActivity(event.getNewPlace());
+Activity nextActivity = getNextActivity(event);

 Throwable caughtOnStop = null;
 Throwable caughtOnStart = null;
@@ -113,11 +119,7 @@
   currentActivity = NULL_ACTIVITY;
   startingNext = false;
 } else if (!currentActivity.equals(NULL_ACTIVITY)) {
-  /*
-   * TODO until caching is in place, relying on stopped activities to  
be

-   * good citizens to reduce flicker. This makes me very nervous.
-   */
-  // display.showActivityWidget(null);
+  showWidget(null);

   /*
* Kill off the activity's handlers, so it doesn't have to worry  
about

@@ -141,7 +143,7 @@
 currentActivity = nextActivity;

 if (currentActivity.equals(NULL_ACTIVITY)) {
-  display.setWidget(null);
+  showWidget(null);
   return;
 }

@@ -150,7 +152,7 @@
 /*
  * Now start the thing. Wrap the actual display with a per-call  
instance
  * that protects the display from canceled or stopped activities, and  
which

- * maintain our startingNext state.
+ * maintains our startingNext state.
  */
 try {
   currentActivity.start(new ProtectedDisplay(currentActivity),
@@ -174,7 +176,7 @@

   /**
* Reject the place change if the current activity is not willing to  
stop.

-   *
+   *
* @see  
com.google.gwt.place.shared.PlaceChangeRequestEvent.Handler#onPlaceChangeRequest(PlaceChangeRequestEvent)

*/
   public void onPlaceChangeRequest(PlaceChangeRequestEvent event) {
@@ -190,7 +192,7 @@
* If you are disposing of an ActivityManager, it is important to call
* setDisplay(null) to get it to deregister from the event bus, so that  
it can

* be garbage collected.
-   *
+   *
* @param display an instance of AcceptsOneWidget
*/
   public void setDisplay(AcceptsOneWidget display) {
@@ -201,6 +203,24 @@
   updateHandlers(willBeActive);
 }
   }
+
+  private Activity getNextActivity(PlaceChangeEvent event) {
+if (display == null) {
+  /*
+   * Display may have been nulled during PlaceChangeEvent dispatch.  
Don't

+   * bother the mapper, just return a null to ensure we shut down the
+   * current activity
+   */
+ 

[gwt-contrib] Re: Fixes http://code.google.com/p/google-web-toolkit/issues/detail?id=5375, (issue988801)

2010-10-13 Thread rjrjr

r9049   

On 2010/10/13 02:04:52, bobv wrote:

LGTM




http://gwt-code-reviews.appspot.com/988801/show

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


[gwt-contrib] [google-web-toolkit] r9047 committed - Added jaxb to DynaTableRf WEB-INF/lib for 1.5 compatibility...

2010-10-13 Thread codesite-noreply

Revision: 9047
Author: rchan...@google.com
Date: Wed Oct 13 07:57:35 2010
Log: Added jaxb to DynaTableRf WEB-INF/lib for 1.5 compatibility

Review at http://gwt-code-reviews.appspot.com/991801

Review by: jlaba...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9047

Modified:
 /trunk/samples/dynatablerf/build.xml

===
--- /trunk/samples/dynatablerf/build.xmlThu Oct  7 13:59:41 2010
+++ /trunk/samples/dynatablerf/build.xmlWed Oct 13 07:57:35 2010
@@ -13,5 +13,6 @@
 
 
 
+
   
 

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


[gwt-contrib] [google-web-toolkit] r9046 committed - Fix null exception in HostedLinker which is run by GWTShell...

2010-10-13 Thread codesite-noreply

Revision: 9046
Author: unn...@google.com
Date: Wed Oct 13 07:49:55 2010
Log: Fix null exception in HostedLinker which is run by GWTShell

Review by: con...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9046

Modified:
  
/trunk/dev/core/src/com/google/gwt/core/ext/linker/impl/PermutationsUtil.java


===
---  
/trunk/dev/core/src/com/google/gwt/core/ext/linker/impl/PermutationsUtil.java	 
Tue Oct 12 16:00:43 2010
+++  
/trunk/dev/core/src/com/google/gwt/core/ext/linker/impl/PermutationsUtil.java	 
Wed Oct 13 07:49:55 2010

@@ -66,7 +66,8 @@
* compilation. A single compilation can have multiple property settings  
if
* the compiles for those settings yielded the exact same compiled  
output.

*/
-  protected SortedMap>>  
propMapsByPermutation = null;
+  protected SortedMap>>  
propMapsByPermutation =

+  new TreeMap>>();

   /**
* Uses the internal map to insert JS to select a permutation into the

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


[gwt-contrib] Re: Setting the background color of LoggingPopup using Style so it works correctly on IE. Also scrol... (issue989801)

2010-10-13 Thread jlabanca

committed as r9048

http://gwt-code-reviews.appspot.com/989801/show

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


[gwt-contrib] [google-web-toolkit] r9045 committed - Minor tweaks for dynatablerd and showcase....

2010-10-13 Thread codesite-noreply

Revision: 9045
Author: jlaba...@google.com
Date: Wed Oct 13 06:04:39 2010
Log: Minor tweaks for dynatablerd and showcase.

Review at http://gwt-code-reviews.appspot.com/990801

Review by: r...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9045

Modified:
  
/trunk/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/widgets/SummaryWidget.ui.xml
  
/trunk/samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellList.java
  
/trunk/samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellTable.ui.xml


===
---  
/trunk/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/widgets/SummaryWidget.ui.xml	 
Fri Sep 24 12:10:50 2010
+++  
/trunk/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/widgets/SummaryWidget.ui.xml	 
Wed Oct 13 06:04:39 2010

@@ -9,6 +9,10 @@
   .thirty {
width: 30%
   }
+
+  .table {
+   width: 100%;
+  }
 
   
 
@@ -29,7 +33,7 @@
   
 
 
-  
+  
 
   
 
===
---  
/trunk/samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellList.java	 
Wed Sep 22 12:58:01 2010
+++  
/trunk/samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellList.java	 
Wed Oct 13 06:04:39 2010

@@ -33,6 +33,7 @@
 import com.google.gwt.uibinder.client.UiField;
 import com.google.gwt.user.cellview.client.CellList;
 import  
com.google.gwt.user.cellview.client.HasKeyboardPagingPolicy.KeyboardPagingPolicy;
+import  
com.google.gwt.user.cellview.client.HasKeyboardSelectionPolicy.KeyboardSelectionPolicy;

 import com.google.gwt.user.client.rpc.AsyncCallback;
 import com.google.gwt.user.client.ui.AbstractImagePrototype;
 import com.google.gwt.user.client.ui.Button;
@@ -174,6 +175,7 @@
 ContactDatabase.ContactInfo.KEY_PROVIDER);
 cellList.setPageSize(30);
 cellList.setKeyboardPagingPolicy(KeyboardPagingPolicy.INCREASE_RANGE);
+ 
cellList.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.BOUND_TO_SELECTION);


 // Add a selection model so we can select cells.
 final SingleSelectionModel selectionModel = new  
SingleSelectionModel(

===
---  
/trunk/samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellTable.ui.xml	 
Tue Jul 20 10:54:02 2010
+++  
/trunk/samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellTable.ui.xml	 
Wed Oct 13 06:04:39 2010

@@ -6,7 +6,6 @@

   
 .cellTable {
-  height: 400px;
   width: 600px;
   border: 1px solid #ccc;
   text-align: left;

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


[gwt-contrib] Re: Minor tweaks for dynatablerd and showcase. (issue990801)

2010-10-13 Thread jlabanca

committed as r9045

http://gwt-code-reviews.appspot.com/990801/show

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


[gwt-contrib] [google-web-toolkit] r9044 committed - Modifying WebAppCreator to include jars from the war/WEB-INF/lib folde...

2010-10-13 Thread codesite-noreply

Revision: 9044
Author: jlaba...@google.com
Date: Wed Oct 13 05:26:50 2010
Log: Modifying WebAppCreator to include jars from the war/WEB-INF/lib  
folder on the Eclipse classpath when generating an Eclipse project view the  
ant build target "eclipse.generate". Currently, if the user adds jars to  
WEB-INF/lib (such as the DynaTableRf sample), then generates an Eclipse  
project, those jars are not on the classpath, which causes Eclipse compile  
errors.  With this change, they will be on the classpath.  This puts  
gwt-servlet.jar on the classpath as well, but that seems like the desired  
behavior now that gwt-servlet.jar includes external jars which are not  
contained in gwt-user.jar.


Issue: 5362

Review at http://gwt-code-reviews.appspot.com/976802

Review by: rchan...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9044

Modified:
 /trunk/user/src/com/google/gwt/user/tools/.classpathsrc
 /trunk/user/src/com/google/gwt/user/tools/WebAppCreator.java

===
--- /trunk/user/src/com/google/gwt/user/tools/.classpathsrc	Mon Jun  7  
12:20:31 2010
+++ /trunk/user/src/com/google/gwt/user/tools/.classpathsrc	Wed Oct 13  
05:26:50 2010

@@ -6,4 +6,5 @@
path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
path="org.eclipse.jdt.junit.JUNIT_CONTAINER/3"/>


+...@serverclasspathlibs
 
===
--- /trunk/user/src/com/google/gwt/user/tools/WebAppCreator.java	Mon Oct 11  
05:45:17 2010
+++ /trunk/user/src/com/google/gwt/user/tools/WebAppCreator.java	Wed Oct 13  
05:26:50 2010

@@ -337,6 +337,7 @@
 File srcDir = Utility.getDirectory(outDir, srcFolder, true);
 File warDir = Utility.getDirectory(outDir, warFolder, true);
 File webInfDir = Utility.getDirectory(warDir, "WEB-INF", true);
+File libDir = Utility.getDirectory(webInfDir, "lib", true);
 File moduleDir = Utility.getDirectory(srcDir,  
modulePackageName.replace(

 '.', '/'), true);
 File clientDir = Utility.getDirectory(moduleDir, "client", true);
@@ -368,6 +369,19 @@
 replacements.put("@testFolder", testFolder);
 replacements.put("@warFolder", warFolder);

+// Collect the list of server libs to include on the eclipse classpath.
+StringBuilder serverLibs = new StringBuilder();
+if (libDir.exists()) {
+  for (File file : libDir.listFiles()) {
+if (file.getName().toLowerCase().endsWith(".jar")) {
+  serverLibs.append("   path=\"war/WEB-INF/lib/");

+  serverLibs.append(file.getName());
+  serverLibs.append("\"/>\n");
+}
+  }
+}
+replacements.put("@serverClasspathLibs", serverLibs.toString());
+
 String antEclipseRule = "";
 if (noEclipse) {
   /*

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


[gwt-contrib] Re: Modifying WebAppCreator to include jars from the war/WEB-INF/lib folder on the Eclipse classpath... (issue976802)

2010-10-13 Thread jlabanca

committed as r9044

http://gwt-code-reviews.appspot.com/976802/show

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


[gwt-contrib] Re: Fixing a bug where headers are not redrawn when the data changes. I was trying to be crafty and... (issue971801)

2010-10-13 Thread jlabanca

committed as r9042

http://gwt-code-reviews.appspot.com/971801/show

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


[gwt-contrib] [google-web-toolkit] r9043 committed - Cherry picking bug fixes from trunk into release branch: 974801, 97680...

2010-10-13 Thread codesite-noreply

Revision: 9043
Author: p...@google.com
Date: Wed Oct 13 06:23:15 2010
Log: Cherry picking bug fixes from trunk into release branch: 974801,  
976801, 887804, 846801, 978801.


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

Modified:
  
/releases/2.1/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/AddressProxy.java
  
/releases/2.1/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java
  
/releases/2.1/user/src/com/google/gwt/logging/server/RemoteLoggingServiceUtil.java
  
/releases/2.1/user/src/com/google/gwt/requestfactory/client/impl/EntityProxyCategory.java
  
/releases/2.1/user/src/com/google/gwt/requestfactory/server/JsonRequestProcessor.java

 /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellList.java
 /releases/2.1/user/src/com/google/gwt/user/client/ui/CheckBox.java
 /releases/2.1/user/src/com/google/gwt/user/client/ui/MenuBar.java
 /releases/2.1/user/src/com/google/gwt/user/client/ui/MenuItem.java
 /releases/2.1/user/src/com/google/gwt/user/client/ui/ToggleButton.java
  
/releases/2.1/user/src/com/google/gwt/user/theme/chrome/public/gwt/chrome/chrome.css
  
/releases/2.1/user/src/com/google/gwt/user/theme/chrome/public/gwt/chrome/chrome_rtl.css
  
/releases/2.1/user/src/com/google/gwt/user/theme/dark/public/gwt/dark/dark.css
  
/releases/2.1/user/src/com/google/gwt/user/theme/dark/public/gwt/dark/dark_rtl.css
  
/releases/2.1/user/src/com/google/gwt/user/theme/standard/public/gwt/standard/standard.css
  
/releases/2.1/user/src/com/google/gwt/user/theme/standard/public/gwt/standard/standard_rtl.css
  
/releases/2.1/user/test/com/google/gwt/requestfactory/client/FindServiceTest.java
  
/releases/2.1/user/test/com/google/gwt/requestfactory/client/RequestFactoryStringTest.java
  
/releases/2.1/user/test/com/google/gwt/requestfactory/client/RequestFactoryTest.java
  
/releases/2.1/user/test/com/google/gwt/requestfactory/shared/SimpleBarProxy.java

 /releases/2.1/user/test/com/google/gwt/user/client/ui/CustomButtonTest.java
 /releases/2.1/user/test/com/google/gwt/user/client/ui/MenuBarTest.java

===
---  
/releases/2.1/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/AddressProxy.java	 
Tue Sep 21 12:24:16 2010
+++  
/releases/2.1/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/AddressProxy.java	 
Wed Oct 13 06:23:15 2010

@@ -27,8 +27,6 @@
 public interface AddressProxy extends EntityProxy {
   String getCity();

-  String getId();
-
   String getState();

   String getStreet();
===
---  
/releases/2.1/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java	 
Sun Oct  3 11:35:25 2010
+++  
/releases/2.1/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java	 
Wed Oct 13 06:23:15 2010

@@ -30,8 +30,6 @@

   String getDescription();

-  String getId();
-
   PersonProxy getMentor();

   String getName();
===
---  
/releases/2.1/user/src/com/google/gwt/logging/server/RemoteLoggingServiceUtil.java	 
Thu Sep 30 09:09:15 2010
+++  
/releases/2.1/user/src/com/google/gwt/logging/server/RemoteLoggingServiceUtil.java	 
Wed Oct 13 06:23:15 2010

@@ -16,8 +16,6 @@

 package com.google.gwt.logging.server;

-import org.json.JSONException;
-
 import java.util.logging.LogRecord;
 import java.util.logging.Logger;

@@ -71,7 +69,9 @@
   lr = JsonLogRecordServerUtil.logRecordFromJson(
   serializedLogRecordJson);
   logOnServer(lr, strongName, deobfuscator, loggerNameOverride);
-} catch (JSONException e) {
+} catch (Exception e) {
+  // We don't want to import the JsonException, which will require the  
json

+  // jar when this class loads, so we just catch all exceptions here
   throw new RemoteLoggingException("Failed to deserialize JSON", e);
 }
   }
===
---  
/releases/2.1/user/src/com/google/gwt/requestfactory/client/impl/EntityProxyCategory.java	 
Fri Oct  1 18:15:55 2010
+++  
/releases/2.1/user/src/com/google/gwt/requestfactory/client/impl/EntityProxyCategory.java	 
Wed Oct 13 06:23:15 2010

@@ -49,8 +49,7 @@
 return stableId(bean).hashCode();
   }

-  public static AbstractRequestContext requestContext(
-  AutoBean bean) {
+  public static AbstractRequestContext requestContext(AutoBean bean) {
 return (AbstractRequestContext) bean.getTag(REQUEST_CONTEXT);
   }

@@ -70,13 +69,11 @@
* EntityProxy, that its return values are mutable.
*/
   // CHECKSTYLE_OFF
-  public static  T __intercept(AutoBean bean,
-  T returnValue) {
+  public static  T __intercept(AutoBean bean, T returnValue) {
 // CHECKSTYLE_ON
-if (!(returnValue instanceof EntityProxy)) {
-  return returnValue;
-}
+
 AbstractRequestContext context = requestContext(bean);
+
 /*
  * The context will be null if the bean is immutable. If the context is
  * locked,

[gwt-contrib] [google-web-toolkit] r9041 committed - Deprecate DeferredCommand and IncrementalCommand....

2010-10-13 Thread codesite-noreply

Revision: 9041
Author: gwt.mirror...@gmail.com
Date: Wed Oct 13 12:25:22 2010
Log: Deprecate DeferredCommand and IncrementalCommand.
Add MockScheduler.
Patch by: bobv
Review by: rjrjr

Review at http://gwt-code-reviews.appspot.com/982802

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

Added:
 /trunk/user/src/com/google/gwt/core/client/testing
 /trunk/user/src/com/google/gwt/core/client/testing/StubScheduler.java
Modified:
 /trunk/user/src/com/google/gwt/core/client/Scheduler.java
 /trunk/user/src/com/google/gwt/user/client/Command.java
 /trunk/user/src/com/google/gwt/user/client/DeferredCommand.java
 /trunk/user/src/com/google/gwt/user/client/IncrementalCommand.java

===
--- /dev/null
+++ /trunk/user/src/com/google/gwt/core/client/testing/StubScheduler.java	 
Wed Oct 13 12:25:22 2010

@@ -0,0 +1,84 @@
+/*
+ * Copyright 2010 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may  
not
+ * use this file except in compliance with the License. You may obtain a  
copy of

+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,  
WITHOUT

+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations  
under

+ * the License.
+ */
+package com.google.gwt.core.client.testing;
+
+import com.google.gwt.core.client.Scheduler;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * A no-op implementation of Scheduler that simply records its arguments.
+ */
+public class StubScheduler extends Scheduler {
+  private final List repeatingCommands = new  
ArrayList();

+
+  private final List scheduledCommands = new  
ArrayList();

+
+  /**
+   * Returns the RepeatingCommands that have been passed into the  
MockScheduler.

+   */
+  public List getRepeatingCommands() {
+return repeatingCommands;
+  }
+
+  /**
+   * Returns the ScheduledCommands that have been passed into the  
MockScheduler.

+   */
+  public List getScheduledCommands() {
+return scheduledCommands;
+  }
+
+  @Override
+  public void scheduleDeferred(ScheduledCommand cmd) {
+scheduledCommands.add(cmd);
+  }
+
+  @Override
+  public void scheduleEntry(RepeatingCommand cmd) {
+repeatingCommands.add(cmd);
+  }
+
+  @Override
+  public void scheduleEntry(ScheduledCommand cmd) {
+scheduledCommands.add(cmd);
+  }
+
+  @Override
+  public void scheduleFinally(RepeatingCommand cmd) {
+repeatingCommands.add(cmd);
+  }
+
+  @Override
+  public void scheduleFinally(ScheduledCommand cmd) {
+scheduledCommands.add(cmd);
+  }
+
+  @Override
+  public void scheduleFixedDelay(RepeatingCommand cmd, int delayMs) {
+repeatingCommands.add(cmd);
+  }
+
+  @Override
+  public void scheduleFixedPeriod(RepeatingCommand cmd, int delayMs) {
+repeatingCommands.add(cmd);
+  }
+
+  @Override
+  public void scheduleIncremental(RepeatingCommand cmd) {
+repeatingCommands.add(cmd);
+  }
+}
===
--- /trunk/user/src/com/google/gwt/core/client/Scheduler.java	Tue Dec 15  
13:40:53 2009
+++ /trunk/user/src/com/google/gwt/core/client/Scheduler.java	Wed Oct 13  
12:25:22 2010

@@ -21,6 +21,8 @@
  * This class provides low-level task scheduling primitives. Any exceptions
  * thrown by the command objects executed by the scheduler will be passed  
to the

  * {...@link GWT.UncaughtExceptionHandler} if one is installed.
+ *
+ * @see com.google.gwt.core.client.testing.StubScheduler
  */
 public abstract class Scheduler {

===
--- /trunk/user/src/com/google/gwt/user/client/Command.java	Tue Aug 10  
10:18:55 2010
+++ /trunk/user/src/com/google/gwt/user/client/Command.java	Wed Oct 13  
12:25:22 2010

@@ -15,6 +15,8 @@
  */
 package com.google.gwt.user.client;

+import com.google.gwt.core.client.Scheduler;
+
 /**
  * Encapsulates an action for later execution, often from a different  
context.

  *
@@ -22,14 +24,16 @@
  * The Command interface provides a layer of separation between the code
  * specifying some behavior and the code invoking that behavior. This  
separation

  * aids in creating reusable code. For example, a
- * {...@link com.google.gwt.user.client.ui.MenuItem} can have a Command
- * associated with it that it executes when the menu item is chosen by the  
user.
+ * {...@link com.google.gwt.user.client.ui.MenuItem} can have a Command  
associated

+ * with it that it executes when the menu item is chosen by the user.
  * Importantly, the code that constructed the Command to be executed when  
the
  * menu item is invoked knows nothing about the internals of the MenuItem  
class

- * and vice-versa.
+ * and vice-versa.
+ * 
  *
- *  The Command interface is often implemented with an anonymous inner  
class.

- * For example,
+ * 
+ *

[gwt-contrib] Re: Relaxing the data parameter of HasData#setRowData() from a List to a List. (issue994801)

2010-10-13 Thread rice

LGTM

http://gwt-code-reviews.appspot.com/994801/show

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


[gwt-contrib] [google-web-toolkit] r9042 committed - Fixing a bug where headers are not redrawn when the data changes. I w...

2010-10-13 Thread codesite-noreply

Revision: 9042
Author: jlaba...@google.com
Date: Wed Oct 13 05:03:29 2010
Log: Fixing a bug where headers are not redrawn when the data changes.  I  
was trying to be crafty and keep track of when headers are stale, but since  
they can depend on the data, we need to refesh them every time. This patch  
also allows headers to span multiple columns if adjacent headers == each  
other.


Review at http://gwt-code-reviews.appspot.com/971801

Review by: r...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9042

Modified:
 /trunk/user/src/com/google/gwt/user/cellview/client/CellTable.java
 /trunk/user/test/com/google/gwt/user/cellview/client/CellTableTest.java

===
--- /trunk/user/src/com/google/gwt/user/cellview/client/CellTable.java	Tue  
Oct 12 07:55:56 2010
+++ /trunk/user/src/com/google/gwt/user/cellview/client/CellTable.java	Wed  
Oct 13 05:03:29 2010

@@ -52,7 +52,25 @@

 /**
  * A tabular view that supports paging and columns.
- *
+ *
+ * 
+ * Columns
+ * The {...@link Column} class defines the {...@link Cell} used to render a  
column.
+ * Implement {...@link Column#getValue(Object)} to retrieve the field value  
from

+ * the row object that will be rendered in the {...@link Cell}.
+ * 
+ *
+ * 
+ * Headers and Footers
+ * A {...@link Header} can be placed at the top (header) or bottom (footer)  
of the

+ * {...@link CellTable}. You can specify a header as text using
+ * {...@link #addColumn(Column, String)}, or you can create a custom {...@link  
Header}

+ * that can change with the value of the cells, such as a column total. The
+ * {...@link Header} will be rendered every time the row data changes or the  
table
+ * is redrawn. If you pass the same header instance (==) into adjacent  
columns,

+ * the header will span the columns.
+ * 
+ *
  * 
  * Examples
  * 
@@ -269,8 +287,8 @@
 @Template("{0}")
 SafeHtml tfoot(SafeHtml rowHtml);

-@Template("{1}")
-SafeHtml th(String classes, SafeHtml contents);
+@Template("{2}")
+SafeHtml th(int colspan, String classes, SafeHtml contents);

 @Template("{0}")
 SafeHtml thead(SafeHtml rowHtml);
@@ -432,11 +450,6 @@

   private final List> headers = new ArrayList>();

-  /**
-   * Set to true when the footer is stale.
-   */
-  private boolean headersStale;
-
   private TableRowElement hoveringRow;

   /**
@@ -640,7 +653,6 @@
 }
 CellBasedWidgetImpl.get().sinkEvents(this, consumedEvents);

-headersStale = true;
 scheduleRedraw();
   }

@@ -778,7 +790,6 @@
 headers.remove(index);
 footers.remove(index);
 updateDependsOnSelection();
-headersStale = true;

 // Find an interactive column. Stick with 0 if no column is  
interactive.

 if (index <= keyboardSelectedColumn) {
@@ -1149,7 +1160,7 @@

   /**
* Render the header or footer.
-   *
+   *
* @param isFooter true if this is the footer table, false if the header  
table

*/
   private void createHeaders(boolean isFooter) {
@@ -1162,30 +1173,52 @@
 SafeHtmlBuilder sb = new SafeHtmlBuilder();
 sb.appendHtmlConstant("");
 int columnCount = columns.size();
-int curColumn = 0;
-for (Header header : theHeaders) {
+if (columnCount > 0) {
+  // Setup the first column.
+  Header prevHeader = theHeaders.get(0);
+  int prevColspan = 1;
   StringBuilder classesBuilder = new StringBuilder(className);
-  if (curColumn == 0) {
-classesBuilder.append(" ");
-classesBuilder.append(isFooter ? style.cellTableFirstColumnFooter()
-: style.cellTableFirstColumnHeader());
-  }
-  // The first and last columns could be the same column.
-  if (curColumn == columnCount - 1) {
-classesBuilder.append(" ");
-classesBuilder.append(isFooter ? style.cellTableLastColumnFooter()
-: style.cellTableLastColumnHeader());
+  classesBuilder.append(" ");
+  classesBuilder.append(isFooter ? style.cellTableFirstColumnFooter()
+  : style.cellTableFirstColumnHeader());
+
+  // Loop through all column headers.
+  for (int curColumn = 1; curColumn < columnCount; curColumn++) {
+Header header = theHeaders.get(curColumn);
+
+if (header != prevHeader) {
+  // The header has changed, so append the previous one.
+  SafeHtmlBuilder headerBuilder = new SafeHtmlBuilder();
+  if (prevHeader != null) {
+hasHeader = true;
+prevHeader.render(headerBuilder);
+  }
+  sb.append(template.th(prevColspan, classesBuilder.toString(),
+  headerBuilder.toSafeHtml()));
+
+  // Reset the previous header.
+  prevHeader = header;
+  prevColspan = 1;
+  classesBuilder = new StringBuilder(className);
+} else {
+  // Increment the colspan if the headers == each other.
+  prevColspan++;
+}
   }

+  // Append the last header.
   SafeHtmlBuilder heade

[gwt-contrib] Re: Fixing a few logic and usability bugs in Cell Widgets. CellTree items are now easier to click. ... (issue995801)

2010-10-13 Thread rice

LGTM

http://gwt-code-reviews.appspot.com/995801/show

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


[gwt-contrib] [google-web-toolkit] r9040 committed - Use Java to generate the list of packages for javadoc...

2010-10-13 Thread codesite-noreply

Revision: 9040
Author: r...@google.com
Date: Wed Oct 13 03:51:52 2010
Log: Use Java to generate the list of packages for javadoc

Review at http://gwt-code-reviews.appspot.com/980803

Review by: j...@google.com
http://code.google.com/p/google-web-toolkit/source/detail?r=9040

Added:
 /trunk/build-tools/doctool/src/com/google/doctool/custom/FindPackages.java
Deleted:
 /trunk/doc/find-packages.sh
Modified:
 /trunk/doc/build.xml
 /trunk/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java

===
--- /dev/null
+++  
/trunk/build-tools/doctool/src/com/google/doctool/custom/FindPackages.java	 
Wed Oct 13 03:51:52 2010

@@ -0,0 +1,212 @@
+/*
+ * Copyright 2010 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may  
not
+ * use this file except in compliance with the License. You may obtain a  
copy of

+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,  
WITHOUT

+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations  
under

+ * the License.
+ */
+package com.google.doctool.custom;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.PrintStream;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Set;
+import java.util.regex.Pattern;
+
+/**
+ * Used by trunk/doc/build.xml to generate the packages.properties file.
+ */
+public class FindPackages {
+
+  /**
+   * A list of regular expressions to exclude. For readability, a '.'  
character

+   * will be interpreted literally (i.e., it will be transformed into '\.'
+   * before being compiled). Add rules here as needed.
+   */
+  private static final String[] EXCLUSIONS = {
+  "^com.example.", "^com.google.gwt.dev(.|$)", "^com.google.gwt.emul.",
+  "^com.google.gwt.examples(.|$)", "^com.google.gwt.i18n.server(.|$)",
+  "^com.google.gwt.i18n.tools", "^com.google.gwt.lang",
+  "^com.google.gwt.junit(.|$)", "^com.google.gwt.resources.css(.|$)",
+  "^com.google.gwt.resources.rg(.|$)",
+  "^com.google.gwt.rpc.client.ast(.|$)", "^com.google.gwt.soyc(.|$)",
+  "^com.google.gwt.validation(.|$)",
+  "^com.google.gwt.user.client.rpc.core.", "^javax.", "^junit.", "^org.",
+  ".impl(.|$)", ".rebind(.|$)"
+  };
+
+  /**
+   * A list of emulated packages under java.lang, to be emitted as
+   * the LANG_PKGS property.  Add packages here as needed.
+   */
+  private static final String[] LANG_PKGS = {
+  "java.lang", "java.lang.annotation", "java.io", "java.sql", "java.util"};
+
+  /**
+   * User packages to include, regardless of exclusions.  Add packages here
+   * as needed.
+   */
+  private static final String[] PACKAGE_WHITELIST = {
+  "com.google.gwt.i18n.rebind.format", "com.google.gwt.i18n.rebind.keygen",
+  "com.google.gwt.junit.client"};
+
+  /**
+   * Source directories under the root directory to traverse.  Add  
directories

+   * here as needed.
+   */
+  private static final String[] SOURCE_DIRS = {
+  "user/src", "user/javadoc", "user/super", "dev/core/src",
+  "dev/core/super"};
+
+  /**
+   * Individual user classes to include, even if the rest of their packages
+   * is not included.  Add classes here as needed.
+   */
+  private static final String[] USER_CLASSES = {
+  "user/src/com/google/gwt/junit/tools/GWTTestSuite.java",
+  "user/src/com/google/gwt/i18n/rebind/LocaleUtils.java",
+  "user/src/com/google/gwt/i18n/server/GwtLocaleFactoryImpl.java",
+  "user/src/com/google/gwt/i18n/server/GwtLocaleImpl.java"};
+
+  private static Pattern exclusions;
+  static {
+StringBuilder sb = new StringBuilder();
+for (int i = 0; i < EXCLUSIONS.length; i++) {
+  String ex = EXCLUSIONS[i];
+  ex = ex.replace(".", "\\.");
+  if (i < EXCLUSIONS.length - 1) {
+sb.append(ex + "|");
+  } else {
+sb.append(ex);
+  }
+}
+exclusions = Pattern.compile(sb.toString());
+  }
+
+  public static void main(String[] args) {
+if (args.length < 1) {
+  System.err.println("usage: java  
com.google.doctool.custom.FindPackages ");

+  System.exit(1);
+}
+
+try {
+  File rootDir = new File(args[0]);
+  // Output to /doc/packages.properties
+  File build = new File(rootDir, "build");
+  File buildOut = new File(build, "out");
+  File outFile = new File(buildOut, "packages.properties");
+  PrintStream out = new PrintStream(new FileOutputStream(outFile),  
false, "UTF-8");

+
+  out.println("# THIS FILE IS AUTOMATICALLY GENERATED BY");
+  out.println("# com.google.doctool.custom.FindPackages");
+  out.println("#");
+  out.println("# This file contains all of the user jav

[gwt-contrib] Fixing a few logic and usability bugs in Cell Widgets. CellTree items are now easier to click. ... (issue995801)

2010-10-13 Thread jlabanca

Reviewers: rice,

Description:
Fixing a few logic and usability bugs in Cell Widgets.  CellTree items
are now easier to click. Fixed a bug in CellBrowser keyboard navigation
on Chrome where we would get async blur events that prevented keyboard
navigation. Fixed a few IE7 specific bugs that occur when delayed events
fire on elements that have been replaced.


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

Affected files:
  M user/src/com/google/gwt/user/cellview/CellView.gwt.xml
  A  
user/src/com/google/gwt/user/cellview/client/CellBasedWidgetImplSafari.java

  M user/src/com/google/gwt/user/cellview/client/CellBrowser.css
  M user/src/com/google/gwt/user/cellview/client/CellBrowser.java
  M user/src/com/google/gwt/user/cellview/client/CellList.java
  M user/src/com/google/gwt/user/cellview/client/CellTable.java
  M user/src/com/google/gwt/user/cellview/client/CellTree.java
  M user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java


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


Re: [gwt-contrib] Add Support for server side script selection in linker (issue941802)

2010-10-13 Thread Unnur Gretarsdottir
Hi Arthur -
  Yes - we probably could build it, but then you wouldn't be able to
customize any of the aspects of that HTML page. Most people want
something else on that page other than just the GWT module include
(even if it's something as simple as setting the  tag in the
head to something specific).  In general, we sort of count on people
who are trying to do semi-advanced optimizations to be able to do some
work, like adding the contents of the nocache.js file to the initial
html file themselves.  Alternatively - you could subclass the linker
and have it do what you want for your specific project since you would
know exactly what other stuff you might want in your particular html
file.

 I also just wanted to reiterate one more time that support for server
side selection is not coming soon.  We are (experimentally) adding the
ability for people do server side selection, assuming that they do
some configuration themselves.  Specifically, you'll have to subclass
the linker to turn on some of the options.  More significantly, you'll
need parse the configuration-mappings.txt file to determine the
correct md5 file and dynamically generate your HTML with a script tag
pointing to that md5 file. Doing this is harder than inlining the
selection script, so if your primary interest is in cutting out one of
the round trips, I'd recommend that you go ahead with getting that
working first.  Although we may add it eventually, there is no current
plan to make server side selection available "out of the box".

- Unnur



On Wed, Oct 13, 2010 at 9:28 AM, Arthur Kalmenson  wrote:
> Hey Unnur,
>
> You're right, gwt doesn't have access to the initial HTML page, but I
> wonder if it'd be possible to build a linker to make that dynamically
> generated page. Doesn't the linker have access to what gets generated
> in the nocache.js? Theoretically you could just output a simple HTML
> page that includes its contents.
>
> Then again, if this server side selection is coming soon (gwt 2.2?),
> building this linker won't make much sense. Thanks again for all the
> info!
>
> All the best,
> --
> Arthur Kalmenson
>
>
>
> On Mon, Oct 11, 2010 at 1:03 PM, Unnur Gretarsdottir  
> wrote:
>> Hi Arthur -
>>  Are you asking if there's an existing linker for the inlining of
>> your selection script? If so, no - the linker has no access to the
>> contents of your initital html page.  What you need to do is, rather
>> than serve a static html page, your server will have to dynamically
>> generate it, by reading the content of the nocache.js file and putting
>> it directly in the html which is served on the initial request.  In
>> theory, if you rarely release your code, you could do this manually -
>> basically, every time you do a gwt compile, manually copy the contents
>> of nocahce.js into the initial html page.
>>
>> - Unnur
>>
>>
>> On Fri, Oct 8, 2010 at 12:41 PM, Arthur Kalmenson  
>> wrote:
>>> That's a great idea Unnur. Is there an existing linker for this or
>>> would I have to build it (it seems like something the linker would do,
>>> if I understood them correctly)?
>>>
>>> --
>>> Arthur Kalmenson
>>>
>>>
>>>
>>> On Fri, Oct 8, 2010 at 1:57 PM, Unnur Gretarsdottir  
>>> wrote:
 Hi Arthur -
  This is, and will probably remain for some time, experimental.  In
 order to use this, you'll need to extend the linker and change the
 variable - also, you'll need to write your own server code to parse
 the compilation mappings text file and decide which permutation you
 want to use.  Sorry not to have a better answer - we did want to make
 sure that this new linker is set up to support this sort of linking,
 but it is not currently a feature that we are officially releasing.
 FYI - if your primary concern is the double round trips, as opposed to
 the size of the permutation selection JS, then an easy solution for
 you is to simply inline the foo.nocache.js script into your page
 rather than requesting it using a script tag

 - Unnur

 On Mon, Oct 4, 2010 at 2:06 PM, Arthur Kalmenson  
 wrote:
> Wow, this is great! I'm guessing this means we can cut the startup
> round trips to one? Is this going into GWT 2.1?
>
> Exciting stuff.
> --
> Arthur Kalmenson
>
>
>
> On Fri, Oct 1, 2010 at 6:09 PM,   wrote:
>> Reviewers: jgw,
>>
>> Description:
>> Add Support for server side script selection in linker
>>
>>
>> Please review this at http://gwt-code-reviews.appspot.com/941802/show
>>
>> Affected files:
>>  A dev/core/src/com/google/gwt/core/ext/linker/impl/PermutationsUtil.java
>>  A
>> dev/core/src/com/google/gwt/core/ext/linker/impl/PropertiesMappingArtifact.java
>>  A
>> dev/core/src/com/google/gwt/core/ext/linker/impl/ResourceInjectionUtil.java
>>  M
>> dev/core/src/com/google/gwt/core/ext/linker/impl/SelectionScriptLinker.java
>>  M dev/core/src/com/google/gwt/core/ext/link

[gwt-contrib] Re: DeadCodeElimination should only run once. (issue983802)

2010-10-13 Thread Scott Blum
Okay, so when I drill down, optimization is net faster with my patch.  A
typical example, on one particular optimize loop, before DCE would take
 ~15-20ms, but with my patch more like ~7-15ms.  On the down side,
MethodInliner seems very slightly slower, but it appears to be a decent net
win.

On Wed, Oct 13, 2010 at 2:46 PM, Scott Blum  wrote:

> On Wed, Oct 13, 2010 at 2:39 PM, Eric Ayers  wrote:
>
>> This is good, it confirms that the number of changes to the AST hasn't
>> changed (or haven't changed much).  I was thinking of the speedtracer logs
>> which would show a change in the real-time performance of each pass the
>> optimizers. (re-run with -Dgwt.speedtracerlog=/tmp/speedtracer-trunk.html )
>
>
> I did that first, but I found the results kind of hard to understand for
> the particular application relative to using the logs.  Lemme put a bit more
> effort in.
>

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

[gwt-contrib] Re: DeadCodeElimination should only run once. (issue983802)

2010-10-13 Thread Scott Blum
On Wed, Oct 13, 2010 at 2:39 PM, Eric Ayers  wrote:

> This is good, it confirms that the number of changes to the AST hasn't
> changed (or haven't changed much).  I was thinking of the speedtracer logs
> which would show a change in the real-time performance of each pass the
> optimizers. (re-run with -Dgwt.speedtracerlog=/tmp/speedtracer-trunk.html )


I did that first, but I found the results kind of hard to understand for the
particular application relative to using the logs.  Lemme put a bit more
effort in.

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

[gwt-contrib] Re: DeadCodeElimination should only run once. (issue983802)

2010-10-13 Thread Eric Ayers
This is good, it confirms that the number of changes to the AST hasn't
changed (or haven't changed much).  I was thinking of the speedtracer logs
which would show a change in the real-time performance of each pass the
optimizers. (re-run with -Dgwt.speedtracerlog=/tmp/speedtracer-trunk.html )

On Wed, Oct 13, 2010 at 2:12 PM, Scott Blum  wrote:

> Eric,
>
> You mentioned before that I should run the trace logging to analyze the
> behavior of DeadCode before and after my change.  I did so, and my change
> resulted in the same number of top-level optimization loops.  The numbers
> are mostly identical, I think perhaps a small accounting change is the only
> discrepancy.  Logs attached.
>
> Scott
>
> On Tue, Oct 12, 2010 at 4:07 PM,  wrote:
>
>> FYI, I like the refactoring of JModVisitor
>>
>> I have no idea how you came up with these changes other than to pick up
>> a huge piece of code and start setting break points in the compiler and
>> iterating until you fixed them.  That's a difficult tasks for mere
>> mortal coders to repeat.
>>
>> At the very least, the DeadCodeEliminationTest needs a TODO for someone
>> to add new test() methods for the types of things you found that took
>> more than one pass to resolve.
>
>


-- 
Eric Z. Ayers
Google Web Toolkit, Atlanta, GA USA

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

[gwt-contrib] The proposed fix will disambiguate setter overloads by ranking them according (issue993801)

2010-10-13 Thread fabiomfv

Reviewers: rjrjr,

Description:
The proposed fix will disambiguate setter overloads by ranking them
according
to the 'cost' of conversion. Fewer arguments will be preferred over many
arguments (e.g. setValue(boolean) will be preferred over
setValue(boolean, boolean)). Within a group os setters with the same
number of arguments, Strings will be preferred over other primitive
types (boxed or not); and primitive types will be preferred over
non-primitive types. The fix also reduces the need of two passes
over the list of setters during disambiguation, now done in one pass.


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

Affected files:
  M user/src/com/google/gwt/uibinder/rebind/model/OwnerFieldClass.java
  M user/test/com/google/gwt/uibinder/rebind/model/OwnerFieldClassTest.java


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


[gwt-contrib] Relaxing the data parameter of HasData#setRowData() from a List to a List. (issue994801)

2010-10-13 Thread jlabanca

Reviewers: rice,

Description:
Relaxing the data parameter of HasData#setRowData() from a List to a
List.


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

Affected files:
  M user/src/com/google/gwt/user/cellview/client/AbstractHasData.java
  M user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java
  M user/src/com/google/gwt/user/cellview/client/HasDataPresenter.java
  M user/src/com/google/gwt/view/client/HasData.java
  M user/test/com/google/gwt/view/client/MockHasData.java


Index: user/src/com/google/gwt/user/cellview/client/AbstractHasData.java
===
--- user/src/com/google/gwt/user/cellview/client/AbstractHasData.java	 
(revision 9038)
+++ user/src/com/google/gwt/user/cellview/client/AbstractHasData.java	 
(working copy)

@@ -535,7 +535,7 @@
 presenter.setRowCount(size, isExact);
   }

-  public void setRowData(int start, List values) {
+  public void setRowData(int start, List values) {
 presenter.setRowData(start, values);
   }

Index: user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java
===
--- user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java	 
(revision 9038)
+++ user/src/com/google/gwt/user/cellview/client/CellTreeNodeView.java	 
(working copy)

@@ -492,7 +492,7 @@
   presenter.setRowCount(size, isExact);
 }

-public void setRowData(int start, List values) {
+public void setRowData(int start, List values) {
   presenter.setRowData(start, values);
 }

Index: user/src/com/google/gwt/user/cellview/client/HasDataPresenter.java
===
--- user/src/com/google/gwt/user/cellview/client/HasDataPresenter.java	 
(revision 9038)
+++ user/src/com/google/gwt/user/cellview/client/HasDataPresenter.java	 
(working copy)

@@ -651,7 +651,7 @@
 RowCountChangeEvent.fire(display, count, rowCountIsExact);
   }

-  public void setRowData(int start, List values) {
+  public void setRowData(int start, List values) {
 int valuesLength = values.size();
 int valuesEnd = start + valuesLength;

Index: user/src/com/google/gwt/view/client/HasData.java
===
--- user/src/com/google/gwt/view/client/HasData.java(revision 9038)
+++ user/src/com/google/gwt/view/client/HasData.java(working copy)
@@ -39,7 +39,7 @@
* @param start the start index of the data
* @param values the values within the range
*/
-  void setRowData(int start, List values);
+  void setRowData(int start, List values);

   /**
* Set the {...@link SelectionModel} used by this {...@link HasData}.
Index: user/test/com/google/gwt/view/client/MockHasData.java
===
--- user/test/com/google/gwt/view/client/MockHasData.java   (revision 9038)
+++ user/test/com/google/gwt/view/client/MockHasData.java   (working copy)
@@ -81,7 +81,7 @@

   private final HandlerManager handlerManager = new HandlerManager(this);
   private Range lastRange;
-  private List lastRowData;
+  private List lastRowData;

   private int pageStart;
   private int pageSize = DEFAULT_PAGE_SIZE;
@@ -117,7 +117,7 @@
*
* @return the last data set
*/
-  public List getLastRowData() {
+  public List getLastRowData() {
 return lastRowData;
   }

@@ -146,7 +146,7 @@
 return rowCountExact;
   }

-  public void setRowData(int start, List values) {
+  public void setRowData(int start, List values) {
 lastRange = new Range(start, values.size());
 lastRowData = values;
   }


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


[gwt-contrib] Resolve GWT issue 5364. (issue992801)

2010-10-13 Thread bobv

Reviewers: rjrjr,

Description:
Resolve GWT issue 5364.
Enable RequestFactoryPolymorphicTest.
Consolidate base-type code in ModelUtils.
Patch by: bobv
Review by: rjrjr


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

Affected files:
  M user/src/com/google/gwt/editor/rebind/AutoBeanFactoryGenerator.java
  M user/src/com/google/gwt/editor/rebind/model/AutoBeanFactoryModel.java
  M user/src/com/google/gwt/editor/rebind/model/ModelUtils.java
  M  
user/src/com/google/gwt/requestfactory/rebind/RequestFactoryGenerator.java
  M  
user/src/com/google/gwt/requestfactory/rebind/model/EntityProxyModel.java
  M  
user/src/com/google/gwt/requestfactory/rebind/model/RequestFactoryModel.java

  M user/test/com/google/gwt/requestfactory/RequestFactorySuite.java


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


[gwt-contrib] Re: Deprecate DeferredCommand and IncrementalCommand. (issue982802)

2010-10-13 Thread Ray Ryan
On Wed, Oct 13, 2010 at 5:28 AM,  wrote:

>
> http://gwt-code-reviews.appspot.com/982802/diff/1/5
> File user/src/com/google/gwt/user/client/DeferredCommand.java (right):
>
> http://gwt-code-reviews.appspot.com/982802/diff/1/5#newcode27
> user/src/com/google/gwt/user/client/DeferredCommand.java:27: *
>  API prevents effective mocking.
> On 2010/10/13 03:50:36, rjrjr wrote:
>
>> I thought it was deprecated because it was redundant...TMI?
>>
>
> IMHO, I don't think you can give too much information on the impetus
> behind this change.  Its going to be painful to see all those
> deprecation warnings come out the first time for most users.


We might want to provide more justification then. We're not just deprecating
the thing for mockability, it's redundant code, right?

>
>
> http://gwt-code-reviews.appspot.com/982802/show
>

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

Re: [gwt-contrib] Selection Cell Option value vs Display Value

2010-10-13 Thread John LaBanca
Users will probably want to set the ordering of the values.  Letting users
define the type would be more useful.

A while back I started working on a ListBoxCell, which is a custom drop box
of options.  It allows selection of typed values, and you can render custom
options.  Hopefully we'll get it into a future GWT version.

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


On Wed, Oct 13, 2010 at 12:22 PM, John Tamplin  wrote:

> On Wed, Oct 13, 2010 at 12:10 PM, John LaBanca 
> wrote:
> > Sound reasonable.  Can you open an issue to create a ValueSelectionCell
> that
> > takes an arbitrary type T and a SafeHtmlRenderer to convert the type T to
> a
> > String.
>
> A simpler option would be to accept Map with the "key"
> the select value and the "value" what is displayed.
>
> --
> John A. Tamplin
> Software Engineer (GWT), Google
>
> --
> http://groups.google.com/group/Google-Web-Toolkit-Contributors
>

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

Re: [gwt-contrib] Add Support for server side script selection in linker (issue941802)

2010-10-13 Thread Arthur Kalmenson
Hey Unnur,

You're right, gwt doesn't have access to the initial HTML page, but I
wonder if it'd be possible to build a linker to make that dynamically
generated page. Doesn't the linker have access to what gets generated
in the nocache.js? Theoretically you could just output a simple HTML
page that includes its contents.

Then again, if this server side selection is coming soon (gwt 2.2?),
building this linker won't make much sense. Thanks again for all the
info!

All the best,
--
Arthur Kalmenson



On Mon, Oct 11, 2010 at 1:03 PM, Unnur Gretarsdottir  wrote:
> Hi Arthur -
>  Are you asking if there's an existing linker for the inlining of
> your selection script? If so, no - the linker has no access to the
> contents of your initital html page.  What you need to do is, rather
> than serve a static html page, your server will have to dynamically
> generate it, by reading the content of the nocache.js file and putting
> it directly in the html which is served on the initial request.  In
> theory, if you rarely release your code, you could do this manually -
> basically, every time you do a gwt compile, manually copy the contents
> of nocahce.js into the initial html page.
>
> - Unnur
>
>
> On Fri, Oct 8, 2010 at 12:41 PM, Arthur Kalmenson  
> wrote:
>> That's a great idea Unnur. Is there an existing linker for this or
>> would I have to build it (it seems like something the linker would do,
>> if I understood them correctly)?
>>
>> --
>> Arthur Kalmenson
>>
>>
>>
>> On Fri, Oct 8, 2010 at 1:57 PM, Unnur Gretarsdottir  
>> wrote:
>>> Hi Arthur -
>>>  This is, and will probably remain for some time, experimental.  In
>>> order to use this, you'll need to extend the linker and change the
>>> variable - also, you'll need to write your own server code to parse
>>> the compilation mappings text file and decide which permutation you
>>> want to use.  Sorry not to have a better answer - we did want to make
>>> sure that this new linker is set up to support this sort of linking,
>>> but it is not currently a feature that we are officially releasing.
>>> FYI - if your primary concern is the double round trips, as opposed to
>>> the size of the permutation selection JS, then an easy solution for
>>> you is to simply inline the foo.nocache.js script into your page
>>> rather than requesting it using a script tag
>>>
>>> - Unnur
>>>
>>> On Mon, Oct 4, 2010 at 2:06 PM, Arthur Kalmenson  
>>> wrote:
 Wow, this is great! I'm guessing this means we can cut the startup
 round trips to one? Is this going into GWT 2.1?

 Exciting stuff.
 --
 Arthur Kalmenson



 On Fri, Oct 1, 2010 at 6:09 PM,   wrote:
> Reviewers: jgw,
>
> Description:
> Add Support for server side script selection in linker
>
>
> Please review this at http://gwt-code-reviews.appspot.com/941802/show
>
> Affected files:
>  A dev/core/src/com/google/gwt/core/ext/linker/impl/PermutationsUtil.java
>  A
> dev/core/src/com/google/gwt/core/ext/linker/impl/PropertiesMappingArtifact.java
>  A
> dev/core/src/com/google/gwt/core/ext/linker/impl/ResourceInjectionUtil.java
>  M
> dev/core/src/com/google/gwt/core/ext/linker/impl/SelectionScriptLinker.java
>  M dev/core/src/com/google/gwt/core/ext/linker/impl/computeScriptBase.js
>  M 
> dev/core/src/com/google/gwt/core/ext/linker/impl/installLocationIframe.js
>  A dev/core/src/com/google/gwt/core/ext/linker/impl/installScriptCommon.js
>  A dev/core/src/com/google/gwt/core/ext/linker/impl/installScriptDirect.js
>  A
> dev/core/src/com/google/gwt/core/ext/linker/impl/installScriptEarlyDownload.js
>  M dev/core/src/com/google/gwt/core/ext/linker/impl/permutations.js
>  M dev/core/src/com/google/gwt/core/ext/linker/impl/processMetas.js
>  M dev/core/src/com/google/gwt/core/ext/linker/impl/waitForBodyLoaded.js
>  M dev/core/src/com/google/gwt/core/linker/CrossSiteIframeLinker.java
>  M dev/core/src/com/google/gwt/core/linker/CrossSiteIframeTemplate.js
>  M dev/core/src/com/google/gwt/core/linker/SingleScriptLinker.java
>
>
> --
> 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
>>
>> --
>> 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] Selection Cell Option value vs Display Value

2010-10-13 Thread John Tamplin
On Wed, Oct 13, 2010 at 12:10 PM, John LaBanca  wrote:
> Sound reasonable.  Can you open an issue to create a ValueSelectionCell that
> takes an arbitrary type T and a SafeHtmlRenderer to convert the type T to a
> String.

A simpler option would be to accept Map with the "key"
the select value and the "value" what is displayed.

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

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


Re: [gwt-contrib] Selection Cell Option value vs Display Value

2010-10-13 Thread John LaBanca
Sound reasonable.  Can you open an issue to create a ValueSelectionCell that
takes an arbitrary type T and a SafeHtmlRenderer to convert the type T to a
String.

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


On Wed, Oct 13, 2010 at 11:06 AM, Ed M  wrote:

> The current implementation of 'SelectionCell' only accepts a
> 'List' to be used in the creation of the drop down 'select'
> menu.
>
> ie:
> List options = new ArrayList()
> options.add("option1");
> options.add("option2");
>
> SelectionCell cell = new SelectionCell(options);
>
> When rendered this results in
> 
> Option1
> 
> 
>
> Given that in most cases, the human readable value does not match the
> value submitted to the server, this class should allow for the more
> traditional practice of having one value for the 'value' attribute of
> the option element, and another value for the display value.
>
> ie:
> 
>  DisplayVal
> 
>
> --
> http://groups.google.com/group/Google-Web-Toolkit-Contributors
>

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

[gwt-contrib] Selection Cell Option value vs Display Value

2010-10-13 Thread Ed M
The current implementation of 'SelectionCell' only accepts a
'List' to be used in the creation of the drop down 'select'
menu.

ie:
List options = new ArrayList()
options.add("option1");
options.add("option2");

SelectionCell cell = new SelectionCell(options);

When rendered this results in

Option1



Given that in most cases, the human readable value does not match the
value submitted to the server, this class should allow for the more
traditional practice of having one value for the 'value' attribute of
the option element, and another value for the display value.

ie:

 DisplayVal


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


[gwt-contrib] Re: Added jaxb to DynaTableRf WEB-INF/lib for 1.5 compatibility (issue991801)

2010-10-13 Thread jlabanca

LGTM

http://gwt-code-reviews.appspot.com/991801/show

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


[gwt-contrib] Added jaxb to DynaTableRf WEB-INF/lib for 1.5 compatibility (issue991801)

2010-10-13 Thread rchandia

Reviewers: jlabanca,

Description:
Added jaxb to DynaTableRf WEB-INF/lib for 1.5 compatibility


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

Affected files:
  M samples/dynatablerf/build.xml


Index: samples/dynatablerf/build.xml
===
--- samples/dynatablerf/build.xml   (revision 9038)
+++ samples/dynatablerf/build.xml   (working copy)
@@ -13,5 +13,6 @@
 
 
 
+
   
 


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


[gwt-contrib] Re: Minor tweaks for dynatablerd and showcase. (issue990801)

2010-10-13 Thread rice

LGTM

http://gwt-code-reviews.appspot.com/990801/show

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


[gwt-contrib] Minor tweaks for dynatablerd and showcase. (issue990801)

2010-10-13 Thread jlabanca

Reviewers: rchandia,

Description:
Minor tweaks for dynatablerd and showcase.


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

Affected files:
  M  
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/widgets/SummaryWidget.ui.xml
  M  
samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellList.java
  M  
samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellTable.ui.xml



Index:  
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/widgets/SummaryWidget.ui.xml

===
---  
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/widgets/SummaryWidget.ui.xml	 
(revision 9038)
+++  
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/widgets/SummaryWidget.ui.xml	 
(working copy)

@@ -8,6 +8,10 @@

   .thirty {
width: 30%
+  }
+
+  .table {
+   width: 100%;
   }
 
   
@@ -29,7 +33,7 @@
   
 
 
-  
+  
 
   
 
\ No newline at end of file
Index:  
samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellList.java

===
---  
samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellList.java	 
(revision 9038)
+++  
samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellList.java	 
(working copy)

@@ -33,6 +33,7 @@
 import com.google.gwt.uibinder.client.UiField;
 import com.google.gwt.user.cellview.client.CellList;
 import  
com.google.gwt.user.cellview.client.HasKeyboardPagingPolicy.KeyboardPagingPolicy;
+import  
com.google.gwt.user.cellview.client.HasKeyboardSelectionPolicy.KeyboardSelectionPolicy;

 import com.google.gwt.user.client.rpc.AsyncCallback;
 import com.google.gwt.user.client.ui.AbstractImagePrototype;
 import com.google.gwt.user.client.ui.Button;
@@ -174,6 +175,7 @@
 ContactDatabase.ContactInfo.KEY_PROVIDER);
 cellList.setPageSize(30);
 cellList.setKeyboardPagingPolicy(KeyboardPagingPolicy.INCREASE_RANGE);
+ 
cellList.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.BOUND_TO_SELECTION);


 // Add a selection model so we can select cells.
 final SingleSelectionModel selectionModel = new  
SingleSelectionModel(
Index:  
samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellTable.ui.xml

===
---  
samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellTable.ui.xml	 
(revision 9038)
+++  
samples/showcase/src/com/google/gwt/sample/showcase/client/content/cell/CwCellTable.ui.xml	 
(working copy)

@@ -6,7 +6,6 @@

   
 .cellTable {
-  height: 400px;
   width: 600px;
   border: 1px solid #ccc;
   text-align: left;


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


[gwt-contrib] Setting the background color of LoggingPopup using Style so it works correctly on IE. Also scrol... (issue989801)

2010-10-13 Thread jlabanca

Reviewers: unnurg,

Description:
Setting the background color of LoggingPopup using Style so it works
correctly on IE. Also scrolling the log to the bottom when log items are
added.


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

Affected files:
  M user/src/com/google/gwt/logging/client/LoggingPopup.java


Index: user/src/com/google/gwt/logging/client/LoggingPopup.java
===
--- user/src/com/google/gwt/logging/client/LoggingPopup.java(revision 9038)
+++ user/src/com/google/gwt/logging/client/LoggingPopup.java(working copy)
@@ -138,7 +138,7 @@
 super(false, false);
 VerticalPanel mainPanel = new VerticalPanel();
 mainPanel.setBorderWidth(1);
-mainPanel.getElement().setAttribute("style", "background-color:white");
+mainPanel.getElement().getStyle().setBackgroundColor("white");

 final HTML titleBar = new HTML("Logging");
 mainPanel.add(titleBar);
@@ -184,12 +184,12 @@
   @Override
   public void add(Widget w) {
 logArea.add(w);
+ 
scrollPanel.setScrollPosition(scrollPanel.getElement().getScrollHeight());

   }

   @Override
   public void setWidget(Widget w) {
 logArea.clear();
-logArea.add(w);
+add(w);
   }
-
 }


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


Re: [gwt-contrib] factory methods

2010-10-13 Thread Joel Webber
Specific examples might be helpful here. I can see how this might be useful
in some specific cases, but wrapping every new in a template method sounds
like a horribly contorting way to have to write all one's code.

Le 13 octobre 2010 05:19, cokol  a écrit :

> many other developers, including me, would appreciate if you'd use
> protected factory methods in non-final classes (even if the class is
> not abstract), like:
>
> a no-go:
> 
> void func() {
>  A = new A();
>  A.doSomething();
> }
>
> instead, a better pattern:
> ---
> protected A createA() {
>  return new A();
> }
>
> void func() {
>  A = createA();
>  A.doSomething();
> }
> -
>
>
> because in some situations the integration of GWT into existing
> environment becomes a little nightmare, and it would be great pay more
> attention to DI
>
> thank you!!
>
> --
> http://groups.google.com/group/Google-Web-Toolkit-Contributors
>

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

[gwt-contrib] Re: Use the response setContentType() in RequestFactoryServlet instead (issue980801)

2010-10-13 Thread bobv

LGTM.

http://gwt-code-reviews.appspot.com/980801/show

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


[gwt-contrib] Re: Test timeout in JUnitShell ? (GWT 2.0.0)

2010-10-13 Thread Ed
I give up for now :(...
This issue is getting me against the roof... :(
Even with remote debugging it all go well
But let's not forget that the error only occurs sometimes: about 50%
of the time and mostly during the day when I run the build manually
when the server is more busy. During the night when the build server
isn't doing much, most of the time the timeout exception doesn't
occur.

Almost always the exception occurs in a test class (extending
GWTTestCase) that contains  more then one test. As far as I can see,
it "never" happens in test classes with only one test method... So it
seems that more tests in one GWTTestCase class take more time and in
someway triggers the timeout exception...

Also, in case the timeout exception occurs, the logging indicates that
the GWT servlet GWTShellServlet is correctly informed, but still the
exception occurs...

For now, I disabled these GWT test case that need the backend (through
RPC) as I can't work with this unpredictable behavior.


On Oct 5, 4:56 pm, Ed  wrote:
> > running the test in your continuous build environment with remote debugging
> > enabled and attaching to it with a debugger to see what is going on.
>
> Thanks again. John
> I did that already but will do it again now that I have a better
> understanding of the GWT Junit code.
> (I only have to use some tricks to attach the remote debugger
> correctly ...)
>
> On Oct 5, 4:24 pm, John Tamplin  wrote:
>
> > On Tue, Oct 5, 2010 at 10:12 AM, Ed  wrote:
> > > I found the servlet you meant: JUnitHostImpl
> > > I see that the url that touches this servlet is correctly forwarded by
> > > the proxy and received by this servlet when debugging in Eclipse:
> > > The url that touches it: /
> > > com.bv.gwt.profile.intern.ProfileGwtTest.JUnit/junithost (also appears
> > > in the logging below)
>
> > > However, when it's running during the nightly build and fails, I's
> > > hard to find out what went wrong as the this servlet doesn't contain
> > > debug/trace logging. It would be nice to see the path of execution in
> > > the logging such that I can see why the servlet isn't touched.
>
> > > Any idea's how to solve this?
> > > Or any idea about what would be going wrong ?
>
> > If it works when you run it directly, yet fails in the continuous build,
> > then something is different between the two that matters.  I would suggest
> > running the test in your continuous build environment with remote debugging
> > enabled and attaching to it with a debugger to see what is going on.
>
> > --
> > John A. Tamplin
> > Software Engineer (GWT), Google
>
>

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


[gwt-contrib] Re: Deprecate DeferredCommand and IncrementalCommand. (issue982802)

2010-10-13 Thread zundel


http://gwt-code-reviews.appspot.com/982802/diff/1/5
File user/src/com/google/gwt/user/client/DeferredCommand.java (right):

http://gwt-code-reviews.appspot.com/982802/diff/1/5#newcode27
user/src/com/google/gwt/user/client/DeferredCommand.java:27: *
  API prevents effective mocking.
On 2010/10/13 03:50:36, rjrjr wrote:

I thought it was deprecated because it was redundant...TMI?


IMHO, I don't think you can give too much information on the impetus
behind this change.  Its going to be painful to see all those
deprecation warnings come out the first time for most users.

http://gwt-code-reviews.appspot.com/982802/show

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


[gwt-contrib] factory methods

2010-10-13 Thread cokol
many other developers, including me, would appreciate if you'd use
protected factory methods in non-final classes (even if the class is
not abstract), like:

a no-go:

void func() {
 A = new A();
 A.doSomething();
}

instead, a better pattern:
---
protected A createA() {
 return new A();
}

void func() {
 A = createA();
 A.doSomething();
}
-


because in some situations the integration of GWT into existing
environment becomes a little nightmare, and it would be great pay more
attention to DI

thank you!!

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