Looks good with a few concerns. After we try this out, we should go back and make sure we're covering all of the use cases.
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); 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)) { 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(); 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); 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) { 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(); 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(); 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