Today we’ll cover a couple of simple OS X window management tricks. While simple, I find them both quite useful and use them regularly, and was somewhat surprised to find that I haven’t written about them before. So today, I’m taking care of that oversight and sharing these two tips.
For those who migrated to OS X from previous versions of the Mac OS, one of the big adjustments we had to make was the change in how application windows are handled. In the pre-OS X days, application windows existed as a sort of virtual group—if you brought an application to the front by clicking one of its windows, then all of its windows would come forward. In OS X, that’s no longer true; click one visible window belonging to an application, and only that window comes forward. For pre-OS X veterans, this is tough behavior to adjust to. It still sometimes catches me by surprise, mostly when switching into Quicken—each register in Quicken is a separate window, and having just one come forward when clicked seems very odd.
This behavior, though different than what we’re used to, has its benefits. If you’re looking at something on a web page that you want discuss in a document you’re writing, you can easily have one window from each application visible—without having to move or resize the applications’ other windows to make it happen.
If you prefer the old behavior, however, there are a number of solutions available, including two built right into OS X. If you switch applications with either Command-Tab or by clicking on the program’s icon in the dock, then you’ll see the OS 9 behavior: all of the chosen program’s windows will come to the foreground. But what if you prefer clicking on windows instead of the dock or using Command-Tab? Then you’ll want to look to a third-party solution. There are a number of programs that bring back the “all windows at once” behavior. Three that I know of for sure are ASM, LiteSwitch X, and DragThing, but I imagine there are others as well.
Now that you’ve got all the windows in the foreground, today’s second tip might come in handy: manipulating background windows. As the size of monitors has increased, so has the number of windows we have open at once. That means there will probably be more times when you’re looking at one window and wishing “geez, if I could just see that window hiding right there in the background!” In the old days (pre-OS X), that would mean doing the app switching dance—toggle over to the background app, move the window about a little bit, then toggle back to the foreground window. Urgh. That’s not fun, especially if there are a couple other background windows, from other apps, that you also need to move.
With OS X, though, we can just manipulate the background windows directly from the foreground application. What’s the secret? The Command key—hold it down before performing most any operation on a background window, and that window won’t spring to the foreground. And just what can you do to a background window? Most anything you like—close it, zoom it, move it, scroll it, resize it, even click buttons in it. About the only things that won’t work are actions in toolbars, as toolbar icons are moved via Command-drag—and no, you can’t move toolbar items in background apps in this manner. When you’re done manipulating, just release the mouse button, and you’ll find you’re still in your original frontmost application.
In early versions of OS X, support for this feature was somewhat dependent on how the foreground program was developed (Carbon, Cocoa, Java). Now, however, it just seems to work, regardless of which apps are in the foreground and background. The only exception to this rule (you knew there’d be one, right?) is Classic—if you try to manipulate a background Classic window, it will come to the foreground as soon as you press the mouse button down (on “mouse down”). But hopefully this isn’t an issue for too many users at this point in the evolution of OS X.