It appears that in AbstractEditorDelegate.initialize(String, T, E, DelegateMap), the object of type T has ensureMutable(T) called on it, and the value is passed then into setObject(T). It seems to be assumed then that the original parameter object is mutable, as it is passed into LeafValueEditor.setValue(T) at line 255. In the case of the CellTable, which is hooked into the editor framework using the HasDataEditor<T> class (whose IndexedEditor class implements LeafValueEditor), this means that the still-frozen instance has been drawn for the user, and so cannot be edited.
I'm still a little ways away from understanding a good fix for this, but it seems that AbstractEditorDelegate:255 could be changed to read leafValueEditor.setValue(getObject());. If that is the case, it seems likely that other similar changes should also be made nearby (lines 180, 182, and 280).
All these line numbers are from the 2.2-M1 release.
-- 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+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
No comments:
Post a Comment