We should have a system within Mulberry for controlling and maintaining page states across transitions. Things we might want to remember:
- where a scrolling region was scrolled to
- what screen of a multi-screen template was last viewed
- form data
The system would need to record these things and be able to store them during page destruction and recall them when the page is reassembled. It should also be able to maintain some things while a page is still in memory, as we may want to record some things during a page's lifecycle (e.g. a scrolling area that's constructed/destroyed on orientation change). The developer should also be able to control when this information is destroyed (either with an expiration date/time or by explicitly deleting it).