Suggested enhancements for the Mac OS X Dock
Today, the Dock has two kinds of application items:
You can explicitly change an item’s state
Here is a Dock with three temporary items in it:
There are three temporary items just to the left of the Home icon.
I suggest that the Dock should visually indicate which app icons are temporary, perhaps with a lighter background, thus:
The proposed light-color background shows which icons are temporary items.
This is important because it will help users grasp the concept of temporary items and to understand why some Dock items stay around, and some don't.
Often when you launch an app that is not currently in the Dock, shortly after it quits you will need to use it again. But it’s gone from the Dock, and you have to go find it again.
It would much more convenient if the Dock were to cache temporary items, so they stay in the Dock for a while in case you need them again. Here is our example again after two of the three temporary apps have quit:
Three temporary items are cached, and one of them is active.
Now you can easily re-launch either of the cached temporary apps that are no longer running. Clicking them in the Dock is a lot easier than finding them in the Recent Items menu under the Apple menu.
The cache behavior could be controlled by two parameters (which may or may not be exposed in the official Dock preferences UI):
Until user testing establishes good default values for these settings, a cache size of 0 would cause the Dock to behave as it does now.
My guess would be that the default settings should be something like 5 and 1 day, but user testing could prove my guess to be way off. Personally, I think I would start out with infinite, and see how it goes.
With cache settings other than infinite and never, the time will come when the rules dictate that an temporary item has to be ejected. You will actually see the item being ejected (with a puff of smoke) only when Hiding is off and you have just launched an app not already in the Dock.
A UI idea that has been around for a long time is to modify the look of an icon to show how long it’s been since it was last used. This feature would be applicable here, too, but I don’t have a good idea for how it should look.
Some apps should never be cached. But which ones? A developer should be able to mark their application with a
DockCachingBehavior attribute, which would be a 1-of-3 choice:
The default is to cache.