Re: GWT MVP Re-Using Activities where Caching and Filtered ActvityMapper don't work ?
That's what the Expenses sample does IIRC, so I wouldn't say it's bad design. It's just that you now have to manage state in your activity, which makes it a bit less easy to maintain (notice that I've not used more difficult!) -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
cannot install gwt IE developer plugin
hi.. running windows ultimate 7 64 bit, no antivirus. have 2 java versions, of 6_23 (one 64 bit, another 32). trying to download the install the ie dev plugin caused 0x80040204, even with disabled firewall, and as admin.. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
GWT SDK 2.1.1 eclipse plugin crashes Helios
I just installed a fresh eclipse 3.6.1 and tried to install Google Plugin for Eclipse 3.6 including App Engine and GWT. Everything installed fine, but when I restart Eclipse, it crashes while loading the GWT plugins. I tried with both the 64bit and 32bit eclipse versions. Any ideas or workarounds? I'm using the helios GWT provided from: http://dl.google.com/eclipse/plugin/3.6 T S -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: GWT Developer plugin For IE installation problem
No no solution yet if someone finds a solution to this problem please share here thanks On Jan 23, 9:40 am, 肖鹏 eagle.x...@gmail.com wrote: I got the same problem. My guest os is Windows Xp. Have you found a solution? On Jan 21, 9:39 pm, christian elsen christian.el...@ect-telecoms.de wrote: The problems I have seems to be exactly the same, only the error code is different in my case: Download error: The downloaded file failed verification. Error code =0x80040204 I'm running IE7 within an instance of VirtualBox. The GWT browser plugin for firefox and chrome could be installed without any problem. I also downloaded th IE browser plugin to disk and tried to install it from there: Exactly the same error code occurrs. kind regards On Jan 18, 11:17 pm, othman othmanelmou...@gmail.com wrote: Thanks Fabio for your support. i'll keep on investigating this problem. If i find something or need more support i'll get back here. On Jan 18, 7:53 pm, Fabio Valbuena fabio...@google.com wrote: othman, I can't repro the issue you are seeing, but I will try to help as I can. It looks like you may have issues with your system. here is an idea: if you are admin on the box, create a new profile, logon to it and try to install just to see what happens. I am trying to read between the lines here, but it seems that either of have an inconsistent state system (having an installed service but missing a file - error 2), or you may have a 'murky' anti-virus interfering. few things to think about: 1) can you install anything at all? 2) what was the last thing you installed on the box? 3) have you looked at the event viewer log to see if there is any additional information? 4) is windows installer service running fine? 5) are you familiar with procmon? try installing it and take a look at what is going on. On Jan 18, 2:32 pm, othman othmanelmou...@gmail.com wrote: On Jan 18, 7:27 pm, Fabio Valbuena fabio...@google.com wrote: it is not clear to me if you were able or not to download the file from the direct link above. instead of 'run', please try to save the download to a folder (desktop for instance) as suggested before and then run from there (from explorer). Do not run from within IE. What I am trying to separate is if you have connectivity issues or installation issues. That's exactly what i did. i saved in a folder then launched exe by double clicking it. i even right click this exe and choose run as administrator ,but same problem! It looks like there is some mysterious thing that i'm not able to figure out. On Jan 18, 2:01 pm, othman othmanelmou...@gmail.com wrote: I closed all running programs , turned off firewall and antivirus then run the file in link you provided but i got same error! I went to windows services and noticed there is a Google update service which status is set to automatic. when i tried starting this google update service i got an error couldn't start service. error 2: couldn't find specified file. could this be the problem? I have Chrome firefox browsers installed too. I have no clue why the installer gets blocked in download phase. something seems blocking the installer from downloading the plugin but i can't figure it out. On Jan 18, 6:36 pm, Fabio Valbuena fabio...@google.com wrote: One thing you can check is if you have installed any external popup blocker, anti-virus, etc. did it work before? is it possible that IE is asking for some confirmation (a yellow bar under the address bar) and somehow you don't see/answer it? then the server will likely reset the connection after a while if you dont respond. to get you going, try clicking on this link and save to the disk:https://dl-ssl.google.com/tag/s/appguid%3D%7B9a5e649a-ec63-4c7d-99bf-... then run the installer. On Jan 18, 1:13 pm, othman othmanelmou...@gmail.com wrote: thanks fabio, my Internet connection is fine. i can browse the web. I disabled firewall and antivirus when trying to install the plugin. My windows 7 updates are installed automatically as scheduled and the windows update seems to be fine too. what else should i check? could it be related to IE version 8 ? what verifications should i do in my system to be sure noting is blocking the plugin installation? thanks On Jan 18, 5:02 pm, Fabio Valbuena fabio...@google.com wrote: hey Othman 0x80072efe error is related to connectivity issues. more specifically,
Re: cannot install gwt IE developer plugin
We are investigating the issue and will post back here once we have a solution. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Highlight some rows in CellTable
cellTable.setRowStyles(..) -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: GWT Developer plugin For IE installation problem
We are investigating the error 0x80040204 in the mean time, try to download from http://dl.google.com/gwt/plugins/ie/1.1.9345.20101203172300/gwt-dev-p... make sure to right click, save as and run from there. On Jan 24, 10:01 am, Ryan driving.b...@gmail.com wrote: I'm having the exact same problem in Windows 7 with the IE plugin. Error code = 0x80040204. Please fix this, it's very critical for me to be able to debug some gwt problems in IE. On Jan 24, 9:50 am, Musicman75 stephan.beu...@googlemail.com wrote: Dear GWT Team, please post some information about the development plugin for the IE. Is anybody working on a solution? It's really urgent for me to debug in IE and resolve some problems. Thanks On 24 Jan., 15:15, othman othmanelmou...@gmail.com wrote: No no solution yet if someone finds a solution to this problem please share here thanks On Jan 23, 9:40 am, 肖鹏 eagle.x...@gmail.com wrote: I got the same problem. My guest os is Windows Xp. Have you found a solution? On Jan 21, 9:39 pm, christian elsen christian.el...@ect-telecoms.de wrote: The problems I have seems to be exactly the same, only the error code is different in my case: Download error: The downloaded file failed verification. Error code =0x80040204 I'm running IE7 within an instance of VirtualBox. The GWT browser plugin for firefox and chrome could be installed without any problem. I also downloaded th IE browser plugin to disk and tried to install it from there: Exactly the same error code occurrs. kind regards On Jan 18, 11:17 pm, othman othmanelmou...@gmail.com wrote: Thanks Fabio for your support. i'll keep on investigating this problem. If i find something or need more support i'll get back here. On Jan 18, 7:53 pm, Fabio Valbuena fabio...@google.com wrote: othman, I can't repro the issue you are seeing, but I will try to help as I can. It looks like you may have issues with your system. here is an idea: if you are admin on the box, create a new profile, logon to it and try to install just to see what happens. I am trying to read between the lines here, but it seems that either of have an inconsistent state system (having an installed service but missing a file - error 2), or you may have a 'murky' anti-virus interfering. few things to think about: 1) can you install anything at all? 2) what was the last thing you installed on the box? 3) have you looked at the event viewer log to see if there is any additional information? 4) is windows installer service running fine? 5) are you familiar with procmon? try installing it and take a look at what is going on. On Jan 18, 2:32 pm, othman othmanelmou...@gmail.com wrote: On Jan 18, 7:27 pm, Fabio Valbuena fabio...@google.com wrote: it is not clear to me if you were able or not to download the file from the direct link above. instead of 'run', please try to save the download to a folder (desktop for instance) as suggested before and then run from there (from explorer). Do not run from within IE. What I am trying to separate is if you have connectivity issues or installation issues. That's exactly what i did. i saved in a folder then launched exe by double clicking it. i even right click this exe and choose run as administrator ,but same problem! It looks like there is some mysterious thing that i'm not able to figure out. On Jan 18, 2:01 pm, othman othmanelmou...@gmail.com wrote: I closed all running programs , turned off firewall and antivirus then run the file in link you provided but i got same error! I went to windows services and noticed there is a Google update service which status is set to automatic. when i tried starting this google update service i got an error couldn't start service. error 2: couldn't find specified file. could this be the problem? I have Chrome firefox browsers installed too. I have no clue why the installer gets blocked in download phase. something seems blocking the installer from downloading the plugin but i can't figure it out. On Jan 18, 6:36 pm, Fabio Valbuena fabio...@google.com wrote: One thing you can check is if you have installed any external popup blocker, anti-virus, etc. did it work before? is it possible that IE is asking for some confirmation (a yellow bar under the address bar) and somehow you
Google Wave UI
Hi, Google Wave became Apache Wave but still the code of Google Wave UI is not committed to SVN repo. I would ask GWT contributor to please contribute the Wave UI code to the community as early as possible as the best standards application design ability will get improved. Warm Regards, Allahbaksh -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: GWT Developer plugin For IE installation problem
I too had the verification error that christian elsen had, in a Windows 7 VirtualBox instance. I was able to follow the dl.google.com msi link just fine. It installed and everything is working for me. When re-opening IE, it prompted me to download the plugin, but it also gave me the security yellow bar, and I had to allow the plugin. I should mention that my instance is not currently genuine, has caused other issues in the past. Thank you for the work around. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Intra iFrame communication in GWT
I have a hunch as to what's going on. I'm using OpenAjax unmanagedhub to do the event notification. The js file for OpenAjax is included with a base module (CommonAjax) I built that encapsulates the OpenAjax js in JSNI. When a plugin inherits this CommonAjax module, gwt copies the associated OpenAjax js file to the plugin via the public directory (this happens automatically when I compile the plugin). I think what's happening is the OpenAjax js function is getting defined multiple times, once for each plugin, and that the js is defined on the frame for each plugin. So the issue is the js is not shared across the same frame/window and it needs to be. Is there a way to embed js in a module and then have that js get defined on the parent frame vs. the child frame? Or is there a better way to do this? Any good links that might help me out? Thanks On Jan 23, 12:10 pm, mlb mlb.j...@gmail.com wrote: I'm trying to get a plugin architecture set up using GWT. I'd like to have modules communicate via callbacks like: var thisObj = this; $wnd[callback] = function(arg1, arg2) { thiso...@com.test.TestPlugin1::myCallback(Ljava/lang/String;Ljava/ lang/String;)(arg1, arg2); }; The callbacks work fine within components in the same iFrame, but when I have two plugins dropped into a portal app, other iframes don't receive the events. Firebug doesn't show any SOP errors - not sure what to try here. I've tried adding this to the gwt.xml file: add- linker name=xs /, no luck. I don't think I'm getting SOP errors since Firebug doesn't show any errors - I think maybe my reference $wnd[callback] isn't correct. Any suggestions would be appreciated - thanks! -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: RequestFactory does not preserve owned 1-to-many list order
Hi David, Thanks for the reply. What i want is support for 'collection' of embedded classes. I am using gwt2.1.1 + appengine sdk 1.4.0. What i found is jdo implementation in appEngine seems not support this feature. I saw your sample code of 'listwidget' by JPA. it seems ok. Is it correct? On Jan 22, 12:08 am, David Chandler drfibona...@google.com wrote: As of 2.1.1, RF now supports @Embedded types using ValueProxy on the client. Docs are lagging, will update shortly. /dmc On Fri, Jan 21, 2011 at 9:18 AM, David Sowerby david.sowe...@virgin.netwrote: Hi qkQk I don't think @Embedded is supported by RequestFactory. See http://code.google.com/webtoolkit/doc/trunk/DevGuideRequestFactory.html under Entity Relationships On Jan 20, 2:42 pm, QkQk michael@gmail.com wrote: Hi Thomas, you are correct in list order. It's my mistake. For the second question, i have tried @Persistent(embeddedElement=true) on collection of embedded class,but does not work on appEngine sdk 1.4.0. Can you provide a working example? Is it possible to have embedded class or collection of embedded class on a child entity of owned 1-to-many relationship. Another question confused me is in RequestFactory doc says It is not necessary to represent every property and method from the server-side entity in the EntityProxy, only getters and setters for properties that should be exposed to the client. Does it mean RF will smart download only properties specified in EntityProxy or it will download whole property set no matter what. Thanks, On Jan 19, 11:58 pm, Thomas Broyer t.bro...@gmail.com wrote: On Wednesday, January 19, 2011 4:42:35 AM UTC+1, QkQk wrote: Hi, I am using gwt2.1.1's requestfactory on owned 1-to-many relationship in jdo. I found the ordering of child list is missing as passed back to entityproxy. If you declared your property as a ListChildProxy (and not a SetChildProxy, but even then) then, well, it should work (I never met the case where the ordering was messed up by RequestFactory). Another question is jdo seems not support collection of embedded class. It seems like it actually does: http://www.datanucleus.org/products/accessplatform/jdo/orm/embedded.h... -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2Bunsubs cr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- David Chandler Developer Programs Engineer, Google Web Toolkit w:http://code.google.com/ b:http://googlewebtoolkit.blogspot.com/ t: @googledevtools -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Widget Library
Check this post: http://swe-strongsteve.blogspot.com/2010/11/creating-re-usable-composites-using-gwt.html -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
[gwt-contrib] Re: Update the mac xpcom plugin for Gecko 2.0 (FF4). This is a platform switch for (issue1311802)
LGTM http://gwt-code-reviews.appspot.com/1311802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add option to use JSONP in ExternalTextResource (issue1310801)
Why maintain both modes of operation? There's more code and more stuff to test when JSONP is a more general solution than XHR. http://gwt-code-reviews.appspot.com/1310801/diff/1/3 File user/src/com/google/gwt/jsonp/client/JsonpRequest.java (right): http://gwt-code-reviews.appspot.com/1310801/diff/1/3#newcode70 user/src/com/google/gwt/jsonp/client/JsonpRequest.java:70: } Extra whitespace. GPE usually prevents formatting weirdness. http://gwt-code-reviews.appspot.com/1310801/diff/1/3#newcode75 user/src/com/google/gwt/jsonp/client/JsonpRequest.java:75: // The P suffix must stay in sync with ExternalTextResourceGenerator.java Use a shared constant field? http://gwt-code-reviews.appspot.com/1310801/diff/1/3#newcode149 user/src/com/google/gwt/jsonp/client/JsonpRequest.java:149: String id) { Formatting. http://gwt-code-reviews.appspot.com/1310801/diff/1/3#newcode219 user/src/com/google/gwt/jsonp/client/JsonpRequest.java:219: return callbackId.startsWith(P); This seems kind of hacky. Is there a way to do this in a way that would prevent someone from accidentally triggering this behavior with a poorly-chosen prefix? http://gwt-code-reviews.appspot.com/1310801/diff/1/3#newcode279 user/src/com/google/gwt/jsonp/client/JsonpRequest.java:279: if (!canHaveMultipleRequestsForId) { Could you reverse the order of the then and else clauses to prevent a negative comparison? http://gwt-code-reviews.appspot.com/1310801/diff/1/3#newcode289 user/src/com/google/gwt/jsonp/client/JsonpRequest.java:289: if (callbackWrapper == null) { if (!callbackWrapper) is more idiomatic. http://gwt-code-reviews.appspot.com/1310801/diff/1/5 File user/src/com/google/gwt/resources/Resources.gwt.xml (right): http://gwt-code-reviews.appspot.com/1310801/diff/1/5#newcode83 user/src/com/google/gwt/resources/Resources.gwt.xml:83: !-- This can be used to make ExternalTextResource use JSONP rather than XHR -- Why not always use JSONP? It's guaranteed to work across more deployment schemes than XHR, right? http://gwt-code-reviews.appspot.com/1310801/diff/1/6 File user/src/com/google/gwt/resources/client/impl/ExternalTextResourcePrototype.java (right): http://gwt-code-reviews.appspot.com/1310801/diff/1/6#newcode87 user/src/com/google/gwt/resources/client/impl/ExternalTextResourcePrototype.java:87: }; Extra whitespace. http://gwt-code-reviews.appspot.com/1310801/diff/1/6#newcode170 user/src/com/google/gwt/resources/client/impl/ExternalTextResourcePrototype.java:170: // } Delete this? http://gwt-code-reviews.appspot.com/1310801/diff/1/6#newcode172 user/src/com/google/gwt/resources/client/impl/ExternalTextResourcePrototype.java:172: if (!.equals(md5Hash)) { How about a null comparison instead? http://gwt-code-reviews.appspot.com/1310801/diff/1/7 File user/src/com/google/gwt/resources/rg/ExternalTextResourceGenerator.java (right): http://gwt-code-reviews.appspot.com/1310801/diff/1/7#newcode54 user/src/com/google/gwt/resources/rg/ExternalTextResourceGenerator.java:54: static final String JSONP_CALLBACK_PREFIX = __gwt_jsonp__.P; If the .P is special, it should be in a constant field. http://gwt-code-reviews.appspot.com/1310801/diff/1/7#newcode184 user/src/com/google/gwt/resources/rg/ExternalTextResourceGenerator.java:184: if (Boolean.parseBoolean(useJsonpProp)) { How about return Boolean.parseBoolean(useJsonProp); http://gwt-code-reviews.appspot.com/1310801/diff/1/11 File user/test/com/google/gwt/resources/client/ExternalTextResourceJsonpTest.java (right): http://gwt-code-reviews.appspot.com/1310801/diff/1/11#newcode2 user/test/com/google/gwt/resources/client/ExternalTextResourceJsonpTest.java:2: * Copyright 2010 Google Inc. 2011 http://gwt-code-reviews.appspot.com/1310801/diff/1/12 File user/test/com/google/gwt/resources/client/ExternalTextResourceTest.java (right): http://gwt-code-reviews.appspot.com/1310801/diff/1/12#newcode2 user/test/com/google/gwt/resources/client/ExternalTextResourceTest.java:2: * Copyright 2008 Google Inc. 2011 http://gwt-code-reviews.appspot.com/1310801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Update the mac xpcom plugin for Gecko 2.0 (FF4). This is a platform switch for (issue1311802)
http://gwt-code-reviews.appspot.com/1311802/diff/1/2 File plugins/config.mk (right): http://gwt-code-reviews.appspot.com/1311802/diff/1/2#newcode85 plugins/config.mk:85: ALLARCHCFLAGS=-arch i386 -arch ppc -arch x86_64 On 2011/01/24 02:47:49, jat wrote: So we will build with all 3 architectures? I thought PPC was being phased out, so we would have x86/x86_64 instead of x86/ppc? This lets us continue to build the old plugin with i386/ppc. http://gwt-code-reviews.appspot.com/1311802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r9597 committed - Update the mac xpcom plugin for Gecko 2.0 (FF4). This is a platform s...
Revision: 9597 Author: con...@google.com Date: Mon Jan 24 04:30:43 2011 Log: Update the mac xpcom plugin for Gecko 2.0 (FF4). This is a platform switch for mac: ppc+i386 to i386+x86_64 to mirror Firefox's platform shift. Also, fixup the linux libxul linkage: we had been getting lucky with -rdynamic on linux for the JS symbols which can actually be found in libxul (and are required for the mac build). Review at http://gwt-code-reviews.appspot.com/1311802 http://code.google.com/p/google-web-toolkit/source/detail?r=9597 Modified: /trunk/plugins/config.mk /trunk/plugins/xpcom/Makefile /trunk/plugins/xpcom/install-template.rdf /trunk/plugins/xpcom/prebuilt/extension/chrome.manifest /trunk/plugins/xpcom/prebuilt/extension/lib/Darwin-gcc3/ff3/libgwt_dev_ff3.dylib /trunk/plugins/xpcom/prebuilt/extension/lib/Darwin-gcc3/ff35/libgwt_dev_ff35.dylib /trunk/plugins/xpcom/prebuilt/extension/lib/Darwin-gcc3/ff36/libgwt_dev_ff36.dylib /trunk/plugins/xpcom/prebuilt/extension/lib/Darwin-gcc3/ff40/libgwt_dev_ff40.dylib /trunk/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff3/libgwt_dev_ff3.so /trunk/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff3+/libgwt_dev_ff3+.so /trunk/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff35/libgwt_dev_ff35.so /trunk/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff36/libgwt_dev_ff36.so /trunk/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff40/libgwt_dev_ff40.so /trunk/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff3/libgwt_dev_ff3.so /trunk/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff3+/libgwt_dev_ff3+.so /trunk/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff35/libgwt_dev_ff35.so /trunk/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff40/libgwt_dev_ff40.so /trunk/plugins/xpcom/prebuilt/gwt-dev-plugin.xpi === --- /trunk/plugins/config.mkThu Sep 3 15:22:56 2009 +++ /trunk/plugins/config.mkMon Jan 24 04:30:43 2011 @@ -69,24 +69,20 @@ MARCH=$(ARCH) ifeq ($(ARCH),x86) MARCH=i386 -OMARCH=ppc endif -ifeq ($(ARCH),ppc) -OMARCH=i386 -endif # Set OS as well as CFLAGS, CXX, and other common make variables ifeq ($(shell uname),Linux) OS=linux BASECFLAGS= -g -O2 -fPIC $(INC) -rdynamic ARCHCFLAGS=-m$(FLAG32BIT) -ALLARCHCFLAGS=$(ARCHCFLAGS) +ALLARCHCFLAGS= endif ifeq ($(shell uname),Darwin) OS=mac BASECFLAGS= -g -O2 -fPIC $(INC) -D__mac ARCHCFLAGS=-arch $(MARCH) -ALLARCHCFLAGS=-arch i386 -arch ppc +ALLARCHCFLAGS=-arch i386 -arch ppc -arch x86_64 AR=libtool ARFLAGS=-static -o endif === --- /trunk/plugins/xpcom/Makefile Wed Jan 12 11:43:57 2011 +++ /trunk/plugins/xpcom/Makefile Mon Jan 24 04:30:43 2011 @@ -72,6 +72,9 @@ MOZJS_DLLFLAGS = -lmozjs MOZALLOC_DLLFLAGS = +#default ALLARCHFLAGS for pre-FF4 +ALLARCHCFLAGS=-arch i386 -arch ppc + ifeq ($(BROWSER),ff3) GECKO_VERSION = 1.9.0 CFLAGS += -DGECKO_VERSION=1900 @@ -93,8 +96,13 @@ GECKO_VERSION = 2.0.0 CFLAGS += -DGECKO_VERSION=2000 MOZALLOC_DLLFLAGS = -lmozalloc -#MOZJS is statically linked in FF4 -MOZJS_DLLFLAGS = +MOZJS_DLLFLAGS = -lxul + +#FF4 drops PPC, adds x86_64. Use FLAG32BIT as a switch in the unified headers. +ifeq ($(OS),mac) +ALLARCHCFLAGS = -arch i386 -arch x86_64 -Xarch_i386 -DFLAG32BIT=32 -Xarch_x86_64 -DFLAG32BIT=64 +endif + else $(error Unrecognized BROWSER of $(BROWSER) - options are ff3, ff3+, ff35, ff36, ff40) endif @@ -133,7 +141,6 @@ XPIDL_FLAGS = -I$(GECKO_SDK)/idl DLLFLAGS += \ - -L$(DEFAULT_FIREFOX_LIBS) \ -L$(GECKO_LIBS) \ -Wl,$(RUN_PATH_FLAG),$(GECKO_LIBS) \ $(GECKO_DLLFLAGS) $(NSPR_DLLFLAGS) \ @@ -212,7 +219,7 @@ [ ! -x $(XPIDL) -o \( -e $(FF_HEADER) -a ! -w $(FF_HEADER) \) ] || $(XPIDL) $(XPIDL_FLAGS) -m header -e $@ $ $(FF_DLL): $(FF_OBJS) $(COMMON) - $(CXX) -m$(FLAG32BIT) -o $@ $(FF_OBJS) $(COMMON) $(DLLFLAGS) + $(CXX) -o $@ $(FF_OBJS) $(COMMON) $(DLLFLAGS) @mkdir -p $(FF_PLATFORM_DIR) cp $(FF_DLL) $(FF_PLATFORM_DIR)/ === --- /trunk/plugins/xpcom/install-template.rdf Wed Jan 12 11:43:57 2011 +++ /trunk/plugins/xpcom/install-template.rdf Mon Jan 24 04:30:43 2011 @@ -26,6 +26,7 @@ em:targetPlatformLinux_x86_64-gcc3/em:targetPlatform em:targetPlatformWINNT_x86-msvc/em:targetPlatform em:targetPlatformDarwin_x86-gcc3/em:targetPlatform +em:targetPlatformDarwin_x86_64-gcc3/em:targetPlatform em:targetPlatformDarwin_ppc-gcc3/em:targetPlatform em:optionsURLchrome://gwt-dev-plugin/content/options.xul/em:optionsURL === --- /trunk/plugins/xpcom/prebuilt/extension/chrome.manifest Wed Jan 12 11:43:57 2011 +++ /trunk/plugins/xpcom/prebuilt/extension/chrome.manifest Mon Jan 24 04:30:43 2011 @@ -3,8 +3,10 @@ binary-component
[gwt-contrib] [google-web-toolkit] r9598 committed - Some fixes to Only JClassTypes should have a super class.
Revision: 9598 Author: sco...@google.com Date: Mon Jan 24 06:53:26 2011 Log: Some fixes to Only JClassTypes should have a super class. http://code.google.com/p/google-web-toolkit/source/detail?r=9598 Modified: /trunk/dev/core/src/com/google/gwt/dev/jjs/impl/ControlFlowAnalyzer.java === --- /trunk/dev/core/src/com/google/gwt/dev/jjs/impl/ControlFlowAnalyzer.java Sat Jan 22 17:19:44 2011 +++ /trunk/dev/core/src/com/google/gwt/dev/jjs/impl/ControlFlowAnalyzer.java Mon Jan 24 06:53:26 2011 @@ -117,7 +117,8 @@ true, isInstantiated); } else { // anything[] - Object - rescue(program.getTypeJavaLangObject(), true, isInstantiated); + // But instead of Object, rescue the base Array implementation type. + rescue(baseArrayType, true, isInstantiated); } } @@ -130,8 +131,6 @@ } } - // Rescue the base Array type - rescue(program.getIndexedType(Array), true, isInstantiated); return false; } @@ -710,6 +709,7 @@ } } + private JDeclaredType baseArrayType; private DependencyRecorder dependencyRecorder; private SetJField fieldsWritten = new HashSetJField(); @@ -739,6 +739,7 @@ public ControlFlowAnalyzer(ControlFlowAnalyzer cfa) { program = cfa.program; +baseArrayType = cfa.baseArrayType; fieldsWritten = new HashSetJField(cfa.fieldsWritten); instantiatedTypes = new HashSetJReferenceType(cfa.instantiatedTypes); liveFieldsAndMethods = new HashSetJNode(cfa.liveFieldsAndMethods); @@ -752,6 +753,7 @@ public ControlFlowAnalyzer(JProgram program) { this.program = program; +baseArrayType = program.getIndexedType(Array); buildMethodsOverriding(); } -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Allows isBoolean() properties to be handled correctly by AutoBeanCodex. (issue1320801)
Reviewers: rjrjr, Description: Allows isBoolean() properties to be handled correctly by AutoBeanCodex. Issue 5902. Moves all method-to-property computations into BeanMethod and JBeanMethod utiliy enums. Patch by: bobv Review by: rjrjr Reported by: jasonhall Please review this at http://gwt-code-reviews.appspot.com/1320801/show Affected files: M user/src/com/google/gwt/autobean/rebind/AutoBeanFactoryGenerator.java M user/src/com/google/gwt/autobean/rebind/model/AutoBeanFactoryModel.java M user/src/com/google/gwt/autobean/rebind/model/AutoBeanMethod.java M user/src/com/google/gwt/autobean/rebind/model/AutoBeanType.java A user/src/com/google/gwt/autobean/rebind/model/JBeanMethod.java M user/src/com/google/gwt/autobean/server/BeanMethod.java M user/src/com/google/gwt/autobean/server/BeanPropertyContext.java M user/src/com/google/gwt/autobean/server/GetterPropertyContext.java M user/src/com/google/gwt/autobean/server/ProxyAutoBean.java M user/test/com/google/gwt/autobean/shared/AutoBeanCodexTest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Generator Result Caching implementation for ClientBundle (issue1236801)
just some nits and a possible TODO http://gwt-code-reviews.appspot.com/1236801/diff/39001/40003 File dev/core/src/com/google/gwt/dev/javac/rebind/CachedClientDataMap.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40003#newcode2 dev/core/src/com/google/gwt/dev/javac/rebind/CachedClientDataMap.java:2: * Copyright 2010 Google Inc. welcome to 2011 http://gwt-code-reviews.appspot.com/1236801/diff/39001/40008 File dev/core/src/com/google/gwt/dev/javac/typemodel/JRealClassType.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40008#newcode108 dev/core/src/com/google/gwt/dev/javac/typemodel/JRealClassType.java:108: this.byteCode = byteCode; I was just thinking - queuing up a task here to compute the hash is a function it might be nice to offload some work to a thread. Then, on refresh, the old version would always be computed. This might give us better startup performance on muliticore boxes too. Just a thought - add a TODO if you think it would be worthwhile to look into. http://gwt-code-reviews.appspot.com/1236801/diff/39001/40013 File user/src/com/google/gwt/resources/ext/SupportsGeneratorResultCaching.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40013#newcode2 user/src/com/google/gwt/resources/ext/SupportsGeneratorResultCaching.java:2: * Copyright 2010 Google Inc. 2011 http://gwt-code-reviews.appspot.com/1236801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Generator Result Caching implementation for ClientBundle (issue1236801)
Almost there http://gwt-code-reviews.appspot.com/1236801/diff/39001/40001 File dev/core/src/com/google/gwt/core/ext/typeinfo/JRealClassType.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40001#newcode28 dev/core/src/com/google/gwt/core/ext/typeinfo/JRealClassType.java:28: void addByteCode(byte[] byteCode); Why is this method in the public interface? Can we just remove it and leave the implementation in typemodel.JRealClassType? http://gwt-code-reviews.appspot.com/1236801/diff/39001/40003 File dev/core/src/com/google/gwt/dev/javac/rebind/CachedClientDataMap.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40003#newcode39 dev/core/src/com/google/gwt/dev/javac/rebind/CachedClientDataMap.java:39: // this will throw a ClassCastException if value is not Serializable Comment is pointless as is. Document with javadoc instead? http://gwt-code-reviews.appspot.com/1236801/diff/39001/40008 File dev/core/src/com/google/gwt/dev/javac/typemodel/JRealClassType.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40008#newcode290 dev/core/src/com/google/gwt/dev/javac/typemodel/JRealClassType.java:290: lazyTypeStrongHash = Util.computeStrongName(byteCode); This isn't exactly what we want either, but it's better than assuming always stale or taking a long time to compute a hash. Can you add a comment here that explains that ideally we want to identify staleness based on a type's structure, not including its code, but we don't have a quick way to compute a hash for type structure yet? http://gwt-code-reviews.appspot.com/1236801/diff/39001/40013 File user/src/com/google/gwt/resources/ext/SupportsGeneratorResultCaching.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40013#newcode41 user/src/com/google/gwt/resources/ext/SupportsGeneratorResultCaching.java:41: public interface HasFindableResourceDependencies extends It's cute, but is there actually a benefit to nesting this? http://gwt-code-reviews.appspot.com/1236801/diff/39001/40014 File user/src/com/google/gwt/resources/rebind/context/AbstractClientBundleGenerator.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40014#newcode232 user/src/com/google/gwt/resources/rebind/context/AbstractClientBundleGenerator.java:232: for (JClassType superType : superTypes) { Why is this for loop necessary? Doesn't getFlattenedSupertypeHierarchy already do this? http://gwt-code-reviews.appspot.com/1236801/diff/39001/40014#newcode249 user/src/com/google/gwt/resources/rebind/context/AbstractClientBundleGenerator.java:249: if (!(type instanceof JRealClassType)) { Under what situations does this occur? http://gwt-code-reviews.appspot.com/1236801/diff/39001/40014#newcode510 user/src/com/google/gwt/resources/rebind/context/AbstractClientBundleGenerator.java:510: * Loop through each of our ResouceGenerator classes, and check those that s/that that/that http://gwt-code-reviews.appspot.com/1236801/diff/39001/40014#newcode532 user/src/com/google/gwt/resources/rebind/context/AbstractClientBundleGenerator.java:532: // use the jar file itself for the modified date test Document why http://gwt-code-reviews.appspot.com/1236801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add option to use JSONP in ExternalTextResource (issue1310801)
http://gwt-code-reviews.appspot.com/1310801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Generator Result Caching implementation for ClientBundle (issue1236801)
http://gwt-code-reviews.appspot.com/1236801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Generator Result Caching implementation for ClientBundle (issue1236801)
http://gwt-code-reviews.appspot.com/1236801/diff/39001/40003 File dev/core/src/com/google/gwt/dev/javac/rebind/CachedClientDataMap.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40003#newcode2 dev/core/src/com/google/gwt/dev/javac/rebind/CachedClientDataMap.java:2: * Copyright 2010 Google Inc. On 2011/01/24 18:53:37, zundel wrote: welcome to 2011 Done. http://gwt-code-reviews.appspot.com/1236801/diff/39001/40013 File user/src/com/google/gwt/resources/ext/SupportsGeneratorResultCaching.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40013#newcode2 user/src/com/google/gwt/resources/ext/SupportsGeneratorResultCaching.java:2: * Copyright 2010 Google Inc. On 2011/01/24 18:53:37, zundel wrote: 2011 Done. http://gwt-code-reviews.appspot.com/1236801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] Re: Issue 5549: fix is/has support for boolean properties (issue1272801)
Argh. I forgot about this and it wasn't on a 2.3 issue tracker. I'll merge the extra things that this fixes into the patch I sent out. -- Bob Vawter Google Web Toolkit Team -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Updated StackTraceDeobfuscator javadoc in follow up to r9162. (issue1321801)
Reviewers: unnurg, Description: Updated StackTraceDeobfuscator javadoc in follow up to r9162. Fixes issues: 5923 Please review this at http://gwt-code-reviews.appspot.com/1321801/show Affected files: M user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java Index: user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java === --- user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java (revision 9493) +++ user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java (working copy) @@ -30,16 +30,18 @@ /** * Deobfuscates stack traces on the server side. This class requires that you - * have turned on emulated stack traces and moved your symbolMap files to a - * place accessible by your server. More concretely, you must compile with the - * code-extra/code command line option, copy the codesymbolMaps/code - * directory to somewhere your server side code has access to it, and then set - * the symbolMapsDirectory in this class through the constructor, or the setter - * method. For example, this variable could be set to - * WEB-INF/classes/symbolMaps/, if you copied the symbolMaps directory to - * there or compiled your application using - * code-extra war/WEB-INF/classes//code. - * + * have turned on emulated stack traces, via + * codelt;set-property name=compiler.emulatedStack value=true /gt;/code + * in your code.gwt.xml/code module file, and moved your symbol map files to + * a location accessible by your server sever side code. You can use the GWT + * compiler code-deploy/code command line argument to specify the location + * of the folder into which the generated codesymbolMaps/code directory is + * written. By default, the final codesymbolMaps/code directory is + * codewar/WEB-INF/deploy/iyourmodulename/i/symbolMaps//code. Pass the + * resulting directory location into this class' + * {@link StackTraceDeobfuscator#symbolMapsDirectory} constructor or + * {@link #setSymbolMapsDirectory(String)} setter method. + * * TODO(unnurg): Combine this code with similar code in JUnitHostImpl */ public class StackTraceDeobfuscator { @@ -58,9 +60,9 @@ /** * Constructor, which takes a codesymbolMaps/code directory as its - * argument. Symbol maps can be generated using the code-extra/code GWT - * compiler argument. - * + * argument. Symbol maps are generated into the location specified by the + * GWT compiler code-deploy/code command line argument. + * * @param symbolMapsDirectory the codesymbolMaps/code directory with, or * without trailing directory separator character */ @@ -159,8 +161,8 @@ * Retrieves a new {@link InputStream} for the given permutation strong name. * This implementation, which subclasses may override, returns a * {@link InputStream} for the code - * ilt;permutation-strong-namegt;/i.symbolMap/code file in the - * symbolMapsDirectory. + * ipermutation-strong-name/i.symbolMap/code file in the + * codesymbolMaps/code directory. * * @param permutationStrongName the GWT permutation strong name * @return a new {@link InputStream} -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r9599 committed - Support for IE9 GWT Developer Mode plugin.
Revision: 9599 Author: fabio...@google.com Date: Mon Jan 24 08:49:19 2011 Log: Support for IE9 GWT Developer Mode plugin. http://code.google.com/p/google-web-toolkit/source/detail?r=9599 Added: /trunk/plugins/ie/oophm/oophm/Constants.h /trunk/plugins/ie/oophm/oophm/IEUtils.h /trunk/plugins/platform /trunk/plugins/platform/Win /trunk/plugins/platform/Win/AllowDialog.cpp /trunk/plugins/platform/Win/AllowDialog.h /trunk/plugins/platform/Win/Preferences.cpp /trunk/plugins/platform/Win/Preferences.h Modified: /trunk/plugins/common/Socket.cpp /trunk/plugins/ie/installer/oophm.wxs /trunk/plugins/ie/oophm/oophm/IESessionHandler.cpp /trunk/plugins/ie/oophm/oophm/JavaObject.cpp /trunk/plugins/ie/oophm/oophm/SessionData.h /trunk/plugins/ie/oophm/oophm/oophm.rc /trunk/plugins/ie/oophm/oophm/oophm.vcproj /trunk/plugins/ie/oophm/oophm/plugin.cpp /trunk/plugins/ie/oophm/oophm/plugin.h /trunk/plugins/ie/oophm/oophm/stdafx.h /trunk/plugins/ie/prebuilt/Win32/oophm.dll /trunk/plugins/ie/prebuilt/gwt-dev-plugin-x64.msi /trunk/plugins/ie/prebuilt/gwt-dev-plugin-x86.msi /trunk/plugins/ie/prebuilt/x64/oophm.dll === --- /dev/null +++ /trunk/plugins/ie/oophm/oophm/Constants.h Mon Jan 24 08:49:19 2011 @@ -0,0 +1,22 @@ +#pragma once + +#include stdafx.h + +class Constants +{ +public: +const static LPOLESTR __gwt_disconnected; +const static LPOLESTR valueOf; +const static LPOLESTR Error; +const static _bstr_t JavaScript; +const static LPOLESTR __gwt_makeResult; +const static LPOLESTR __gwt_makeTearOff; +}; + +__declspec(selectany) const LPOLESTR Constants::__gwt_disconnected = L__gwt_disconnected; +__declspec(selectany) const LPOLESTR Constants::valueOf = LvalueOf; +__declspec(selectany) const LPOLESTR Constants::Error = LError; +__declspec(selectany) const _bstr_t Constants::JavaScript = _bstr_t(LJavaScript); +__declspec(selectany) const LPOLESTR Constants::__gwt_makeResult = L__gwt_makeResult; +__declspec(selectany) const LPOLESTR Constants::__gwt_makeTearOff = L__gwt_makeTearOff; + === --- /dev/null +++ /trunk/plugins/ie/oophm/oophm/IEUtils.h Mon Jan 24 08:49:19 2011 @@ -0,0 +1,178 @@ +/* +* Copyright 2008 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. +*/ + +#pragma once +#include stdafx.h +#include comutil.h +#include dispex.h +#include SessionData.h + +#define SYSLOGERROR(MSG,FMT,...) \ +LPCWSTR msgArr[3] = {NULL, NULL, NULL}; \ +msgArr[0] = MSG; \ +WCHAR buffer1[512]; \ +swprintf(buffer1, sizeof(buffer1)/sizeof(WCHAR), FMT, __VA_ARGS__); \ +msgArr[1] = buffer1; \ +WCHAR buffer2[512]; \ +swprintf(buffer2, sizeof(buffer2)/sizeof(WCHAR), Lfunction: %S, file: %S, line: %d, __FUNCTION__, __FILE__, __LINE__); \ +msgArr[2] = buffer2; \ +IEUtils::WriteToLog((LPCWSTR*)msgArr, 3); + + +typedef HRESULT (*PFNRESOLVENAME)(IDispatch*, LPOLESTR, DISPID*); + +// +// This class is a collection of helper methods specific to IE +// It finds the appropriate implementation that resolves javascript +// names regardless of the specific documentMode that browser is +// running. +// +class IEUtils +{ +static HANDLE hEventLog; +static LPWSTR logSourceName; +static PFNRESOLVENAME pfnResolveName; + +// +// finds which IDispatch interface is capable of +// of 'resolving' names. +// +static PFNRESOLVENAME getResolveNameFunction(IDispatch* obj) +{ +_variant_t retVal; +std::string probeScript(function _FN3E9738B048214100A6D6B750F2230A34() { return null; }); +CComQIPtrIHTMLWindow2 spWindow2(obj); +if (!spWindow2) { +return IEUtils::internalResolveNameEx; +} +LPOLESTR functionName = L_FN3E9738B048214100A6D6B750F2230A34; +HRESULT hr = spWindow2-execScript(UTF8ToBSTR(probeScript.length(), probeScript.c_str()), +UTF8ToBSTR(10, JavaScript), retVal.GetAddress()); +if (SUCCEEDED(hr)) { +DISPID dispId; +hr = internalResolveName(spWindow2, functionName, dispId); +if (SUCCEEDED(hr)) { +return IEUtils::internalResolveName; +} else { +hr = internalResolveNameEx(spWindow2, functionName, dispId); +if (SUCCEEDED(hr)) { +return IEUtils::internalResolveNameEx; +} else { +SYSLOGERROR(LFailed to find a
[gwt-contrib] Re: Updated StackTraceDeobfuscator javadoc in follow up to r9162. (issue1321801)
LGTM On 2011/01/24 19:53:04, fredsa wrote: http://gwt-code-reviews.appspot.com/1321801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r9600 committed - Cherry picking r9595 into 2.2 release branch.
Revision: 9600 Author: gwt.mirror...@gmail.com Date: Mon Jan 24 13:01:56 2011 Log: Cherry picking r9595 into 2.2 release branch. http://code.google.com/p/google-web-toolkit/source/detail?r=9600 Modified: /releases/2.2/samples/showcase/src/com/google/gwt/sample/showcase/Showcase.gwt.xml === --- /releases/2.2/samples/showcase/src/com/google/gwt/sample/showcase/Showcase.gwt.xml Wed Jan 5 12:33:32 2011 +++ /releases/2.2/samples/showcase/src/com/google/gwt/sample/showcase/Showcase.gwt.xml Mon Jan 24 13:01:56 2011 @@ -20,11 +20,9 @@ !-- Internationalization support. -- extend-property name=locale values=en/ - !-- extend-property name=locale values=ar/ extend-property name=locale values=fr/ extend-property name=locale values=zh/ - -- set-property-fallback name=locale value=en/ set-configuration-property name=locale.cookie value=SHOWCASE_LOCALE/ /module -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Include class level constraints in the BeanDescriptor. (issue1319801)
LGTM. Wit nits. http://gwt-code-reviews.appspot.com/1319801/diff/1/3 File user/src/com/google/gwt/validation/rebind/GwtSpecificValidatorCreator.java (right): http://gwt-code-reviews.appspot.com/1319801/diff/1/3#newcode499 user/src/com/google/gwt/validation/rebind/GwtSpecificValidatorCreator.java:499: count++; // index starts at zero. Why is this comment important? http://gwt-code-reviews.appspot.com/1319801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Include class level constraints in the BeanDescriptor. (issue1319801)
Why is this comment important? It used to start at one. I will remove it now that it is no longer significant. http://gwt-code-reviews.appspot.com/1319801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r9601 committed - Include class level constraints in the BeanDescriptor....
Revision: 9601 Author: ncha...@google.com Date: Mon Jan 24 10:40:07 2011 Log: Include class level constraints in the BeanDescriptor. All BeanDescriptor TCK tests now pass. [JSR 303 TCK Result] 65 of 257 (25.29%) Pass with 25 Failures and 4 Errors. Review at http://gwt-code-reviews.appspot.com/1319801 Review by: rchan...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=9601 Modified: /trunk/user/src/com/google/gwt/validation/client/impl/GwtBeanDescriptorImpl.java /trunk/user/src/com/google/gwt/validation/rebind/GwtSpecificValidatorCreator.java /trunk/user/test/org/hibernate/jsr303/tck/tests/metadata/BeanDescriptorGwtTest.java === --- /trunk/user/src/com/google/gwt/validation/client/impl/GwtBeanDescriptorImpl.java Tue Dec 14 08:48:08 2010 +++ /trunk/user/src/com/google/gwt/validation/client/impl/GwtBeanDescriptorImpl.java Mon Jan 24 10:40:07 2011 @@ -15,6 +15,7 @@ */ package com.google.gwt.validation.client.impl; +import java.lang.annotation.Annotation; import java.util.HashMap; import java.util.HashSet; import java.util.Map; @@ -34,21 +35,31 @@ /** * Builder for {@link GwtBeanDescriptors}. - * + * * @param T the bean Type */ public static final class BuilderT { private final ClassT clazz; -private final MapString, PropertyDescriptor descriptorMap = new HashMapString, PropertyDescriptor(); +private final MapString, PropertyDescriptor descriptorMap = +new HashMapString, PropertyDescriptor(); +private final SetConstraintDescriptor? extends Annotation constraints = +new HashSetConstraintDescriptor? extends Annotation(); private boolean isConstrained; private Builder(ClassT clazz) { this.clazz = clazz; } + +public BuilderT add( +ConstraintDescriptor? extends Annotation constraintDescriptor) { + constraints.add(constraintDescriptor); + return this; +} public GwtBeanDescriptorImplT build() { - return new GwtBeanDescriptorImplT(clazz, isConstrained, descriptorMap); + return new GwtBeanDescriptorImplT(clazz, isConstrained, descriptorMap, + constraints); } public BuilderT put(String key, PropertyDescriptor value) { @@ -73,11 +84,13 @@ private final boolean isBeanConstrained; private GwtBeanDescriptorImpl(ClassT clazz, boolean isConstrained, - MapString, PropertyDescriptor descriptorMap) { + MapString, PropertyDescriptor descriptorMap, + SetConstraintDescriptor? constraints) { super(); this.clazz = clazz; this.isBeanConstrained = isConstrained; this.descriptorMap.putAll(descriptorMap); +this.constraints.addAll(constraints); } public ConstraintFinder findConstraints() { @@ -109,15 +122,4 @@ public boolean isBeanConstrained() { return isBeanConstrained; } - - protected void setDescriptorMap(MapString, PropertyDescriptor map) { -descriptorMap.clear(); -descriptorMap.putAll(map); -constraints.clear(); -for (PropertyDescriptor p : descriptorMap.values()) { - if (p.hasConstraints()) { -constraints.addAll(p.getConstraintDescriptors()); - } -} - } -} +} === --- /trunk/user/src/com/google/gwt/validation/rebind/GwtSpecificValidatorCreator.java Wed Jan 19 06:58:02 2011 +++ /trunk/user/src/com/google/gwt/validation/rebind/GwtSpecificValidatorCreator.java Mon Jan 24 10:40:07 2011 @@ -491,6 +491,12 @@ // .setConstrained(true) sw.println(.setConstrained( + beanDescriptor.isBeanConstrained() + )); + +int count = 0; +for (ConstraintDescriptor? extends Annotationconstraint : beanDescriptor.getConstraintDescriptors()) { + // .add(c0) + sw.println(.add( + constraintDescriptorVar(this, count++) + )); +} // .put(myProperty, myProperty_pd) for (PropertyDescriptor p : beanDescriptor.getConstrainedProperties()) { @@ -612,8 +618,7 @@ int count = 0; for (ConstraintDescriptor? constraint : p.getConstraintDescriptors()) { writeConstraintDescriptor(sw, constraint, -constraintDescriptorVar(p.getPropertyName(), count)); -count++; // index starts at zero. +constraintDescriptorVar(p.getPropertyName(), count++)); } writePropertyDescriptor(sw, p); if (p.isCascaded()) { @@ -622,20 +627,19 @@ : createBeanHelper(p.getElementClass())); } } - -// Now write the BeanDescriptor after we already have the PropertyDescriptor -writeBeanDescriptor(sw); -sw.println(); // Create a variable for each constraint of this class. int count = 0; for (ConstraintDescriptor? constraint : beanHelper.getBeanDescriptor().getConstraintDescriptors()) { - writeConstraintDescriptor(sw, constraint, - constraintDescriptorVar(this, count)); - count++; // index starts at zero. -} +
[gwt-contrib] Re: Add option to use JSONP in ExternalTextResource (issue1310801)
http://gwt-code-reviews.appspot.com/1310801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r9602 committed - Improve canvas for browsers (and permutations) with partial canvas sup...
Revision: 9602 Author: p...@google.com Date: Mon Jan 24 12:09:10 2011 Log: Improve canvas for browsers (and permutations) with partial canvas support. Review at http://gwt-code-reviews.appspot.com/1296801 http://code.google.com/p/google-web-toolkit/source/detail?r=9602 Added: /trunk/user/src/com/google/gwt/dom/client/PartialSupport.java Deleted: /trunk/user/src/com/google/gwt/user/client/IsSupported.java Modified: /trunk/user/src/com/google/gwt/canvas/Canvas.gwt.xml /trunk/user/src/com/google/gwt/canvas/client/Canvas.java /trunk/user/test/com/google/gwt/canvas/client/CanvasTest.java /trunk/user/test/com/google/gwt/canvas/dom/client/Context2dTest.java === --- /dev/null +++ /trunk/user/src/com/google/gwt/dom/client/PartialSupport.java Mon Jan 24 12:09:10 2011 @@ -0,0 +1,34 @@ +/* + * Copyright 2011 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.dom.client; + +/** + * Annotation for classes that are only supported on a limited set of browsers. + * + * p + * By convention, classes annotated with PartialSupport will provide two static + * methods: + * ol + * li codestatic boolean isSupported()/code that returns whether the + * feature is supported. /li + * li codestatic YourType createIfSupported()/code factory method that + * returns a new feature if supported, or null otherwise. /li + * /ol + * /p + */ +public @interface PartialSupport { + +} === --- /trunk/user/src/com/google/gwt/user/client/IsSupported.java Thu Jan 13 05:38:38 2011 +++ /dev/null @@ -1,34 +0,0 @@ -/* - * 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.client; - -/** - * Interface for classes that are only supported on a limited set of browsers. - * - * p - * span style=color:redExperimental API: This API is still under development - * and is subject to change. - * /span - * /p - * - * By convention, classes that implement IsSupported will provide a static - * method codeboolean isSupported()/code that checks whether the feature is - * supported at runtime. - */ -public interface IsSupported { - -} === --- /trunk/user/src/com/google/gwt/canvas/Canvas.gwt.xml Tue Nov 30 06:11:17 2010 +++ /trunk/user/src/com/google/gwt/canvas/Canvas.gwt.xml Mon Jan 24 12:09:10 2011 @@ -16,5 +16,30 @@ module inherits name=com.google.gwt.user.User/ inherits name=com.google.gwt.canvas.dom.DOM/ + + !-- Define the support property -- + define-property name=canvasElementSupport values=maybe,no / + + !-- Give default support value of no -- + set-property name=canvasElementSupport value=no / + + set-property name=canvasElementSupport value=maybe +any + when-property-is name=user.agent value=safari / + when-property-is name=user.agent value=gecko1_8 / + when-property-is name=user.agent value=opera / +/any + /set-property + + replace-with class=com.google.gwt.canvas.client.Canvas.CanvasElementSupportDetectedMaybe +when-type-is class=com.google.gwt.canvas.client.Canvas.CanvasElementSupportDetector / +when-property-is name=canvasElementSupport value=maybe / + /replace-with + + replace-with class=com.google.gwt.canvas.client.Canvas.CanvasElementSupportDetectedNo +when-type-is class=com.google.gwt.canvas.client.Canvas.CanvasElementSupportDetector / +when-property-is name=canvasElementSupport value=no / + /replace-with + source path=client/ /module === --- /trunk/user/src/com/google/gwt/canvas/client/Canvas.java Thu Jan 13 05:38:38 2011 +++ /trunk/user/src/com/google/gwt/canvas/client/Canvas.java Mon Jan 24 12:09:10 2011 @@ -17,9 +17,10 @@ import com.google.gwt.canvas.dom.client.Context; import com.google.gwt.canvas.dom.client.Context2d; +import
[gwt-contrib] Re: Allow Editor framework to handle primitive types. (issue1312802)
LGTM http://gwt-code-reviews.appspot.com/1312802/diff/1/2 File user/src/com/google/gwt/editor/rebind/model/EditorModel.java (right): http://gwt-code-reviews.appspot.com/1312802/diff/1/2#newcode503 user/src/com/google/gwt/editor/rebind/model/EditorModel.java:503: if (!lastPart lookingAt == null) { You have a test for this bit? http://gwt-code-reviews.appspot.com/1312802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Generator Result Caching implementation for ClientBundle (issue1236801)
http://gwt-code-reviews.appspot.com/1236801/diff/39001/40001 File dev/core/src/com/google/gwt/core/ext/typeinfo/JRealClassType.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40001#newcode28 dev/core/src/com/google/gwt/core/ext/typeinfo/JRealClassType.java:28: void addByteCode(byte[] byteCode); On 2011/01/24 19:14:07, tobyr wrote: Why is this method in the public interface? Can we just remove it and leave the implementation in typemodel.JRealClassType? Well, I thought about doing that, but then we'd lose the benefits of the interface layer. The generator calling getTypeStrongHash shouldn't need to know the specific implementation for JRealClassType (and of type oracle). The generators refer to the interface versions of all the type oracle and class type apis, and so this was in keeping with that. Once we get the changes into TypeOracleMediator to be able to more specifically check type structure/version, we can add a capability interface (as Bob suggests), e.g. HasTypeStructureSignature. http://gwt-code-reviews.appspot.com/1236801/diff/39001/40003 File dev/core/src/com/google/gwt/dev/javac/rebind/CachedClientDataMap.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40003#newcode39 dev/core/src/com/google/gwt/dev/javac/rebind/CachedClientDataMap.java:39: // this will throw a ClassCastException if value is not Serializable On 2011/01/24 19:14:07, tobyr wrote: Comment is pointless as is. Document with javadoc instead? Agreed, I've removed the comment http://gwt-code-reviews.appspot.com/1236801/diff/39001/40008 File dev/core/src/com/google/gwt/dev/javac/typemodel/JRealClassType.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40008#newcode290 dev/core/src/com/google/gwt/dev/javac/typemodel/JRealClassType.java:290: lazyTypeStrongHash = Util.computeStrongName(byteCode); On 2011/01/24 19:14:07, tobyr wrote: This isn't exactly what we want either, but it's better than assuming always stale or taking a long time to compute a hash. Can you add a comment here that explains that ideally we want to identify staleness based on a type's structure, not including its code, but we don't have a quick way to compute a hash for type structure yet? I've added a TODO to revisit implementing an efficient hash of the type structure. http://gwt-code-reviews.appspot.com/1236801/diff/39001/40010 File user/src/com/google/gwt/resources/ext/ClientBundleRequirements.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40010#newcode50 user/src/com/google/gwt/resources/ext/ClientBundleRequirements.java:50: * whether a configuration property by the same name exists. On 2011/01/24 19:33:31, bobv wrote: This sounds sloppy. Well, this was current behavior (I didn't add). Should it be removed? I added the comment in the javadoc, to make it clear, as I noticed the discrepancy in the description. http://gwt-code-reviews.appspot.com/1236801/diff/39001/40011 File user/src/com/google/gwt/resources/ext/ResourceContext.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40011#newcode143 user/src/com/google/gwt/resources/ext/ResourceContext.java:143: ClientBundleRequirements getRequirements(); On 2011/01/24 19:33:31, bobv wrote: In order to compute the simple name of the implementing ClientBundle type, it is necessary to know all of the permutation properties that affect the generated code. If the requirements object can be accessed at arbitrary point in time, it would be possible to add a property requirement after the GeneratorContext.tryCreate() call has been made. Yeah, I suppose so. Essentially now the Requirements class has 2 uses (whereas before it only had one, the simple file name). Now I'm also using it for tracking selection/configuration properties and type dependencies, for the purpose of checking cacheability. FWIW, I don't see anywhere there where I've added calls to addPermutationAxis() after the tryCreate call (but there are now subsequent calls to requirements.AddConfigurationProperty() and requirements.AddTypeHierarchy()). I think there was the danger anyway prior to this change, that the Requirements object could have been updated after the call to get the simple name. I agree it's now easier for someone to do so since it's part of the context. But there is still no guard against a code path that might take an alternate code path based on a selection property after the simple name has been assigned. I suppose we can add a call to disable any further updates to any new permutationAxis entries. E.g. Requirements.disableFurtherPermutationAxisUpdates() (need a better name!). And then throw an exception if anyone tries to add a permutationAxis afterwards. Although that may be restrictive, in that it prevents selection properties being subsequently added to the set of dependencies. http://gwt-code-reviews.appspot.com/1236801/diff/39001/40011#newcode153
[gwt-contrib] Re: Generator Result Caching implementation for ClientBundle (issue1236801)
http://gwt-code-reviews.appspot.com/1236801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Update MissingPlugin.html for FF4 support (issue1322802)
Reviewers: jat, fabiomfv, Description: Update MissingPlugin.html for FF4 support Please review this at http://gwt-code-reviews.appspot.com/1322802/show Affected files: M plugins/MissingPlugin/war/MissingPlugin.html Index: plugins/MissingPlugin/war/MissingPlugin.html === --- plugins/MissingPlugin/war/MissingPlugin.html(revision 9602) +++ plugins/MissingPlugin/war/MissingPlugin.html(working copy) @@ -35,7 +35,7 @@ firefox-old : { -caption : Sorry, the GWT Developer Plugin only supports Firefox 3.0 and 3.5 at present, +caption : Sorry, the GWT Developer Plugin only supports Firefox 3.0 - 4.0 at present, url : http://www.getfirefox.com;, supported : false }, @@ -81,7 +81,7 @@ { caption : Download the GWT Developer PluginbrFor Firefox, url : https://dl-ssl.google.com/gwt/plugins/firefox/gwt-dev-plugin.xpi;, -platforms : Win x86, Linux x86/x86_64, Mac x86/PPC, +platforms : Win x86, Linux x86/x86_64, Mac x86/PPC(3.x only)/x86_64 (4.x) only, supported : true }, @@ -130,7 +130,8 @@ } else if (ua.indexOf(opera) != -1) { id = 'opera'; } else if (ua.indexOf(gecko) != -1) { -if (ua.indexOf(rv:1.9) != -1) { + if (ua.indexOf(rv:1.9) != -1 || + ua.indexOf(rv:2.0) != -1) { id = 'firefox'; } else { id = 'firefox-old'; -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Update MissingPlugin.html for FF4 support (issue1322802)
LGTM http://gwt-code-reviews.appspot.com/1322802/diff/1/2 File plugins/MissingPlugin/war/MissingPlugin.html (right): http://gwt-code-reviews.appspot.com/1322802/diff/1/2#newcode84 plugins/MissingPlugin/war/MissingPlugin.html:84: platforms : Win x86, Linux x86/x86_64, Mac x86/PPC(3.x only)/x86_64 (4.x) only, On 2011/01/25 01:09:17, conroy wrote: this is probably too much detail. Could just change it to x86/ppc/x86_64 and let the rest be read between the lines. what do you guys think? I don't think it hurts anything. BTW, we should probably add some text for the FF page telling users to dismiss the plugin not found infobar and then click on allow. http://gwt-code-reviews.appspot.com/1322802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Generator Result Caching implementation for ClientBundle (issue1236801)
http://gwt-code-reviews.appspot.com/1236801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Generator Result Caching implementation for ClientBundle (issue1236801)
http://gwt-code-reviews.appspot.com/1236801/diff/39001/40001 File dev/core/src/com/google/gwt/core/ext/typeinfo/JRealClassType.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40001#newcode28 dev/core/src/com/google/gwt/core/ext/typeinfo/JRealClassType.java:28: void addByteCode(byte[] byteCode); On 2011/01/25 00:48:19, jbrosenberg wrote: On 2011/01/24 19:14:07, tobyr wrote: Why is this method in the public interface? Can we just remove it and leave the implementation in typemodel.JRealClassType? Well, I thought about doing that, but then we'd lose the benefits of the interface layer. The generator calling getTypeStrongHash shouldn't need to know the specific implementation for JRealClassType (and of type oracle). The generators refer to the interface versions of all the type oracle and class type apis, and so this was in keeping with that. Once we get the changes into TypeOracleMediator to be able to more specifically check type structure/version, we can add a capability interface (as Bob suggests), e.g. HasTypeStructureSignature. Ok, I see the light nowdone http://gwt-code-reviews.appspot.com/1236801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Generator Result Caching implementation for ClientBundle (issue1236801)
http://gwt-code-reviews.appspot.com/1236801/diff/39001/40001 File dev/core/src/com/google/gwt/core/ext/typeinfo/JRealClassType.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40001#newcode28 dev/core/src/com/google/gwt/core/ext/typeinfo/JRealClassType.java:28: void addByteCode(byte[] byteCode); Sorted confusion out offline. In a nutshell, we should remove addByteCode (not getTypeStrongHash). On 2011/01/25 00:48:19, jbrosenberg wrote: On 2011/01/24 19:14:07, tobyr wrote: Why is this method in the public interface? Can we just remove it and leave the implementation in typemodel.JRealClassType? Well, I thought about doing that, but then we'd lose the benefits of the interface layer. The generator calling getTypeStrongHash shouldn't need to know the specific implementation for JRealClassType (and of type oracle). The generators refer to the interface versions of all the type oracle and class type apis, and so this was in keeping with that. Once we get the changes into TypeOracleMediator to be able to more specifically check type structure/version, we can add a capability interface (as Bob suggests), e.g. HasTypeStructureSignature. http://gwt-code-reviews.appspot.com/1236801/diff/39001/40014 File user/src/com/google/gwt/resources/rebind/context/AbstractClientBundleGenerator.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/39001/40014#newcode532 user/src/com/google/gwt/resources/rebind/context/AbstractClientBundleGenerator.java:532: // use the jar file itself for the modified date test On 2011/01/25 00:48:19, jbrosenberg wrote: On 2011/01/24 19:14:07, tobyr wrote: Document why Done. Sorry, I meant document why we'd want to use the jar file timestamp instead of the entry timestamp. http://gwt-code-reviews.appspot.com/1236801/diff/39001/40014#newcode538 user/src/com/google/gwt/resources/rebind/context/AbstractClientBundleGenerator.java:538: File file = new File(url.getPath()); Can we get rid of this special-casing and just use url.getLastModified? http://gwt-code-reviews.appspot.com/1236801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Generator Result Caching implementation for ClientBundle (issue1236801)
http://gwt-code-reviews.appspot.com/1236801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Update MissingPlugin.html for FF4 support (issue1322802)
lgtm http://gwt-code-reviews.appspot.com/1322802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r9603 committed - Public (t.bro...@gmail.com):...
Revision: 9603 Author: rj...@google.com Date: Mon Jan 24 15:45:54 2011 Log: Public (t.bro...@gmail.com): Addresses http://code.google.com/p/google-web-toolkit/issues/detail?id=5563 For GIN friendliness, make the PlaceHistoryMapperGenerator return null when it encounters a concrete implementation. (Returning null from a code generator results in a new Foo() call.) http://gwt-code-reviews.appspot.com/1293801 Review by: robertvaw...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=9603 Modified: /trunk/user/src/com/google/gwt/place/rebind/PlaceHistoryGeneratorContext.java /trunk/user/src/com/google/gwt/place/rebind/PlaceHistoryMapperGenerator.java /trunk/user/src/com/google/gwt/place/shared/PlaceHistoryMapper.java /trunk/user/test/com/google/gwt/place/impl/PlaceHistoryMapperGeneratorTest.java /trunk/user/test/com/google/gwt/place/rebind/PlaceHistoryGeneratorContextTest.java === --- /trunk/user/src/com/google/gwt/place/rebind/PlaceHistoryGeneratorContext.java Tue Oct 5 17:59:14 2010 +++ /trunk/user/src/com/google/gwt/place/rebind/PlaceHistoryGeneratorContext.java Mon Jan 24 15:45:54 2011 @@ -38,6 +38,17 @@ import java.util.TreeMap; class PlaceHistoryGeneratorContext { + /** + * Creates a {@link PlaceHistoryGeneratorContext} for the given + * {@link PlaceHistoryMapper} sub-interface. + * + * @return a {@link PlaceHistoryGeneratorContext}, or codenull/code if the + * generator should not run (i.e. codeinterfaceName/code is not an + * interface) + * @throws UnableToCompleteException if the type denoted by + * codeinterfaceName/code cannot be found in + * codetypeOracle/code + */ static PlaceHistoryGeneratorContext create(TreeLogger logger, TypeOracle typeOracle, String interfaceName) throws UnableToCompleteException { @@ -57,9 +68,7 @@ } if (interfaceType.isInterface() == null) { - logger.log(TreeLogger.ERROR, interfaceType.getQualifiedSourceName() - + is not an interface., null); - throw new UnableToCompleteException(); + return null; } factoryType = findFactoryType(placeHistoryMapperWithFactoryType, === --- /trunk/user/src/com/google/gwt/place/rebind/PlaceHistoryMapperGenerator.java Tue Oct 5 17:59:14 2010 +++ /trunk/user/src/com/google/gwt/place/rebind/PlaceHistoryMapperGenerator.java Mon Jan 24 15:45:54 2011 @@ -32,11 +32,6 @@ import java.io.PrintWriter; /** - * p - * span style=color:redExperimental API: This class is still under rapid - * development, and is very likely to be deleted. Use it at your own risk. - * /span - * /p * Generates implementations of * {@link com.google.gwt.place.shared.PlaceHistoryMapper PlaceHistoryMapper}. */ @@ -50,6 +45,10 @@ context = PlaceHistoryGeneratorContext.create(logger, generatorContext.getTypeOracle(), interfaceName); +if (context == null) { + return null; +} + PrintWriter out = generatorContext.tryCreate(logger, context.packageName, context.implName); === --- /trunk/user/src/com/google/gwt/place/shared/PlaceHistoryMapper.java Thu Oct 14 18:28:29 2010 +++ /trunk/user/src/com/google/gwt/place/shared/PlaceHistoryMapper.java Mon Jan 24 15:45:54 2011 @@ -18,6 +18,10 @@ /** * Maps {@link Place}s to/from tokens, used to configure a * {@link PlaceHistoryHandler}. + * p + * You can annotate subinterfaces of PlaceHistoryMapper with + * {@link WithTokenizers} to have their implementation automatically generated + * via a call to {@link com.google.gwt.core.client.GWT#create(Class)}. */ public interface PlaceHistoryMapper { === --- /trunk/user/test/com/google/gwt/place/impl/PlaceHistoryMapperGeneratorTest.java Tue Oct 5 18:38:29 2010 +++ /trunk/user/test/com/google/gwt/place/impl/PlaceHistoryMapperGeneratorTest.java Mon Jan 24 15:45:54 2011 @@ -47,6 +47,19 @@ interface LocalWithFactory extends PlaceHistoryMapperWithFactoryTokenizerFactory { }; + + /** + * The goal is only to test that the generator doesn't fail (but doesn't + * generate anything either). + */ + static class LocalConcreteClass implements LocalNoFactory { +public Place getPlace(String token) { + return null; +} +public String getToken(Place place) { + return null; +} + } @Override public String getModuleName() { @@ -86,6 +99,18 @@ doTest(subject, factory); } + + /** + * When asked to GWT.create a concrete implementation of PlaceHistoryMapper, + * the generator politely instantiates it. This is to make life easier + * for GIN users. See + * http://code.google.com/p/google-web-toolkit/issues/detail?id=5563 + */ + public void testNotAnInterface() { +PlaceHistoryMapper subject = GWT.create(LocalConcreteClass.class); +
[gwt-contrib] [google-web-toolkit] r9604 committed - Updated StackTraceDeobfuscator javadoc in follow up to r9162....
Revision: 9604 Author: fre...@google.com Date: Mon Jan 24 18:37:39 2011 Log: Updated StackTraceDeobfuscator javadoc in follow up to r9162. Fixes issues: 5923 Review at http://gwt-code-reviews.appspot.com/1321801 Review by: unn...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=9604 Modified: /trunk/user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java === --- /trunk/user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java Mon Dec 6 09:48:07 2010 +++ /trunk/user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java Mon Jan 24 18:37:39 2011 @@ -30,16 +30,18 @@ /** * Deobfuscates stack traces on the server side. This class requires that you - * have turned on emulated stack traces and moved your symbolMap files to a - * place accessible by your server. More concretely, you must compile with the - * code-extra/code command line option, copy the codesymbolMaps/code - * directory to somewhere your server side code has access to it, and then set - * the symbolMapsDirectory in this class through the constructor, or the setter - * method. For example, this variable could be set to - * WEB-INF/classes/symbolMaps/, if you copied the symbolMaps directory to - * there or compiled your application using - * code-extra war/WEB-INF/classes//code. - * + * have turned on emulated stack traces, via + * codelt;set-property name=compiler.emulatedStack value=true /gt;/code + * in your code.gwt.xml/code module file, and moved your symbol map files to + * a location accessible by your server sever side code. You can use the GWT + * compiler code-deploy/code command line argument to specify the location + * of the folder into which the generated codesymbolMaps/code directory is + * written. By default, the final codesymbolMaps/code directory is + * codewar/WEB-INF/deploy/iyourmodulename/i/symbolMaps//code. Pass the + * resulting directory location into this class' + * {@link StackTraceDeobfuscator#symbolMapsDirectory} constructor or + * {@link #setSymbolMapsDirectory(String)} setter method. + * * TODO(unnurg): Combine this code with similar code in JUnitHostImpl */ public class StackTraceDeobfuscator { @@ -58,9 +60,9 @@ /** * Constructor, which takes a codesymbolMaps/code directory as its - * argument. Symbol maps can be generated using the code-extra/code GWT - * compiler argument. - * + * argument. Symbol maps are generated into the location specified by the + * GWT compiler code-deploy/code command line argument. + * * @param symbolMapsDirectory the codesymbolMaps/code directory with, or * without trailing directory separator character */ @@ -159,8 +161,8 @@ * Retrieves a new {@link InputStream} for the given permutation strong name. * This implementation, which subclasses may override, returns a * {@link InputStream} for the code - * ilt;permutation-strong-namegt;/i.symbolMap/code file in the - * symbolMapsDirectory. + * ipermutation-strong-name/i.symbolMap/code file in the + * codesymbolMaps/code directory. * * @param permutationStrongName the GWT permutation strong name * @return a new {@link InputStream} -- http://groups.google.com/group/Google-Web-Toolkit-Contributors