http://gwt-code-reviews.appspot.com/946802/diff/8001/9006
File user/src/com/google/gwt/app/place/FindAndEditProxy.java (right):

http://gwt-code-reviews.appspot.com/946802/diff/8001/9006#newcode50
user/src/com/google/gwt/app/place/FindAndEditProxy.java:50:
FindAndEditProxy.super.start(display, eventBus);
This activity doesn't support startup cancellation: super.start() will
view.setDelegate() (among other things) whether or not the activity was
cancelled.
It will be a real problem in the case you switch from a FindAndEditProxy
(FAEP) to a CreateAndEditProxy (CAEP), if they share the same singleton
view:
 1. FAEP starts (async)
 2. user changes his mind: FAEP is cancelled (a no-op actually) and CAEP
is started (synchronous: sets itself as the view delegate)
 3. FAEP async start response arrives: calls super.start which
overwrites the view's delegate.
From the ActivityManager POV, FAEP is dead and CAEP is active, but
actually the view delegates its events to FAEP, and CAEP is "blind"
(kind of a zombie activity).

http://gwt-code-reviews.appspot.com/946802/show

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors

Reply via email to