Oh yeah small typo in my MainActivityMapper example. It has to be:
if(place instanceof XYZPlace) {
this.lastActivity = new XYZActivity(place);
return this.lastActivity;
} else if() {.} .
So its just implemented as a field that stores the activity. Nothing fancy
;-)
-- J.
thx that's realy nice - on first sight much better than
filtering/caching/overriding equal just to get the same as before.
--
You received this message because you are subscribed to the Google Groups
Google Web Toolkit group.
To view this discussion on the web visit
Ok a Custom CachingActivityMapper was easy to implement and works but
there is still a case I am not happy with. If a user bookmarks
EmployeePlace(1,123) and 123 gets deleted the activity would redirect to
EmployeePlace(1, null) to keep the URL in sync (activity can not preselect
the deleted
Because you activity lasts longer than a place, it should listen to
PlaceChangeEvent (as if it were a singleton, except that it can be garbage
collected and will be recreated if you go to another activity in the mean
time), or the ActivityMapper should update it with the new place.
But
Hm I have tried it now and at least the activity does not get restarted. But
now if I bookmark my selected employee and access it later it can not be
reselected because the activity filter always sets the employee id to null.
The filter can not distinguish if the app is running and the user
Oh, so you have a single activity handling both the master and details?
In that case, then I'd probably implement the caching by hand in the
ActivityMapper (or in your own proxy activity mapper, inspired by
CachingActivityMapper but doing the comparison using a more sofisticated
approach than
Yeah its a migration to activities and for simplicity I have only defined a
single display area. Thats somehow the work area of the app.
The reason is that I have a custom widget (layout panel) that can do quite a
lot of things. So for each place I have that custom widget that effectively