Managing Resume function in OS X Lion
Apple's Resume feature for restoring application windows is convenient, but at times it may be undesirable to have it enabled. Here are some ways to manage this feature in OS X.
In the last few major OS X releases, Apple has automated a number of key routines that deal with user data security.
First the company added automatic backups with Time Machine in OS X 10.5 Leopard, followed by a rudimentary malware scanner for downloaded files in Snow Leopard. In Lion, Apple has added a couple of others: Auto Save and Resume, which respectively will save file versions and preserve the window state of applications so they can be restored if a program crashes or is quit with windows open.
Both of these new options can be exceptionally useful in making it unnecessary to regularly press Command-S to save documents, and also in allaying fears that a quick save may overwrite a desired file version with some temporary changes. Additionally, with Resume you can simply quit most applications and when you reopen them any documents or windows will be restored to the way they were, so you can quickly resume your work flow.
Auto Save itself does not have many drawbacks, at least in terms of its core function of saving files automatically. Resume, on the other hand, does have some instances where it can be frustrating to deal with, or the results can be undesirable even if it works as expected.
For instance, if you have opened a document that causes a program to hang and requires you to force-quit the program, then when you reopen the program the system's Resume function will open the document again and may result in the same hang. Additionally, if you have a private document open and close it by quitting the program, then if someone else launches the program the document will be automatically opened.
The Resume function does allow you to quit a program in such a way that its windows won't be restored the next time it's opened, by quitting with the Option key held down. To do this you can hold the Option key and then select Quit from the Application menu (right next to the Apple menu), or you can press Option-Command-Q to perform the same action.
While this is one option, it is not the best way to manage the Resume feature because it does not resolve crash or hang scenarios, and also it requires you to remember to apply this alternative quit procedure beforehand.
It would be beneficial if future OS releases included an option for determining whether or not to restore windows on application launch, or at least an option to preview which windows are being restored so you can pick and choose. But even though Lion does not have a built-in way to manage Resume on a per-application basis, you can take advantage of how Resume works to prevent it from functioning for specific programs.
When an application runs, the system saves the Restore configuration in the user's Library folder. The Library is hidden by default in OS X Lion, but you can reveal it and see these configurations by holding down the Option key and selecting Library from the Go menu, followed by opening the Saved Application State folder.
Each of the directories in the Saved Application State folder represents an individual application, and is named by the application's domain convention, so for example the configuration for iTunes is named "com.apple.iTunes." Because these directories are accessed when the program runs so its window positioning can be saved, you can use this to manage the saved states:
- Remove them
If you have closed a program and wish to open it without restoring its previous state, then you can simply remove the folder for that program and when you launch it the program will start with a fresh, default window configuration.
- Lock them
While removing the program's configuration will cause it to launch with a default window configuration, if you wanted to turn off restore completely for one application this way then you would need to delete its saved state every time you opened the program, which would likely be an exercise in frustration for most people. Therefore, a more feasible solution is to lock the saved state to prevent it from being altered.
To do this, first remove the current saved state for your desired application, and then open the application so a fresh configuration is created. When this is done, quit the program, then get information on the saved state folder for it by selecting it and pressing Command-I. In the information window, check the box that says "Locked," which will prevent any of the folder's contents from being modified. Then close the window and you are good to go. From now on, that blank saved state is what will be restored, regardless of what was open when you quit.
The restore option does have its uses so I recommend people keep it enabled for as many programs as possible; however, if you are finding it interferes with your work flow too much, then you can disable it altogether. This is done by going to the General system preferences pane, and unchecking the option to "Restore windows when quitting and re-opening apps."