In TWM there's the concept of world snapshots, go back and forward. I've played with keeping all states history, it can be a start. If you are interested,��
have a look at��TWMWorldSnapshot,��TWMWindowSnapshot and��TWMWorldRecorder.

There's a demo / video here (starting from 6'20) http://magaloma.blogspot.com/2011/06/multiple-worlds-for-twm.html

Cheers,

Laurent


On Tue, Dec 27, 2011 at 2:33 PM, <btc@openinworld.com> wrote:

Neglecting that in 6 months I might be in a position try implementing this myself, here is a feature request in case anyone likes it enough to implement it in the meantime, or who can advise why it is a bad idea.

Background:
For me, one of the greatest most useful features of web browsers is the "Undo Close Tab." �� I browse almost exclusively opening all links as new tabs since I find this the fastest to follow diversions and then return to my previous place up the stack of tabs. ��I can get 20 or more odd tabs in a browser window. ��When I'm speedily closing tabs to backtrack my position, I find my recognition of content often lags my tab closing by a split second. ��Being able to un-close that last tab is a lifesaver.
Now that I am getting into actual programming in Pharo, I have found that from time to time I've ended up with more than a dozen tabs in the "task bar" at the bottom of World. ��A few times already when I've flicking through these closing them after finish a line of thought, I have accidentally closed some tabs that I wanted to keep - like the Workspace I had been using as a bit of a history log.

Perhaps my workflow is bad - but I really miss being able to Undo closing that last window.

Features:
1. For a window that has a tab on the "task bar" at the bottom of World, when it is closed allow it to be reopened in the same state.
2. Clicking on the "Task bar" provides a menu item "Undo Close Tab" that either:
2a. Brings back the last closed tab.
2b. Provides a "restore list" of previously closed tabs sorted by time closed, which brings back that tab.

Implementation Idea:
3. When closing a tab, rather than actually closing it, the window is just minimised but is removed from the tab and placed on the "restore list".
4a. The "restore list" is a certain length and when a tab is bumped off the end it is properly closed.
4b. Alternatively tabs may remove themselves from the "restore list" after a certain timeout eg 30 minutes.

I'd appreciate your thoughts...
cheers, Ben