LGTM One nit, one refactor request
http://gwt-code-reviews.appspot.com/722802/diff/15001/16001 File user/src/com/google/gwt/view/client/DefaultSelectionModel.java (right): http://gwt-code-reviews.appspot.com/722802/diff/15001/16001#newcode62 user/src/com/google/gwt/view/client/DefaultSelectionModel.java:62: resolveChanges(); Nice. I like how you wait until someone asks. http://gwt-code-reviews.appspot.com/722802/diff/15001/16003 File user/src/com/google/gwt/view/client/SelectionModel.java (right): http://gwt-code-reviews.appspot.com/722802/diff/15001/16003#newcode89 user/src/com/google/gwt/view/client/SelectionModel.java:89: if (getIsEventScheduled()) { nit: usually a boolean "getter" is simply named isFoo(), not getIsFoo(). Paired with setFoo, not setIsFoo http://gwt-code-reviews.appspot.com/722802/diff/15001/16003#newcode137 user/src/com/google/gwt/view/client/SelectionModel.java:137: GwtEvent<SelectionChangeHandler> { This should really be in its own file, with its handler interface nested in it: public class SelectionChangeEvent extends GwtEvent<SelectionChangeEvent.Handler> { interface Handler { } } Like that. If that's out of scope for this CL, can you circle back and do it soon? http://gwt-code-reviews.appspot.com/722802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors