So at the surface, it looks like a great way to ensure the user can't go
backwards in the application and redo or undo things they shouldn't be
allowed to do...
I didn't really envision this mechanism as a way to prevent the user from
going backwards. There are much less drastic and more elegant ways to deal
with that problem.
however, I don't think it guarantees this without the developer
being
really careful. What it DOES do, is allow a sophisticated developer the
ability to cleanup state earlier and make the application much more
efficient in how it uses memory.
Yes, that is the idea. It could be a background thread or perhaps a
navigation hook. The developer would have to be aware of the consequences,
but I see it more something a framework will leverage. And you could
serialize access to the tree to ensure it is not invoked prematurely from a
double click (the waiting thread would be able to react to the tree being
absent appropriately).
-Dan
--
Dan Allen
Senior Software Engineer, Red Hat | Author of Seam in Action
http://mojavelinux.com
http://mojavelinux.com/seaminaction
http://in.relation.to/Bloggers/Dan
NOTE: While I make a strong effort to keep up with my email on a daily
basis, personal or other work matters can sometimes keep me away
from my email. If you contact me, but don't hear back for more than a week,
it is very likely that I am excessively backlogged or the message was
caught in the spam filters. Please don't hesitate to resend a message if
you feel that it did not reach my attention.