Wednesday, October 1, 2008

WindowShade X Revisited

Over the many years we've been writing about great low-cost software, one of the most popular products--with both readers and Gems writers--has been Unsanity's WindowShade X. This "haxie," as Unsanity calls its system-enhancement utilities, brings back one of the favorite features of Mac OS 9: windowshade-style window minimizing. With WindowShade X installed, double-clicking the title bar of a window no longer minimizes the window to the Dock; instead, the entire window "rolls up"--complete with audio effect--into the title bar, which remains in place.
This is a great way to keep windows visible and accessible without blocking your view of other onscreen items. It's also a handy way to quickly view something behind a window: double-click for a better view, and then double-click again to restore the window. Although Exposé, introduced in Mac OS X 10.3 (Panther), reduced the utility of this windowshade feature somewhat, it still has its advantages.
Unfortunately, Mac OS X 10.5 (Leopard) broke WindowShade X, forcing fans to muddle through without it. Granted, most people got by just fine. But as someone who started "windowshading" when the feature first debuted in 1997 as part of Mac OS 8, and used WindowShade in OS X for years, by the time Leopard was released I'd been using this functionality for over a decade! That's some serious muscle memory to overcome, and, in fact, as recently as a couple weeks ago I still found myself wanting to "roll up" windows.
Why only until a couple weeks ago? Because that's when Unsanity finally released WindowShade X 4.2, the first official release that works with Leopard. Like previous versions, version 4.2 offers a standard windowshade mode, as well as three other "minimize" features: transparency, which makes a window translucent so you can see what's behind it; minimize-in-place, which shrinks a window down to the size of a large icon (that you can move around); and hiding, which hides the application to which the window belongs.
But you don't have to choose just one of these modes; via the WindowShade X preferences pane, you can assign a different action to each mode, as well as change the action required to get the standard minimize-to-Dock behavior. (You can choose from among several different actions.) For example, on my Macs, double-clicking a window's title bar windowshades it, while control-double-clicking makes the window translucent. You're also supposed to be able to create your own actions and keyboard shortcuts; unfortunately, I haven't gotten this feature to work properly.
You can also customize many of these effects. For example, you can choose the translucency of "transparent" windows; choose the size and behavior of minimized-in-place windows; and set up application-specific preferences so, for example, double-clicking the menu bar of a window does one thing in the Finder, another in your favorite Web browser, and another in Photoshop.
In addition to adding Leopard compatibility, WindowShade X 4.2 works better with iTunes and fixes a number of bugs. It also removes a feature of older versions of WindowShade, custom shadow settings, that never worked reliably.
Besides the problem I noted above about custom actions, WindowShade X's minimize-in-place option doesn't currently work with Mac OS X's Spaces feature. I'd also like to be able to adjust the volume of the "swoosh" sound you hear when minimizing a window. But perhaps the biggest issue for some OS X users is how WindowShade X works its magic: via Unsanity's Application Enhancer, now at a Leopard-compatible version 2.5. What is Application Enhancer? As Unsanity explains it:
It is a combination of a Framework and a system daemon. Application Enhancer performs its task by loading plugins (Application Enhancer modules) containing executable code into the running applications. Once loaded, the APE module performs the needed modifications (such as redefining the minimize window action, or customizing the standard Apple menu) on the launched application memory space, never touching any files on disk, utilizing set of functions defined in the Application Enhancer framework. To help the APE modules to be loaded into newly launched applications, the Application Enhancer daemon (aped) is used.
In other words, it's a system hack that affects all running applications (although you can manually exclude certain applications from being modified by Application Enhancer and, thus, Application Enhancer-based system utilities). Some Mac users refuse to use such hacks on their systems because of concerns about instability and other potential issues; if you're one of these people, WindowShade X isn't for you. That said, I ran WindowShade X for years on my pre-Leopard Macs without problems, and I've been using version 4.2 for the past couple weeks without incident.
(One related note: Unsanity's instructions say you need only log out and then back in after installing WindowShade X; however, I had to actually restart my Mac for WindowShade X to take effect.)
Finally, a note about WindowShade X's price. Unsanity provides version 4.2 free to anyone who's ever purchased an older version. However, the company requests that those who've been using it for many years consider paying a US$7 "voluntary upgrade fee." As the name implies, you aren't required to pay it, but if you've been using WindowShade X across multiple versions of OS X, it's a way of saying "Thanks for all the free upgrades; here's some cash to help with future development."
WindowShade X 4.2 requires Mac OS X 10.4 or later

No comments: