When Apple thrust Mac OS X upon us, it was quite a change. I remember one colleague remarked that his head was filled with all sorts of Mac OS 9 troubleshooting arcana, nearly all of which would be rendered moot once Mac OS X gained its footing. Some behaviors in the new operating system changed enough that they disrupted the flow of how we'd been using the Mac for years. Subsequently, several utilities appeared to bring back those behaviors (see "Top Mac OS X Utilities: Restoring Mac OS 9 Functionality" in TidBITS-622).
For the most part, my transition to Mac OS X went smoothly without relying on such utilities. To my surprise, it didn't take long for me to adapt to the new Mac OS X order. However, one thing remained an irritation, an aspect I actually forgot about because long ago I installed a utility that fixed it: Mac OS X's default window behavior.
Trouble Begets Frustration -- When my PowerBook recently started behaving strangely, I went looking for startup items that might be contributing to the problems I was seeing. One utility I disabled was ASM (Application Switcher Menu) 2.0.2, a utility that provides an application menu like that found in Mac OS 9. Although ASM didn't appear to be the cause of my problem, I quickly realized it offers a feature that I absolutely cannot live without: when I click a window belonging to an application (such as Eudora or the Finder), ASM causes all of that program's windows to be brought to the front. Normally, in Mac OS X, clicking a window causes just that window to move to the front; other windows in that application remain unaffected.
In fact, that's the only reason I installed ASM in the first place; I don't actually use the application menu. But being without this windowing feature drove me crazy for several days.
Mac OS X's default window behavior is nutty. I keep four Eudora windows open at once: my In box, my list of mailboxes, the Task Progress window, and the Filter Report. If I'm in another application and I want to switch to Eudora, I want to see all four windows, not just the one I clicked on.
One response to this behavior has been Apple's move toward single-window interfaces, such as iTunes, iMovie, and iPhoto. But other Apple software can't be confined to one window: Final Cut Express, which uses at least four main windows, includes a preference to bring all windows to the front on activation - a different workaround to the problem. (Perhaps inspired by this example, other developers could add a similar preference to their applications.)
I could click the application icon in the Dock, but that's a mouse-trip to a small target on the other side of my screen, and it's not always what I want; clicking the Finder icon, for example, creates a new Finder window if none existed beforehand. But Mac OS X would prefer to layer windows like shuffled cards, with windows acting as separate entities instead of as groups of applications. And having a Bring All to Front command in the Window menu of every program isn't helpful.
What's needed is a simple preference that enables me to specify whether all of an application's windows come forward when the program is brought to the front. In the meantime, several utilities fill that particular gap.
X-Assist -- Despite my earlier comments, this isn't an article about ASM. Although I haven't had problems with it, the last freeware version of it is now a few years old. A 2.1 beta version is available as $15 shareware, but it currently has issues with Mac OS X Panther and doesn't appear to have been updated in over a year. If ASM were the only solution around, I'd happily pay for it, but I don't want to inherit problems.
Instead, I poked around online and found Peter Li's X-Assist, which seems to offer many features similar to those in ASM, such as a Mac OS 9-style application menu and a hierarchical menu to access System Preference panes. It also features a plug-in architecture for add-on capabilities and a list of recent applications, but frankly, I turned off all these other features. X-Assist brings my windows to the front the way they should behave, and that's all I want. Even better, the software is free, and, although its version number is 0.7, seems to be rock solid.
Other Solutions -- Shortly after an abbreviated version of this article appeared on ExtraBITS, several readers wrote in to either defend the Mac OS X window behavior or to recommend other utilities that provide the same functionality I've found with X-Assist. Surprisingly, I haven't been able to find a utility that only brings application windows to the front in groups. Typically, it's a preference added to other useful features in programs such as Proteron's LiteSwitch, TLA Systems' DragThing, and Peter Maurer's Butler, among others. Most also have an option to disable the window preference temporarily if you want to use the regular window behavior.
Ultimately, this is another example of how one person's preference is another person's irritation. It was pathetic that I would get angry at my Mac whenever I switched applications because of what I perceive to be brain-dead window behavior. But other people I've corresponded with over the past week have clearly expressed their relief that windows now operate as independent elements. To each his or her own, I suppose, and if there's a moral to the story, it's perhaps that Apple should, in the very first versions of Mac OS X, at least made the Mac OS 9 windowing behavior an option, if not the default, to reduce the annoyance for those accustomed to the older behavior. Alas, the horse has left that particular barn long ago, but at least there are plenty of third-party utilities for restoring this behavior.