Expose Can You See


I've been "living" on Panther (OS X 10.3) on one of my machines since the pre-release at WWDC last month. For the most part I'm really pleased. It's a lot faster and has a lot of really cool features like Expose. Expose is a set of commands -- assigned to function keys, and/or onscreen mouse positions -- that let you quickly clear your desktop of all windows, choose a particular window from the windows of all the open applications, or choose a particular window from one particular application. Expose is typically Apple in that it's fully animated and makes people go, "Oooh! Let me try!" the moment they see it in action. The problem with Expose is that it doesn't really do away with the age-old problem of screen clutter; it simply gives the user a faster way to do an end-run around the problem. But what about F11, the shortcut that moves all windows off-screen, revealing the desktop, you may wonder. Yes, that's a really nice feature, but unfortunately background application activity and some mouse movements can make all the windows suddenly jump back onto the screen.

The only Mac OS X-native way to clean up window clutter so that it doesn't unexpectedly intrude again is still to minimize windows to the Dock. This, of course, results in Dock clutter. As the Dock fills with miniaturized windows and expands to accommodate the new additions, it slowly starts eating up screen space. I'm a real glutton for screen real estate and generally hate anything that grows and starts to take over screen space. This is why I'm a fan of virtual desktops.

Virtual desktops have been around for many years. Very popular on Unix systems, but there was at least one that I can remember that was created for the classic Mac OS. Virtual desktops can also be thought of as virtual monitors, because they operate as though their are n number of monitors attached to your computer. You switch between desktops using keyboard commands, menus, or in some cases, special palette windows that let you choose the screen to which to switch.

I've used a number of these utilities through the years, but the best one I've found happens to be a relative new-comer that was created for Mac OS X: CodeTek VirtualDesktop, from CodeTek Studios, Inc. CTVD lets you define as many desktops as you like, assigning a name to each, and letting you specify what applications will open on what desktop. For instance, I have six desktops on my system, named Sys, Comm, Web, Dev, Term, and Prod. I have set CTVD's preferences so that my mail and IM clients open on the Comm desktop; Finder windows open on the Sys desktop; Safari and other web applications open on the Web desktop; Xcode, BBEdit and other development tools open on the Dev desktop; Terminal and other Unix admin tools open on the Term desktop; and any productivity software such as AppleWorks or MS Office opens on the Prod desktop. Using CTVD's preferences, I can also set up applications whose windows will be immune from being corralled and will appear on all desktops.

CodeTek VirtualDesktop is the ultimate in flexibility and configurability. It provides a global pull-down menu that you can use to switch between desktops, or even specific windows on those desktops. It provides keyboard shortcuts that let you switch between desktops. And it also provides a floating palette window with changeable skins that lets you graphically select the desktop to which to switch. The palette is what I use the most because it shows me a tiny representation of the windows on each desktop; it even lets me select the tiny windows and drag them between desktops. This is particularly handy in the event I need to see a Finder window on my Dev desktop, for example. I can also set CTVD to automatically switch desktops when I drag a window to the screen boundary. Drag a window to the left or right screen edge, and it switches to the next desktop in that direction, where you can continue dragging the window.

Right now Expose and CodeTek VirtualDesktop don't work very well together. Not surprisingly, they seem to confuse each other. But I'm hoping that CodeTek will be able to work some magic that will make CTVD and Expose complement each other in the final version of Panther. It would be really nice, for instance, to have Expose work on a desktop-by-desktop basis, since some virtual desktops can suffer greatly from window clutter. If the interaction can't be worked out, however, I'll stick with CodeTek VirtualDesktop, since ultimately it's a much cleaner solution to the messy problem of window clutter.

Posted: Wed - July 23, 2003 at 12:16 PM          


©