[gwt-contrib] Partial commit towards making instance methods real. Merged the execution paths (issue726801)
Reviewers: Ray Ryan, Description: Partial commit towards making instance methods real. Merged the execution paths for the syncRequest and RequestObject. Patch by: amitmanjhi Review by: rjrjr (desk review) Please review this at http://gwt-code-reviews.appspot.com/726801/show Affected files: M bikeshed/src/com/google/gwt/sample/expenses/gwt/Scaffold.gwt.xml M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/ExpenseDetails.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/ExpenseList.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/ExpenseTree.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileExpenseDetails.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileExpenseEntry.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileExpenseList.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileReportEntry.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileReportList.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/Scaffold.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/request/EmployeeRequest.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ExpenseRequest.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ReportRequest.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/request/UserInformationRecord.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeDetailsActivity.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeEditActivity.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeEditView.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeListActivity.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportDetailsActivity.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportEditActivity.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportEditView.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportListActivity.java M dev/core/src/com/google/gwt/dev/jjs/impl/BuildTypeMap.java M user/src/com/google/gwt/app/place/AbstractRecordEditActivity.java M user/src/com/google/gwt/app/place/AbstractRecordListActivity.java M user/src/com/google/gwt/app/place/RecordEditView.java M user/src/com/google/gwt/requestfactory/client/RequestFactoryLogHandler.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractDoubleRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractIntegerRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonListRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonObjectRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractLongRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java A user/src/com/google/gwt/requestfactory/client/impl/AbstractVoidRequest.java A user/src/com/google/gwt/requestfactory/client/impl/DeltaValueStore.java A user/src/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImpl.java A user/src/com/google/gwt/requestfactory/client/impl/RecordKey.java M user/src/com/google/gwt/requestfactory/client/impl/RequestFactoryJsonImpl.java A user/src/com/google/gwt/requestfactory/client/impl/ValueStoreJsonImpl.java M user/src/com/google/gwt/requestfactory/rebind/RequestFactoryGenerator.java A user/src/com/google/gwt/requestfactory/shared/Instance.java M user/src/com/google/gwt/requestfactory/shared/Receiver.java M user/src/com/google/gwt/requestfactory/shared/RecordListRequest.java M user/src/com/google/gwt/requestfactory/shared/RecordRequest.java M user/src/com/google/gwt/requestfactory/shared/RequestFactory.java D user/src/com/google/gwt/requestfactory/shared/SyncRequest.java D user/src/com/google/gwt/valuestore/client/DeltaValueStoreJsonImpl.java D user/src/com/google/gwt/valuestore/client/RecordKey.java D user/src/com/google/gwt/valuestore/client/ValueStoreJsonImpl.java D user/src/com/google/gwt/valuestore/shared/DeltaValueStore.java M user/src/com/google/gwt/valuestore/shared/SyncResult.java M user/src/com/google/gwt/valuestore/shared/ValueStore.java A user/test/com/google/gwt/requestfactory/RequestFactoryTest.gwt.xml A user/test/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImplTest.java M user/test/com/google/gwt/valuestore/ValueStoreSuite.java D user/test/com/google/gwt/valuestore/ValueStoreTest.gwt.xml D user/test/com/google/gwt/valuestore/client/DeltaValueStoreJsonImplTest.java M user/test/com/google/gwt/valuestore/shared/impl/RecordJsoImplTest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Split LogManager class into an set of Impl classes so that any LogManager calls (issue638802)
LGTM http://gwt-code-reviews.appspot.com/638802/diff/1/2 File user/src/com/google/gwt/logging/LogImpl.gwt.xml (right): http://gwt-code-reviews.appspot.com/638802/diff/1/2#newcode11 user/src/com/google/gwt/logging/LogImpl.gwt.xml:11: replace-with class=com.google.gwt.logging.impl.LogManagerImplRegular correct indentation http://gwt-code-reviews.appspot.com/638802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add two new ClientBundle annotations: (issue714801)
http://gwt-code-reviews.appspot.com/714801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] No longer require RPCs to contain a 'Content-Length' HTTP request header, thus (issue727801)
Reviewers: jat, Description: No longer require RPCs to contain a 'Content-Length' HTTP request header, thus enabling support for XHR with 'Transfer-Encoding: Chunked'. Review by: j...@google.com Please review this at http://gwt-code-reviews.appspot.com/727801/show Affected files: M user/src/com/google/gwt/user/server/rpc/RPCServletUtils.java M user/test/com/google/gwt/user/server/rpc/RPCServletUtilsTest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Partial commit towards making instance methods real. Merged the execution paths (issue726801)
LGTM On Wed, Jul 28, 2010 at 6:19 PM, amitman...@google.com wrote: Reviewers: Ray Ryan, Description: Partial commit towards making instance methods real. Merged the execution paths for the syncRequest and RequestObject. Patch by: amitmanjhi Review by: rjrjr (desk review) Please review this at http://gwt-code-reviews.appspot.com/726801/show Affected files: M bikeshed/src/com/google/gwt/sample/expenses/gwt/Scaffold.gwt.xml M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/ExpenseDetails.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/ExpenseList.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/ExpenseTree.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileExpenseDetails.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileExpenseEntry.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileExpenseList.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileReportEntry.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileReportList.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/Scaffold.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/request/EmployeeRequest.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ExpenseRequest.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ReportRequest.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/request/UserInformationRecord.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeDetailsActivity.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeEditActivity.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeEditView.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeListActivity.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportDetailsActivity.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportEditActivity.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportEditView.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportListActivity.java M dev/core/src/com/google/gwt/dev/jjs/impl/BuildTypeMap.java M user/src/com/google/gwt/app/place/AbstractRecordEditActivity.java M user/src/com/google/gwt/app/place/AbstractRecordListActivity.java M user/src/com/google/gwt/app/place/RecordEditView.java M user/src/com/google/gwt/requestfactory/client/RequestFactoryLogHandler.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractDoubleRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractIntegerRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonListRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonObjectRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractLongRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java A user/src/com/google/gwt/requestfactory/client/impl/AbstractVoidRequest.java A user/src/com/google/gwt/requestfactory/client/impl/DeltaValueStore.java A user/src/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImpl.java A user/src/com/google/gwt/requestfactory/client/impl/RecordKey.java M user/src/com/google/gwt/requestfactory/client/impl/RequestFactoryJsonImpl.java A user/src/com/google/gwt/requestfactory/client/impl/ValueStoreJsonImpl.java M user/src/com/google/gwt/requestfactory/rebind/RequestFactoryGenerator.java A user/src/com/google/gwt/requestfactory/shared/Instance.java M user/src/com/google/gwt/requestfactory/shared/Receiver.java M user/src/com/google/gwt/requestfactory/shared/RecordListRequest.java M user/src/com/google/gwt/requestfactory/shared/RecordRequest.java M user/src/com/google/gwt/requestfactory/shared/RequestFactory.java D user/src/com/google/gwt/requestfactory/shared/SyncRequest.java D user/src/com/google/gwt/valuestore/client/DeltaValueStoreJsonImpl.java D user/src/com/google/gwt/valuestore/client/RecordKey.java D user/src/com/google/gwt/valuestore/client/ValueStoreJsonImpl.java D user/src/com/google/gwt/valuestore/shared/DeltaValueStore.java M user/src/com/google/gwt/valuestore/shared/SyncResult.java M user/src/com/google/gwt/valuestore/shared/ValueStore.java A user/test/com/google/gwt/requestfactory/RequestFactoryTest.gwt.xml A user/test/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImplTest.java M user/test/com/google/gwt/valuestore/ValueStoreSuite.java D user/test/com/google/gwt/valuestore/ValueStoreTest.gwt.xml D user/test/com/google/gwt/valuestore/client/DeltaValueStoreJsonImplTest.java M user/test/com/google/gwt/valuestore/shared/impl/RecordJsoImplTest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: No longer require RPCs to contain a 'Content-Length' HTTP request header, thus (issue727801)
http://gwt-code-reviews.appspot.com/727801/diff/1/2 File user/src/com/google/gwt/user/server/rpc/RPCServletUtils.java (right): http://gwt-code-reviews.appspot.com/727801/diff/1/2#newcode183 user/src/com/google/gwt/user/server/rpc/RPCServletUtils.java:183: int byteCount = in.read(buffer); Does this work as expected when there is pipelining or connetion keep-alives? http://gwt-code-reviews.appspot.com/727801/diff/1/3 File user/test/com/google/gwt/user/server/rpc/RPCServletUtilsTest.java (left): http://gwt-code-reviews.appspot.com/727801/diff/1/3#oldcode61 user/test/com/google/gwt/user/server/rpc/RPCServletUtilsTest.java:61: if (name.toLowerCase().equals(Content-Type)) { Why is content-type no longer needed? http://gwt-code-reviews.appspot.com/727801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add two new ClientBundle annotations: (issue714801)
LGTM with minor changes. http://gwt-code-reviews.appspot.com/714801/diff/10001/11001 File user/src/com/google/gwt/resources/client/DataResource.java (right): http://gwt-code-reviews.appspot.com/714801/diff/10001/11001#newcode41 user/src/com/google/gwt/resources/client/DataResource.java:41: public @interface DoNotEmbed { Make both of these annotations @Documented, since they'll affect the behavior of the resource. http://gwt-code-reviews.appspot.com/714801/diff/10001/11002 File user/src/com/google/gwt/resources/ext/ResourceContext.java (right): http://gwt-code-reviews.appspot.com/714801/diff/10001/11002#newcode89 user/src/com/google/gwt/resources/ext/ResourceContext.java:89: String deploy(URL resource, String mimeType, boolean xhrCompatible) Rename the xhrCompatible parameter to forceExternal and update the JavaDoc to match. http://gwt-code-reviews.appspot.com/714801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Begin to convert DynaTableRF sample to using UiBinder. (issue698802)
http://gwt-code-reviews.appspot.com/698802/diff/1/5 File samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DayFilterWidget.ui.xml (right): http://gwt-code-reviews.appspot.com/698802/diff/1/5#newcode17 samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DayFilterWidget.ui.xml:17: field=calendar/ui:with This is temporary. The DayCheckBoxes won't need a reference to the calendar at all once I get the event stuff wired up. http://gwt-code-reviews.appspot.com/698802/diff/1/7 File samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableRf.ui.xml (right): http://gwt-code-reviews.appspot.com/698802/diff/1/7#newcode18 samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableRf.ui.xml:18: g:DockLayoutPanel unit=EX On 2010/07/28 21:38:38, Ray Ryan wrote: Pretty sure you want EM, not EX. Here and elsewhere. I need vertical standoff; the x-height of the font is a more relevant metric than the m-width. http://gwt-code-reviews.appspot.com/698802/diff/1/7#newcode24 samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableRf.ui.xml:24: dt:DayFilterWidget ui:field=filter / This mess is temporary, the next patch will disentangle all of the cross-references by using an event bus to better isolate the widgets. http://gwt-code-reviews.appspot.com/698802/diff/1/8 File samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableWidget.java (right): http://gwt-code-reviews.appspot.com/698802/diff/1/8#newcode57 samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableWidget.java:57: this)); On 2010/07/28 21:38:38, Ray Ryan wrote: Easier to read if you put the NavBarBinder in a convenience variable. Don't need the crazy param type arg that way. NavBarBinder navBarBinder = GWT.create(NavBarBinder.class); Done. http://gwt-code-reviews.appspot.com/698802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds Java classes for JSON serialization/deserialization to complement (issue696801)
On 2010/07/19 14:26:03, zundel wrote: Thanks for all the feedback. My responses to the comments from the Rays, Thomas, John and Scott: - We need functionality in the compiler to create JSON output to create a performance analysis tool. We are just using JSON as an exported data format, so being able to serialize a POJO isn't a big win for this application. - This library is very lightweight, that's another reason we chose it. - We can also import it directly into GWT instead of pulling in another third party dependency into the compiler. - Currently it is possible, yet awkward to share code between the dev library (compiler) and the user library. - It might be a good model for sharing across client and server, but there are some interesting design considerations. It will take care and thorough review to get that right if we are going to promote this as a replacement for the existing JSON API. -Eric. Got LGTM through email, committed last week. http://gwt-code-reviews.appspot.com/696801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: First pass at keyboard navigation (currently only for CellTable) (issue710802)
http://gwt-code-reviews.appspot.com/710802/diff/1/3 File user/src/com/google/gwt/cell/client/Cell.java (right): http://gwt-code-reviews.appspot.com/710802/diff/1/3#newcode71 user/src/com/google/gwt/cell/client/Cell.java:71: boolean isEditing(Element element, Object key); Good idea. On 2010/07/28 21:50:38, jlabanca wrote: I think we should also pass the value for consistency. http://gwt-code-reviews.appspot.com/710802/diff/1/5 File user/src/com/google/gwt/cell/client/EditTextCell.java (right): http://gwt-code-reviews.appspot.com/710802/diff/1/5#newcode221 user/src/com/google/gwt/cell/client/EditTextCell.java:221: if (keypress.equals(type)) { It seems to work fine. On 2010/07/28 21:50:38, jlabanca wrote: Please double check that the new value is set in the input box on keypress. I'm pretty sure you have to wait for keyup before the value actually changes. http://gwt-code-reviews.appspot.com/710802/diff/1/9 File user/src/com/google/gwt/user/cellview/client/CellTable.java (right): http://gwt-code-reviews.appspot.com/710802/diff/1/9#newcode527 user/src/com/google/gwt/user/cellview/client/CellTable.java:527: focusable.focus(); I deleted this whole block. Now cell (0, 0) is made focusable on table initialization. On 2010/07/28 21:50:38, jlabanca wrote: Don't focus in the constructor. http://gwt-code-reviews.appspot.com/710802/diff/1/9#newcode547 user/src/com/google/gwt/user/cellview/client/CellTable.java:547: Event.KEYEVENTS); O.K. On 2010/07/28 21:50:38, jlabanca wrote: Sinking events is surprisingly costly. It looks like you only need to sink ONKEYPRESS instead of all KEYEVENTS. http://gwt-code-reviews.appspot.com/710802/diff/1/9#newcode682 user/src/com/google/gwt/user/cellview/client/CellTable.java:682: if (keypress.equals(eventType) !cellIsEditing) { Done. On 2010/07/28 21:50:38, jlabanca wrote: Can you move this above the eventTarget stuff? http://gwt-code-reviews.appspot.com/710802/diff/1/9#newcode757 user/src/com/google/gwt/user/cellview/client/CellTable.java:757: view.setFocus(); I'll focus if the cell was editing prior to the event and is no longer editing following the event. On 2010/07/28 21:50:38, jlabanca wrote: Do you always want to focus here if the cell isn't editing? What about an image load event? http://gwt-code-reviews.appspot.com/710802/diff/1/12 File user/src/com/google/gwt/user/cellview/client/PagingListViewPresenter.java (right): http://gwt-code-reviews.appspot.com/710802/diff/1/12#newcode486 user/src/com/google/gwt/user/cellview/client/PagingListViewPresenter.java:486: view.setFocus(); The intent of the method is to give the implementor a chance to grab focus where appropriate. It's up to the implementor to decide if they actually want focus. Basically the widget may have just been re-rendered, so the new DOM has just come into existence and this is the time to call focus() on some appropriate element if focus is desired. On 2010/07/28 21:50:38, jlabanca wrote: I don't think we should always steal focus and give it to the view. We should probably only update focus if the table already had focus. http://gwt-code-reviews.appspot.com/710802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Begin to convert DynaTableRF sample to using UiBinder. (issue698802)
LGTM On Thu, Jul 29, 2010 at 6:22 AM, b...@google.com wrote: http://gwt-code-reviews.appspot.com/698802/diff/1/5 File samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DayFilterWidget.ui.xml (right): http://gwt-code-reviews.appspot.com/698802/diff/1/5#newcode17 samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DayFilterWidget.ui.xml:17: field=calendar/ui:with This is temporary. The DayCheckBoxes won't need a reference to the calendar at all once I get the event stuff wired up. http://gwt-code-reviews.appspot.com/698802/diff/1/7 File samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableRf.ui.xml (right): http://gwt-code-reviews.appspot.com/698802/diff/1/7#newcode18 samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableRf.ui.xml:18: g:DockLayoutPanel unit=EX On 2010/07/28 21:38:38, Ray Ryan wrote: Pretty sure you want EM, not EX. Here and elsewhere. I need vertical standoff; the x-height of the font is a more relevant metric than the m-width. http://gwt-code-reviews.appspot.com/698802/diff/1/7#newcode24 samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableRf.ui.xml:24: dt:DayFilterWidget ui:field=filter / This mess is temporary, the next patch will disentangle all of the cross-references by using an event bus to better isolate the widgets. http://gwt-code-reviews.appspot.com/698802/diff/1/8 File samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableWidget.java (right): http://gwt-code-reviews.appspot.com/698802/diff/1/8#newcode57 samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableWidget.java:57: this)); On 2010/07/28 21:38:38, Ray Ryan wrote: Easier to read if you put the NavBarBinder in a convenience variable. Don't need the crazy param type arg that way. NavBarBinder navBarBinder = GWT.create(NavBarBinder.class); Done. http://gwt-code-reviews.appspot.com/698802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Hard coded History integration for the Scaffold app. This is step zero (issue717801)
http://gwt-code-reviews.appspot.com/717801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Hard coded History integration for the Scaffold app. This is step zero (issue717801)
Still not ready for review, just sharing the progress. Activities no longer have to clean up any event handlers they register, and ActivityManger should be exception proof. http://gwt-code-reviews.appspot.com/717801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] Ensure bridgeMethods is initialized, even when constructed from other subtypes, such as MissingT... (issue708802)
LGTM -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Optimize ResourceOracle Refresh by removing some archaic guarantees and some other peephole opti... (issue728801)
Reviewers: scottb, Description: Optimize ResourceOracle Refresh by removing some archaic guarantees and some other peephole optimizations R: scottb Please review this at http://gwt-code-reviews.appspot.com/728801/show Affected files: M dev/core/src/com/google/gwt/dev/cfg/ModuleDef.java D dev/core/src/com/google/gwt/dev/cfg/PublicOracle.java M dev/core/src/com/google/gwt/dev/resource/ResourceOracle.java M dev/core/src/com/google/gwt/dev/resource/impl/AbstractResource.java M dev/core/src/com/google/gwt/dev/resource/impl/DirectoryClassPathEntry.java M dev/core/src/com/google/gwt/dev/resource/impl/FileResource.java M dev/core/src/com/google/gwt/dev/resource/impl/ResourceOracleImpl.java M dev/core/src/com/google/gwt/dev/resource/impl/ZipFileClassPathEntry.java M dev/core/src/com/google/gwt/dev/resource/impl/ZipFileResource.java M dev/core/test/com/google/gwt/dev/resource/impl/AbstractResourceOrientedTestBase.java M dev/core/test/com/google/gwt/dev/resource/impl/FileResourceTest.java M dev/core/test/com/google/gwt/dev/resource/impl/MockAbstractResource.java M dev/core/test/com/google/gwt/dev/resource/impl/ResourceOracleImplRealClasspathTest.java M dev/core/test/com/google/gwt/dev/resource/impl/ResourceOracleImplTest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Optimize ResourceOracle Refresh by removing some archaic guarantees and some other peephole opti... (issue728801)
(rebase from superdevmode) http://gwt-code-reviews.appspot.com/728801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add two new ClientBundle annotations: (issue714801)
http://gwt-code-reviews.appspot.com/714801/diff/10001/11001 File user/src/com/google/gwt/resources/client/DataResource.java (right): http://gwt-code-reviews.appspot.com/714801/diff/10001/11001#newcode41 user/src/com/google/gwt/resources/client/DataResource.java:41: public @interface DoNotEmbed { On 2010/07/29 13:19:36, bobv wrote: Make both of these annotations @Documented, since they'll affect the behavior of the resource. Done. http://gwt-code-reviews.appspot.com/714801/diff/10001/11002 File user/src/com/google/gwt/resources/ext/ResourceContext.java (right): http://gwt-code-reviews.appspot.com/714801/diff/10001/11002#newcode89 user/src/com/google/gwt/resources/ext/ResourceContext.java:89: String deploy(URL resource, String mimeType, boolean xhrCompatible) On 2010/07/29 13:19:36, bobv wrote: Rename the xhrCompatible parameter to forceExternal and update the JavaDoc to match. Done. http://gwt-code-reviews.appspot.com/714801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Optimize ResourceOracle Refresh by removing some archaic guarantees and some other peephole opti... (issue728801)
LGTM http://gwt-code-reviews.appspot.com/728801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Optimize ResourceOracle Refresh by removing some archaic guarantees and some other peephole opti... (issue728801)
Nit: http://gwt-code-reviews.appspot.com/728801/diff/1/2 File dev/core/src/com/google/gwt/dev/cfg/ModuleDef.java (right): http://gwt-code-reviews.appspot.com/728801/diff/1/2#newcode125 dev/core/src/com/google/gwt/dev/cfg/ModuleDef.java:125: private final Styles styles = new Styles();; Extra semi crept in here. http://gwt-code-reviews.appspot.com/728801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Split LogManager class into an set of Impl classes so that any LogManager calls (issue638802)
http://gwt-code-reviews.appspot.com/638802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Split LogManager class into an set of Impl classes so that any LogManager calls (issue638802)
http://gwt-code-reviews.appspot.com/638802/diff/1/2 File user/src/com/google/gwt/logging/LogImpl.gwt.xml (right): http://gwt-code-reviews.appspot.com/638802/diff/1/2#newcode11 user/src/com/google/gwt/logging/LogImpl.gwt.xml:11: replace-with class=com.google.gwt.logging.impl.LogManagerImplRegular On 2010/07/29 05:06:29, fredsa wrote: correct indentation Done. http://gwt-code-reviews.appspot.com/638802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Remove bogus @SuppressWarnings that eclipse wanted (issue729801)
Reviewers: tobyr, Description: Remove bogus @SuppressWarnings that eclipse wanted Review by: to...@google.com Please review this at http://gwt-code-reviews.appspot.com/729801/show Affected files: M dev/core/src/com/google/gwt/dev/jjs/impl/BuildTypeMap.java Index: dev/core/src/com/google/gwt/dev/jjs/impl/BuildTypeMap.java === --- dev/core/src/com/google/gwt/dev/jjs/impl/BuildTypeMap.java (revision 8437) +++ dev/core/src/com/google/gwt/dev/jjs/impl/BuildTypeMap.java (working copy) @@ -478,7 +478,6 @@ this.jsFunction = jsFunction; } -@SuppressWarnings(unchecked) @Override public void resolve(JsNameRef x) { // Only resolve unqualified names @@ -1052,4 +1051,4 @@ forEachExternalType(bindings, new ExternalTypeCreator()); forEachExternalType(bindings, new ExternalTypeResolver()); } -} \ No newline at end of file +} -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Remove bogus @SuppressWarnings that eclipse wanted (issue729801)
LGTM http://gwt-code-reviews.appspot.com/729801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Adds a new CrossSiteIframeLinker. This linker works cross-site, (issue726802)
Reviewers: jgw, Description: Adds a new CrossSiteIframeLinker. This linker works cross-site, because it uses a script tag to download code instead of XHR. However, like the iframe linker, it still uses an iframe to hold all the installed code. Review by: j...@google.com Please review this at http://gwt-code-reviews.appspot.com/726802/show Affected files: A dev/core/src/com/google/gwt/core/linker/CrossSiteIframeLinker.java A dev/core/src/com/google/gwt/core/linker/CrossSiteIframeTemplate.js M user/src/com/google/gwt/core/Core.gwt.xml A user/src/com/google/gwt/core/CrossSiteIframeLinker.gwt.xml A user/src/com/google/gwt/core/client/impl/CrossSiteIframeLoadingStrategy.java A user/test/com/google/gwt/core/ext/CrossSiteIframeLinkerTest.gwt.xml M user/test/com/google/gwt/core/ext/LinkerSuite.java A user/test/com/google/gwt/core/ext/test/CrossSiteIframeLinkerTest.java A user/test/com/google/gwt/dev/jjs/CompilerSuiteCrossSiteIframe.gwt.xml A user/test/com/google/gwt/dev/jjs/CrossSiteIframeRunAsyncFailure.gwt.xml A user/test/com/google/gwt/dev/jjs/CrossSiteIframeRunAsyncMetrics.gwt.xml A user/test/com/google/gwt/dev/jjs/CrossSiteIframeRunAsyncSuite.java A user/test/com/google/gwt/dev/jjs/test/CrossSiteIframeRunAsyncFailureTest.java A user/test/com/google/gwt/dev/jjs/test/CrossSiteIframeRunAsyncMetricsTest.java A user/test/com/google/gwt/dev/jjs/test/CrossSiteIframeRunAsyncTest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds a new CrossSiteIframeLinker. This linker works cross-site, (issue726802)
This is ready for review. It's almost the same as this change: http://gwt-code-reviews.appspot.com/726802 The only difference is that this patch makes a new linker rather than updating the XS linker in place. The contents of the new linker are the same as what was in the previous patch. http://gwt-code-reviews.appspot.com/726802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds a new CrossSiteIframeLinker. This linker works cross-site, (issue726802)
Err, make that the following issue: http://gwt-code-reviews.appspot.com/674802 http://gwt-code-reviews.appspot.com/726802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Lazily generate LocaleInfoImpl (rebase from superdevmode) (issue619807)
Reviewers: scottb, Description: Lazily generate LocaleInfoImpl (rebase from superdevmode) Review by: sco...@google.com Please review this at http://gwt-code-reviews.appspot.com/619807/show Affected files: M user/src/com/google/gwt/i18n/client/LocaleInfo.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Forgot to commit .classpath and .project for DynaTableRf due to (issue721802)
Reviewers: amitmanjhi, Description: Forgot to commit .classpath and .project for DynaTableRf due to .gitignore settings. Review by: amitman...@google.com Please review this at http://gwt-code-reviews.appspot.com/721802/show Affected files: A eclipse/samples/DynaTableRf/.classpath A eclipse/samples/DynaTableRf/.project Index: eclipse/samples/DynaTableRf/.classpath === --- eclipse/samples/DynaTableRf/.classpath (revision 0) +++ eclipse/samples/DynaTableRf/.classpath (revision 0) @@ -0,0 +1,8 @@ +?xml version=1.0 encoding=UTF-8? +classpath + classpathentry kind=src path=core/src/ + classpathentry kind=src output=war path=core/war/ + classpathentry kind=con path=org.eclipse.jdt.launching.JRE_CONTAINER/ + classpathentry combineaccessrules=false kind=src path=/gwt-user/ + classpathentry kind=output path=war/WEB-INF/classes/ +/classpath Index: eclipse/samples/DynaTableRf/.project === --- eclipse/samples/DynaTableRf/.project(revision 0) +++ eclipse/samples/DynaTableRf/.project(revision 0) @@ -0,0 +1,30 @@ +?xml version=1.0 encoding=UTF-8? +projectDescription + nameDynaTableRf/name + comment/comment + projects + /projects + buildSpec + buildCommand + nameorg.eclipse.jdt.core.javabuilder/name + arguments + /arguments + /buildCommand + buildCommand + namecom.atlassw.tools.eclipse.checkstyle.CheckstyleBuilder/name + arguments + /arguments + /buildCommand + /buildSpec + natures + natureorg.eclipse.jdt.core.javanature/nature + naturecom.atlassw.tools.eclipse.checkstyle.CheckstyleNature/nature + /natures + linkedResources + link + namecore/name + type2/type + locationURIGWT_ROOT/samples/dynatablerf/locationURI + /link + /linkedResources +/projectDescription -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8439 committed - Remove bogus @SuppressWarnings that eclipse wanted...
Revision: 8439 Author: rj...@google.com Date: Thu Jul 29 09:21:20 2010 Log: Remove bogus @SuppressWarnings that eclipse wanted Review at http://gwt-code-reviews.appspot.com/729801 Review by: to...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=8439 Modified: /trunk/dev/core/src/com/google/gwt/dev/jjs/impl/BuildTypeMap.java === --- /trunk/dev/core/src/com/google/gwt/dev/jjs/impl/BuildTypeMap.java Wed Jul 28 16:58:39 2010 +++ /trunk/dev/core/src/com/google/gwt/dev/jjs/impl/BuildTypeMap.java Thu Jul 29 09:21:20 2010 @@ -478,7 +478,6 @@ this.jsFunction = jsFunction; } -@SuppressWarnings(unchecked) @Override public void resolve(JsNameRef x) { // Only resolve unqualified names -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Forgot to commit .classpath and .project for DynaTableRf due to (issue721802)
LGTM On Thu, Jul 29, 2010 at 12:47 PM, rj...@google.com wrote: Reviewers: amitmanjhi, Description: Forgot to commit .classpath and .project for DynaTableRf due to .gitignore settings. Review by: amitman...@google.com Please review this at http://gwt-code-reviews.appspot.com/721802/show Affected files: A eclipse/samples/DynaTableRf/.classpath A eclipse/samples/DynaTableRf/.project Index: eclipse/samples/DynaTableRf/.classpath === --- eclipse/samples/DynaTableRf/.classpath (revision 0) +++ eclipse/samples/DynaTableRf/.classpath (revision 0) @@ -0,0 +1,8 @@ +?xml version=1.0 encoding=UTF-8? +classpath + classpathentry kind=src path=core/src/ + classpathentry kind=src output=war path=core/war/ + classpathentry kind=con path=org.eclipse.jdt.launching.JRE_CONTAINER/ + classpathentry combineaccessrules=false kind=src path=/gwt-user/ + classpathentry kind=output path=war/WEB-INF/classes/ +/classpath Index: eclipse/samples/DynaTableRf/.project === --- eclipse/samples/DynaTableRf/.project(revision 0) +++ eclipse/samples/DynaTableRf/.project(revision 0) @@ -0,0 +1,30 @@ +?xml version=1.0 encoding=UTF-8? +projectDescription + nameDynaTableRf/name + comment/comment + projects + /projects + buildSpec + buildCommand + nameorg.eclipse.jdt.core.javabuilder/name + arguments + /arguments + /buildCommand + buildCommand + namecom.atlassw.tools.eclipse.checkstyle.CheckstyleBuilder/name + arguments + /arguments + /buildCommand + /buildSpec + natures + natureorg.eclipse.jdt.core.javanature/nature + naturecom.atlassw.tools.eclipse.checkstyle.CheckstyleNature/nature + /natures + linkedResources + link + namecore/name + type2/type + locationURIGWT_ROOT/samples/dynatablerf/locationURI + /link + /linkedResources +/projectDescription -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] Phasing in a new, unified linker
On 2010-07-26, at 4:56 PM, John Tamplin wrote: Is the new linker designed to curtail extension, or to sanely encourage it? The existing primary linkers ended up getting extended in brittle ways. That's a good point. Let's make it a final class to start with, and open up extension points later as issues come up. There are no known needs for extensions at this point. Well, we do know there will be other linkers, and if there aren't extension points defined they will be done via cut-and-paste, which is what led to the current state we are in. I'd prefer if these classes weren't final, with a big warning that they may have breaking changes, even in minor revisions. I don't know if it's possible to predict every tweak that developers might want to make to the primary linker, but allowing a subclass to just specify a different template script certain covers a great deal of ground. With the current hybrid JS/Java approach to linking, I think it would be very difficult to properly support any extensibility. I think it might be possible to move the template JS files to GWT-translated code with extension points managed through rebinding and overriding. Until then, making changes that involve JS modifications effectively require you to cut and paste the whole file. Matt. -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds a new CrossSiteIframeLinker. This linker works cross-site, (issue726802)
[manually forwarding to list due to subscription bug...] Wow, this looks great. This is exactly what I had imagined. Once dev mode is in place we should be able to switch dotspots over to this from our current custom linker. I was looking through the latest SelectionScriptLinker in trunk and didn't see where __COMPUTE_SCRIPT_BASE__ was defined. Is that new? http://gwt-code-reviews.appspot.com/726802/diff/1/3 File dev/core/src/com/google/gwt/core/linker/CrossSiteIframeTemplate.js (right): http://gwt-code-reviews.appspot.com/726802/diff/1/3#newcode88 dev/core/src/com/google/gwt/core/linker/CrossSiteIframeTemplate.js:88: (query.indexOf('gwt.hybrid') == -1); Is it worth trimming the old gwt.hosted baggage from here? http://gwt-code-reviews.appspot.com/726802/diff/1/3#newcode110 dev/core/src/com/google/gwt/core/linker/CrossSiteIframeTemplate.js:110: scriptFrame.style.cssText = 'position:absolute; width:0; height:0; border:none'; These should probably be !important to avoid user CSS accidentally styling them. Also, left: -1000px and top: -1000px, since absolute by default will place them at the end of the document potentially causing sizing issues. http://gwt-code-reviews.appspot.com/726802/diff/1/3#newcode265 dev/core/src/com/google/gwt/core/linker/CrossSiteIframeTemplate.js:265: softPermutationId = Number(strongName.substring(idx + 1)); This code is probably from the older linker, but Number(x) can also be written as +(x). http://gwt-code-reviews.appspot.com/726802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] Phasing in a new, unified linker
I don't have a strong opinion about it. They can be non-final, with simply no particular effort to truly make them extensible. I think it might be possible to move the template JS files to GWT-translated code with extension points managed through rebinding and overriding. Until then, making changes that involve JS modifications effectively require you to cut and paste the whole file. There is now some templating, by the way. You asked about the __COMPUTE_SCRIPT_BASE__ reference. SelectionScriptLinker -- the base class for all the linkers in the subject line -- substitutes that string for the contents of computeScriptBase.js, a file included within gwt-user.jar. Thus, linkers that want the standard implementation of computeScriptBase() can simply include that string rather than copying the whole chunk of JS. Such templating is pretty limited even in principle, however, and in practice it's so far only done for that file and for one other one. Incidentally, you mention moving code into Java. That strategy actually came to pass for runAsync code fetching. Originally, linkers would emit a function that the code loader calls to download code. Now, there is a deferred binding, and the choice of linker causes the deferred binding choice to differ. Thus, code loaders are now simply Java classes that implement a simple Java interface. It's much easier to maintain. -Lex -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8441 committed - Refactoring to one top level class per .java file, since some...
Revision: 8441 Author: fabb...@google.com Date: Thu Jul 29 09:26:40 2010 Log: Refactoring to one top level class per .java file, since some tools don't understand more than that. Review by: jat Review at http://gwt-code-reviews.appspot.com/686801 http://code.google.com/p/google-web-toolkit/source/detail?r=8441 Added: /trunk/user/src/com/google/gwt/i18n/tools/ArgHandlerValueChooser.java /trunk/user/src/com/google/gwt/junit/ClassBatchingStrategy.java /trunk/user/src/com/google/gwt/junit/ModuleBatchingStrategy.java /trunk/user/src/com/google/gwt/junit/NoBatchingStrategy.java /trunk/user/src/com/google/gwt/junit/ParallelCompileStrategy.java /trunk/user/src/com/google/gwt/junit/PreCompileStrategy.java /trunk/user/src/com/google/gwt/junit/SimpleCompileStrategy.java Modified: /trunk/dev/core/super/com/google/gwt/lang/LongLibBase.java /trunk/dev/core/test/com/google/gwt/lang/LongLibTest.java /trunk/dev/core/test/com/google/gwt/lang/LongLibTestBase.java /trunk/user/src/com/google/gwt/i18n/tools/I18NSync.java /trunk/user/src/com/google/gwt/junit/BatchingStrategy.java /trunk/user/src/com/google/gwt/junit/CompileStrategy.java /trunk/user/super/com/google/gwt/emul/java/util/Arrays.java === --- /dev/null +++ /trunk/user/src/com/google/gwt/i18n/tools/ArgHandlerValueChooser.java Thu Jul 29 09:26:40 2010 @@ -0,0 +1,117 @@ +/* + * 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. + */ +package com.google.gwt.i18n.tools; + +import com.google.gwt.i18n.client.Constants; +import com.google.gwt.i18n.client.ConstantsWithLookup; +import com.google.gwt.i18n.client.Localizable; +import com.google.gwt.i18n.client.Messages; +import com.google.gwt.util.tools.ArgHandler; +import com.google.gwt.util.tools.ArgHandlerFlag; + +/** + * This class holds the '-createConstantsWithLookup' and '-createMessages' + * ArgHandler classes. It is shared by both I18NSync and I18NCreator classes. + * + * To use this class, call the getConstantsWithLookupArgHandler() + * and getMessagesArgHandler() methods and add the returned ArgHandler + * instances to a ToolBase registerHandler() method. When parsing the arguments + * is complete, you can retrieve the selected type by calling getArgValue(). + */ +class ArgHandlerValueChooser { + + private Class? extends Localizable argValue = Constants.class; + private ArgHandler cwlArgHandler; + private ArgHandler messagesArgHandler; + + /** + * Returns one on Messages.class, ConstantsWithLookup.class, or + * Constants.class depending on which argument handlers fired. + * + * @return A class literal, returns Constants.class by default. + */ + Class? extends Localizable getArgValue() { +return argValue; + } + + /** + * Retrieve the argument handler for -createConstantsWithLookup. + * + * @return a flag argument handler + */ + ArgHandler getConstantsWithLookupArgHandler() { +if (cwlArgHandler == null) { + cwlArgHandler = new ArgHandlerFlag() { + +@Override +public String getPurpose() { + return Create scripts for a ConstantsWithLookup interface + + rather than a Constants one; +} + +@Override +public String getTag() { + return -createConstantsWithLookup; +} + +@Override +public boolean setFlag() { + if (argValue == Messages.class) { +System.err.println(-createMessages cannot be used with -createConstantsWithLookup); +return false; + } + argValue = ConstantsWithLookup.class; + return true; +} + }; +} +return cwlArgHandler; + } + + /** + * Retrieves the -createMessages argument handler. + * + * @return a flag argument handler + */ + ArgHandler getMessagesArgHandler() { +if (messagesArgHandler == null) { + messagesArgHandler = new ArgHandlerFlag() { + +@Override +public String getPurpose() { + return Create scripts for a Messages interface + + rather than a Constants one; +} + +@Override +public String getTag() { + return -createMessages; +} + +@Override +public boolean setFlag() { + if (argValue == ConstantsWithLookup.class) { +System.err.println(-createMessages cannot be used with -createConstantsWithLookup); +return false; + } +
[gwt-contrib] [google-web-toolkit] r8442 committed - Forgot to commit .classpath and .project for DynaTableRf due to...
Revision: 8442 Author: rj...@google.com Date: Thu Jul 29 09:50:39 2010 Log: Forgot to commit .classpath and .project for DynaTableRf due to .gitignore settings. Review at http://gwt-code-reviews.appspot.com/721802 Review by: amitman...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=8442 Added: /trunk/eclipse/samples/DynaTableRf/.classpath /trunk/eclipse/samples/DynaTableRf/.project === --- /dev/null +++ /trunk/eclipse/samples/DynaTableRf/.classpath Thu Jul 29 09:50:39 2010 @@ -0,0 +1,8 @@ +?xml version=1.0 encoding=UTF-8? +classpath + classpathentry kind=src path=core/src/ + classpathentry kind=src output=war path=core/war/ + classpathentry kind=con path=org.eclipse.jdt.launching.JRE_CONTAINER/ + classpathentry combineaccessrules=false kind=src path=/gwt-user/ + classpathentry kind=output path=war/WEB-INF/classes/ +/classpath === --- /dev/null +++ /trunk/eclipse/samples/DynaTableRf/.project Thu Jul 29 09:50:39 2010 @@ -0,0 +1,30 @@ +?xml version=1.0 encoding=UTF-8? +projectDescription + nameDynaTableRf/name + comment/comment + projects + /projects + buildSpec + buildCommand + nameorg.eclipse.jdt.core.javabuilder/name + arguments + /arguments + /buildCommand + buildCommand + namecom.atlassw.tools.eclipse.checkstyle.CheckstyleBuilder/name + arguments + /arguments + /buildCommand + /buildSpec + natures + natureorg.eclipse.jdt.core.javanature/nature + naturecom.atlassw.tools.eclipse.checkstyle.CheckstyleNature/nature + /natures + linkedResources + link + namecore/name + type2/type + locationURIGWT_ROOT/samples/dynatablerf/locationURI + /link + /linkedResources +/projectDescription -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Hard coded History integration for the Scaffold app. This is step zero (issue717801)
http://gwt-code-reviews.appspot.com/717801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: No longer require RPCs to contain a 'Content-Length' HTTP request header, thus (issue727801)
Thanks, Chris. I'll plan a separate patch for that. http://gwt-code-reviews.appspot.com/727801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: No longer require RPCs to contain a 'Content-Length' HTTP request header, thus (issue727801)
http://gwt-code-reviews.appspot.com/727801/diff/1/2 File user/src/com/google/gwt/user/server/rpc/RPCServletUtils.java (right): http://gwt-code-reviews.appspot.com/727801/diff/1/2#newcode183 user/src/com/google/gwt/user/server/rpc/RPCServletUtils.java:183: int byteCount = in.read(buffer); The javadoc says it does. I/O is block if no bytes ready. -1 is only returned at end of stream http://gwt-code-reviews.appspot.com/727801/diff/1/3 File user/test/com/google/gwt/user/server/rpc/RPCServletUtilsTest.java (left): http://gwt-code-reviews.appspot.com/727801/diff/1/3#oldcode61 user/test/com/google/gwt/user/server/rpc/RPCServletUtilsTest.java:61: if (name.toLowerCase().equals(Content-Type)) { On 2010/07/29 08:11:57, jat wrote: Why is content-type no longer needed? Because it's never used. RPCServletUtils calls getContentType(), the method on line 55 above, rather than getHeader(Content-Type). http://gwt-code-reviews.appspot.com/727801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add two new ClientBundle annotations: (issue714801)
http://gwt-code-reviews.appspot.com/714801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8443 committed - Re-introduces UiBinder parser for AbsolutePanel, now backward...
Revision: 8443 Author: gwt.mirror...@gmail.com Date: Thu Jul 29 11:09:15 2010 Log: Re-introduces UiBinder parser for AbsolutePanel, now backward compatible. Restores work introduced at r8430, rolled back at r8432. Patch by konstantin.scheg...@gmail.com Review by rj...@google.com http://gwt-code-reviews.appspot.com/715802 Review by: robertvaw...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=8443 Added: /trunk/user/src/com/google/gwt/uibinder/elementparsers/AbsolutePanelParser.java /trunk/user/test/com/google/gwt/uibinder/elementparsers/AbsolutePanelParserTest.java Modified: /trunk/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java /trunk/user/src/com/google/gwt/user/client/ui/AbsolutePanel.java /trunk/user/src/com/google/gwt/user/client/ui/LayoutPanel.java /trunk/user/test/com/google/gwt/uibinder/UiBinderJreSuite.java /trunk/user/test/com/google/gwt/uibinder/rebind/DesignTimeUtilsTest.java /trunk/user/test/com/google/gwt/uibinder/test/UiJavaResources.java /trunk/user/test/com/google/gwt/uibinder/test/client/UiBinderTest.java /trunk/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.java /trunk/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.ui.xml === --- /dev/null +++ /trunk/user/src/com/google/gwt/uibinder/elementparsers/AbsolutePanelParser.java Thu Jul 29 11:09:15 2010 @@ -0,0 +1,71 @@ +/* + * 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.uibinder.elementparsers; + +import com.google.gwt.core.ext.UnableToCompleteException; +import com.google.gwt.core.ext.typeinfo.JClassType; +import com.google.gwt.uibinder.rebind.UiBinderWriter; +import com.google.gwt.uibinder.rebind.XMLElement; + +/** + * Parses {...@link com.google.gwt.user.client.ui.AbsolutePanel AbsolutePanel} + * widgets. + */ +public class AbsolutePanelParser implements ElementParser { + + private static final String AT = at; + + public void parse(XMLElement elem, String fieldName, JClassType type, + UiBinderWriter writer) throws UnableToCompleteException { + +// Parse children. +for (XMLElement child : elem.consumeChildElements()) { + // Parse position element. + if (isPositionElement(elem, child)) { +// Parse position. +String left = child.consumeRequiredIntAttribute(left); +String top = child.consumeRequiredIntAttribute(top); +// Add child widget. +XMLElement widgetElem = child.consumeSingleChildElement(); +String widgetFieldName = writer.parseElementToField(widgetElem); +writer.addStatement(%1$s.add(%2$s, %3$s, %4$s);, fieldName, +widgetFieldName, left, top); +continue; + } + + // Parse Widget. + if (writer.isWidgetElement(child)) { +String widgetFieldName = writer.parseElementToField(child); +writer.addStatement(%1$s.add(%2$s);, fieldName, widgetFieldName); +continue; + } + + // die + writer.die(child, Expecting only %s:%s or widget children in %s, + elem.getPrefix(), AT, elem); +} + } + + private boolean isPositionElement(XMLElement parent, XMLElement child) { +if (!parent.getNamespaceUri().equals(child.getNamespaceUri())) { + return false; +} +if (!AT.equals(child.getLocalName())) { + return false; +} +return true; + } +} === --- /dev/null +++ /trunk/user/test/com/google/gwt/uibinder/elementparsers/AbsolutePanelParserTest.java Thu Jul 29 11:09:15 2010 @@ -0,0 +1,118 @@ +/* + * 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.uibinder.elementparsers; + +import com.google.gwt.core.ext.UnableToCompleteException; + +import junit.framework.TestCase; + +import java.util.Iterator; + +/** + * Test for {...@link AbsolutePanelParser}. + */ +public class
[gwt-contrib] DynatableRf refactoring in response to http://code.google.com/p/google-web-toolkit/source/detail... (issue674803)
Reviewers: Ray Ryan, Description: DynatableRf refactoring in response to http://code.google.com/p/google-web-toolkit/source/detail?r=8436 Patch by: amitmanjhi Review by: rjrjr Please review this at http://gwt-code-reviews.appspot.com/674803/show Affected files: M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/CalendarProvider.java M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java Index: samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/CalendarProvider.java === --- samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/CalendarProvider.java (revision 8442) +++ samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/CalendarProvider.java (working copy) @@ -16,10 +16,12 @@ package com.google.gwt.sample.dynatablerf.client; import com.google.gwt.requestfactory.shared.Receiver; +import com.google.gwt.sample.dynatablerf.shared.DynaTableRequestFactory; import com.google.gwt.sample.dynatablerf.shared.PersonProxy; -import com.google.gwt.sample.dynatablerf.shared.DynaTableRequestFactory; +import com.google.gwt.valuestore.shared.SyncResult; import java.util.List; +import java.util.Set; /** * A data provider that bridges the provides row level updates from the data @@ -57,18 +59,18 @@ // Fetch the data remotely. // - requests.schoolCalendarRequest().getPeople(startRow, maxRows).to(new ReceiverListPersonProxy() { + requests.schoolCalendarRequest().getPeople(startRow, maxRows).fire(new ReceiverListPersonProxy() { // TODO onError call RowDataAcceptor#fail, not yet provided by RF -public void onSuccess(ListPersonProxy response) { +public void onSuccess(ListPersonProxy response, SetSyncResult syncResults) { lastStartRow = startRow; lastMaxRows = maxRows; lastPeople = response.toArray(new PersonProxy[response.size()]); PersonProxy[] result = response.toArray(new PersonProxy[response.size()]); pushResults(acceptor, startRow, result); } - }).fire(); + }); } private void pushResults(RowDataAcceptor acceptor, int startRow, Index: samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java === --- samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java (revision 8442) +++ samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java (working copy) @@ -33,7 +33,7 @@ PropertyString description = new PropertyString(description, Description, String.class); PropertyString schedule = new PropertyString(schedule, Schedule, String.class); - public String getSchedule(); + String getSchedule(); String getDescription(); -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: DynatableRf refactoring in response to http://code.google.com/p/google-web-toolkit/source/detail... (issue674803)
LGTM http://gwt-code-reviews.appspot.com/674803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8444 committed - rollback of optimizations that caused problems for some projects...
Revision: 8444 Author: unn...@google.com Date: Thu Jul 29 12:27:21 2010 Log: rollback of optimizations that caused problems for some projects Review by: con...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=8444 Added: /trunk/dev/core/src/com/google/gwt/dev/cfg/PublicOracle.java Modified: /trunk/dev/core/src/com/google/gwt/dev/cfg/ModuleDef.java /trunk/dev/core/src/com/google/gwt/dev/resource/ResourceOracle.java /trunk/dev/core/src/com/google/gwt/dev/resource/impl/AbstractResource.java /trunk/dev/core/src/com/google/gwt/dev/resource/impl/DirectoryClassPathEntry.java /trunk/dev/core/src/com/google/gwt/dev/resource/impl/FileResource.java /trunk/dev/core/src/com/google/gwt/dev/resource/impl/ResourceOracleImpl.java /trunk/dev/core/src/com/google/gwt/dev/resource/impl/ZipFileClassPathEntry.java /trunk/dev/core/src/com/google/gwt/dev/resource/impl/ZipFileResource.java /trunk/dev/core/test/com/google/gwt/dev/resource/impl/AbstractResourceOrientedTestBase.java /trunk/dev/core/test/com/google/gwt/dev/resource/impl/FileResourceTest.java /trunk/dev/core/test/com/google/gwt/dev/resource/impl/MockAbstractResource.java /trunk/dev/core/test/com/google/gwt/dev/resource/impl/ResourceOracleImplRealClasspathTest.java /trunk/dev/core/test/com/google/gwt/dev/resource/impl/ResourceOracleImplTest.java === --- /dev/null +++ /trunk/dev/core/src/com/google/gwt/dev/cfg/PublicOracle.java Thu Jul 29 12:27:21 2010 @@ -0,0 +1,42 @@ +/* + * 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. + */ +package com.google.gwt.dev.cfg; + +import com.google.gwt.dev.resource.Resource; + +/** + * Abstracts the process of querying for public files. + * + * @deprecated with no replacement, just use {...@link ModuleDef} directly + */ +...@deprecated +public interface PublicOracle { + + /** + * Finds a file on the public path. + * + * @param partialPath a file path relative to the root of any public package + * @return the url of the file, or codenull/code if no such file exists + */ + Resource findPublicFile(String partialPath); + + /** + * Returns all available public files. + * + * @return an array containing the partial path to each available public file + */ + String[] getAllPublicFiles(); +} === --- /trunk/dev/core/src/com/google/gwt/dev/cfg/ModuleDef.java Thu Jul 29 09:26:14 2010 +++ /trunk/dev/core/src/com/google/gwt/dev/cfg/ModuleDef.java Thu Jul 29 12:27:21 2010 @@ -28,7 +28,6 @@ import com.google.gwt.dev.resource.impl.DefaultFilters; import com.google.gwt.dev.resource.impl.PathPrefix; import com.google.gwt.dev.resource.impl.PathPrefixSet; -import com.google.gwt.dev.resource.impl.ResourceFilter; import com.google.gwt.dev.resource.impl.ResourceOracleImpl; import com.google.gwt.dev.util.Empty; import com.google.gwt.dev.util.Util; @@ -52,13 +51,8 @@ * Represents a module specification. In principle, this could be built without * XML for unit tests. */ -public class ModuleDef { - - private static final ResourceFilter NON_JAVA_RESOURCES = new ResourceFilter() { -public boolean allows(String path) { - return !path.endsWith(.java) !path.endsWith(.class); -} - }; +...@suppresswarnings(deprecation) +public class ModuleDef implements PublicOracle { private static final ComparatorMap.EntryString, ? REV_NAME_CMP = new ComparatorMap.EntryString, ?() { public int compare(Map.EntryString, ? entry1, Map.EntryString, ? entry2) { @@ -121,7 +115,6 @@ private final MapString, String servletClassNamesByPath = new HashMapString, String(); private PathPrefixSet sourcePrefixSet = new PathPrefixSet(); - private final Styles styles = new Styles(); public ModuleDef(String name) { @@ -334,8 +327,8 @@ PathPrefixSet pathPrefixes = lazySourceOracle.getPathPrefixes(); PathPrefixSet newPathPrefixes = new PathPrefixSet(); for (PathPrefix pathPrefix : pathPrefixes.values()) { -newPathPrefixes.add(new PathPrefix(pathPrefix.getPrefix(), -NON_JAVA_RESOURCES, pathPrefix.shouldReroot())); +newPathPrefixes.add(new PathPrefix(pathPrefix.getPrefix(), null, +pathPrefix.shouldReroot())); } lazyResourcesOracle.setPathPrefixes(newPathPrefixes); lazyResourcesOracle.refresh(TreeLogger.NULL); === ---
[gwt-contrib] Ensure that we give createTempFile at least 3 characters for the prefix (issue699804)
Reviewers: Lex, Description: Ensure that we give createTempFile at least 3 characters for the prefix See: http://code.google.com/p/google-weab-toolkit/issues/detail?id=5178 Review by: sp...@google.com Please review this at http://gwt-code-reviews.appspot.com/699804/show Affected files: M dev/core/src/com/google/gwt/dev/util/Util.java Index: dev/core/src/com/google/gwt/dev/util/Util.java === --- dev/core/src/com/google/gwt/dev/util/Util.java (revision 8444) +++ dev/core/src/com/google/gwt/dev/util/Util.java (working copy) @@ -643,6 +643,10 @@ File tmpSrc; Throwable caught = null; try { + // The tempFile prefix must be at least 3 characters + while (typeName.length() 3) { +typeName = _ + typeName; + } tmpSrc = File.createTempFile(typeName, .java); writeStringAsFile(tmpSrc, source); String dumpPath = tmpSrc.getAbsolutePath(); -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8445 committed - DynatableRf refactoring in response to http://code.google.com/p/google...
Revision: 8445 Author: amitman...@google.com Date: Thu Jul 29 12:54:53 2010 Log: DynatableRf refactoring in response to http://code.google.com/p/google-web-toolkit/source/detail?r=8436 Patch by: amitmanjhi Review by: rjrjr Review at http://gwt-code-reviews.appspot.com/674803 http://code.google.com/p/google-web-toolkit/source/detail?r=8445 Modified: /trunk/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/CalendarProvider.java /trunk/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java === --- /trunk/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/CalendarProvider.java Fri Jul 23 15:42:40 2010 +++ /trunk/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/CalendarProvider.java Thu Jul 29 12:54:53 2010 @@ -16,10 +16,12 @@ package com.google.gwt.sample.dynatablerf.client; import com.google.gwt.requestfactory.shared.Receiver; -import com.google.gwt.sample.dynatablerf.shared.PersonProxy; import com.google.gwt.sample.dynatablerf.shared.DynaTableRequestFactory; +import com.google.gwt.sample.dynatablerf.shared.PersonProxy; +import com.google.gwt.valuestore.shared.SyncResult; import java.util.List; +import java.util.Set; /** * A data provider that bridges the provides row level updates from the data @@ -57,18 +59,18 @@ // Fetch the data remotely. // - requests.schoolCalendarRequest().getPeople(startRow, maxRows).to(new ReceiverListPersonProxy() { + requests.schoolCalendarRequest().getPeople(startRow, maxRows).fire(new ReceiverListPersonProxy() { // TODO onError call RowDataAcceptor#fail, not yet provided by RF -public void onSuccess(ListPersonProxy response) { +public void onSuccess(ListPersonProxy response, SetSyncResult syncResults) { lastStartRow = startRow; lastMaxRows = maxRows; lastPeople = response.toArray(new PersonProxy[response.size()]); PersonProxy[] result = response.toArray(new PersonProxy[response.size()]); pushResults(acceptor, startRow, result); } - }).fire(); + }); } private void pushResults(RowDataAcceptor acceptor, int startRow, === --- /trunk/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java Fri Jul 23 15:42:40 2010 +++ /trunk/samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java Thu Jul 29 12:54:53 2010 @@ -33,7 +33,7 @@ PropertyString description = new PropertyString(description, Description, String.class); PropertyString schedule = new PropertyString(schedule, Schedule, String.class); - public String getSchedule(); + String getSchedule(); String getDescription(); -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Implement ROO-933 and ROO-935. Handle java.lang.{Byte/Short/Character/Integer/Long/BigDecimal/Bi... (issue700802)
I cursorily looked at the patch. It looks good but it seems you forgot to upload the changes to the files in the bikeshed dir. I also had a few minor comments, noted below. Let me know when you update the complete patch. http://gwt-code-reviews.appspot.com/700802/diff/2001/3004 File user/src/com/google/gwt/requestfactory/client/impl/AbstractBigIntegerRequest.java (right): http://gwt-code-reviews.appspot.com/700802/diff/2001/3004#newcode42 user/src/com/google/gwt/requestfactory/client/impl/AbstractBigIntegerRequest.java:42: receiver.onSuccess(new BigDecimal(responseText).toBigInteger(), Use the BigInteger(String) constructor instead? http://gwt-code-reviews.appspot.com/700802/diff/2001/3008 File user/src/com/google/gwt/requestfactory/client/impl/AbstractEnumRequest.java (right): http://gwt-code-reviews.appspot.com/700802/diff/2001/3008#newcode46 user/src/com/google/gwt/requestfactory/client/impl/AbstractEnumRequest.java:46: for (E e : enumValues) { Lazily generate a map? If you don't want to do it in this CL, just add a TODO here. http://gwt-code-reviews.appspot.com/700802/diff/2001/3031 File user/test/com/google/gwt/valuestore/client/RequestFactoryTest.java (right): http://gwt-code-reviews.appspot.com/700802/diff/2001/3031#newcode43 user/test/com/google/gwt/valuestore/client/RequestFactoryTest.java:43: @Override Unnecessary @Override annotation http://gwt-code-reviews.appspot.com/700802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Change the way we include the User Auth files, keeping more of them (issue721803)
Reviewers: Ray Ryan, Description: Change the way we include the User Auth files, keeping more of them checked into GWT code rather than generated by roo Please review this at http://gwt-code-reviews.appspot.com/721803/show Affected files: M bikeshed/src/com/google/gwt/sample/expenses/gwt/client/Scaffold.java M bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ExpensesRequestFactory.java D bikeshed/src/com/google/gwt/sample/expenses/gwt/request/UserInformationRecord.java D bikeshed/src/com/google/gwt/sample/expenses/gwt/request/UserInformationRecordChanged.java D bikeshed/src/com/google/gwt/sample/expenses/gwt/request/UserInformationRequest.java M bikeshed/src/com/google/gwt/sample/expenses/server/domain/GaeUserInformation.java M user/src/com/google/gwt/requestfactory/client/LoginWidget.java M user/src/com/google/gwt/requestfactory/rebind/RequestFactoryGenerator.java M user/src/com/google/gwt/requestfactory/server/RequestFactoryServlet.java A user/src/com/google/gwt/requestfactory/server/UserInformation.java D user/src/com/google/gwt/requestfactory/server/UserInformationImpl.java M user/src/com/google/gwt/requestfactory/shared/LoggingRequest.java M user/src/com/google/gwt/requestfactory/shared/RequestFactory.java D user/src/com/google/gwt/requestfactory/shared/UserInformation.java A user/src/com/google/gwt/requestfactory/shared/UserInformationRecord.java A user/src/com/google/gwt/requestfactory/shared/UserInformationRecordChanged.java A user/src/com/google/gwt/requestfactory/shared/UserInformationRequest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors