Hell yes to this. This lack of this functionality has been bugging me for a while. I finally wrote it down two and a half weeks ago:
> Every application should have an undo/redo stack related to view operations.
> The way I see it, applications currently focus on allowing users to undo operations performed on the model. I submit that applications need to provide a similar mechanism to undo operations that affect the application's view of the model.
> E.g., if you have a sidebar open and are deleting the items listed there, you can generally undo the deletion. But suppose you close the sidebar. Generally, you can't undo the sidebar close.
You're talking about window management changes, and what I've written about mentions only application-level changes, but the example I gave doesn't preclude desktop-level change management you talk about. After you've established keyboard shortcut scoping conventions <http://news.ycombinator.com/item?id=2495838>, accomplishing this is straightforward, from a software design perspective.
> Every application should have an undo/redo stack related to view operations.
> The way I see it, applications currently focus on allowing users to undo operations performed on the model. I submit that applications need to provide a similar mechanism to undo operations that affect the application's view of the model.
> E.g., if you have a sidebar open and are deleting the items listed there, you can generally undo the deletion. But suppose you close the sidebar. Generally, you can't undo the sidebar close.
You're talking about window management changes, and what I've written about mentions only application-level changes, but the example I gave doesn't preclude desktop-level change management you talk about. After you've established keyboard shortcut scoping conventions <http://news.ycombinator.com/item?id=2495838>, accomplishing this is straightforward, from a software design perspective.