Thursday, September 19, 2013

Changing Activity/View without Place

I have an app using Activities and Places. I have a process where I list items, then show an item detail screen, then rename an item by showing a screen with a single field. After rename, I show the item detail screen again. So I wrote this as ListPlace, DetailPlace, RenamePlace with matching Activities and Views.

Afterwards, I realize that I don't want the forward/back buttons to scroll back through the Detail and Rename places. I only want the forward/back buttons to move around in the list. I don't want the Rename place to be bookmark-able, etc. This is my main problem. Can I use Places and not have them stored in the history list? A I understand it, each Place is a new History token and you can't modify the stack either because the browser manages it.

Trying to work around this, from within the ListActivity I manually load the FileInfoActivity, which then manually loads the RenameActivity (activity.start()). This is working well except that it is MGWT and I don't get animations when I do this because I'm skipping the AnimatingActivityManager. I am manually calling onStop() on the activities. I realize that I am short-circuiting some GWT wiring by doing this. It seems to work, but I'm afraid I'm creating problems that I am unaware of. Any guidance here? Anyone else do this?

I like that my view and logic are encapsulated within Activities and Views, but I don't want a Place (new URL token stored in History) for every Activity/View. If I throw all this logic into the top ListActivity and View (rather than separating it into smaller Activity/Views), then the ListActivity and ListView are going to get unwieldy as I keep adding functionality.

How do I (Can I, Should I?) change the Activity/View without using/changing Place? Is there another approach that will allow me to encapsulate my functionality into smaller chunks?

Thanks,

Kevin


--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at http://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/groups/opt_out.

No comments:

Post a Comment