Inside Leopard: Macworld's OS X 10.5 preview

More Stories in this Series

Inside Leopard: Spaces

One of Mac OS X’s best features—especially compared to older operating systems—is that many applications can be running simultaneously; you don’t have to quit each program when you’re done for fear of running out of memory. But a consequence of this capability is that you end up with lots of application windows cluttering your screen.

In Leopard, Apple has addressed this issue with Spaces, OS X’s version of the popular-on-Unix, decades-old concept of virtual desktops. The idea behind virtual desktops is to convince your computer that it has more than one desktop, or workspace, each of which can contain particular applications and windows. You can then navigate between these virtual workspaces to access applications and windows in each.

The appeal of virtual desktops is that they let you keep your current workspace uncluttered and focused. Many tasks require a group of applications to complete, but different tasks require different such groups. Spaces lets you create a workspace containing just the tools and files needed for each task or project. Instead of having to quit and launch groups of programs, or hide and show various combinations of applications and windows, Spaces provides similar onscreen organization via a keystroke or menu selection.

The major features

We explained the basic idea behind Spaces when Apple first previewed the feature in 2006 and revisited the topic this past June. Now that Leopard is arrived, we have a better idea of how to set up and use OS X’s new virtual desktops feature.

Creating Workspaces You enable Spaces in a new Exposé & Spaces pane in System Preferences. By default, you have two workspaces, arranged horizontally; however, by clicking on the plus (+) button for Rows or Columns, you can add additional rows or columns of workspaces, respectively—up to a maximum of four rows and four column for 16 workspaces. The organization of these workspaces doesn’t affect how you work within each; it affects only the relative position of each when switching between workspaces.

Note that unlike some other implementations of virtual desktops, in Spaces your Desktop and Dock remain the same across workspaces; you can’t have different Dock contents, different items on your Desktop, or a different Desktop picture in each workspace.

Moving Around There are several ways to jump around between spaces. Pressing F8 on your keyboard—or whatever keyboard shortcut you wind up customizing—gives you an an Exposé-like, birds-eye overview of all your workspaces where the layout corresponds to the relative positions of the workspaces. Click on one—or use the arrow keys to select one and then press Return—to switch to it.

Spaces’ birds-eye overview of a two-workspace set-up.

You can also switch between workspaces by pressing Control and a directional-arrow key to move to the next workspace in that direction. (These keyboard shortcuts are also configurable in the Exposé & Spaces pane.) A Show Spaces In Menu Bar option in System Preferences provides a menu-bar menu that lets you switch directly to any workspace. (However, this menu requires you to remember which workspace corresponds to which number; a drop-down, visual workspace map would be easier to use.) You can also switch directly to a particular workspace by pressing Control+ # , where # is that workspace’s number in System Preferences. Finally, if a particular application has windows open in multiple workspaces, clicking on that application’s icon in the Dock will cycle through the workspaces containing those windows; each click takes you to the next such workspace.

Whenever you switch between workspaces, a visual map of your workspaces will appear on the screen, showing in which direction you’re moving and to which workspace you’re switching.

Adding Programs There are several ways to add an application window to a workspace. The easiest is to simply launch the program; it will appear in the active workspace. (If the application uses document windows, creating a new document will place its window in the current workspace.) You can also permanently assign an application to a particular workspace via the Spaces screen in System Preferences—click the add (+) button beneath Application Assignments, select the desired application, and then click on Add. Then, from the pop-up menu to the right, under Space, choose which workspace you want that application to appear in. From that point on, whenever you launch that application, Mac OS X will automatically switch to the appropriate workspace and open the program.

In the Exposé & Spaces Preference pane, you can set the number of workspaces and what applications go where.

Note that if you assign an application to a particular workspace and then manually move to a different workspace, that doesn’t change the program’s assigned workspace; after quitting the program, the next time you launch it, the program and all of its windows will again appear in the assigned workspace.

Alternatively, when assigning a program to a workspace, you can choose Every Space from the Space menu, and the selected application will appear in every workspace; its windows will follow you as you switch between workspaces. (Unfortunately, you can’t assign the same application to multiple, but not all, workspaces.)

You can also change the relative positions of workspaces. Just activate Spaces’ overview with the F8 key, click on any empty space in the desired workspace, and then drag the workspace to a different location; the other workspaces will shift out of the way to accommodate it. Note that that you can move a workspace only to an existing workspace location; you can’t move it to a new row or column without first adding either a new row or column in System Preferences.

What you may not know

In testing out Spaces, we’ve uncovered a few tips that should help you get more out of this OS X 10.5 feature.

  • You can assign Spaces’ Exposé-like overview to a corner of your screen using the Hot Corners button in the Desktop & Screen Saver pane of System Preferences; moving your mouse cursor to that screen corner will then bring up the overview of your workspaces.
  • If you use Exposé’s All Applications mode while in a workspace, it shows only those windows in the current workspace; however, if you first activate Space’s overview and then activate Exposé’s All Applications mode, you’ll see all windows in all workspaces. You can click on any window to go directly to it. Unfortunately, many windows will be too small to make out in this view.
  • If you delete a workspace containing windows, those windows will be moved to the next workspace up (if you delete a row) or to the left (if you delete a column).
  • If you disable Spaces, all windows in all spaces will be moved to workspace 1—your actual screen. However, if you later enable Spaces again, only those windows belonging to applications specifically assigned (in System Preferences) to different workspaces will be automatically moved to those workspaces; the rest will remain in workspace 1 until you move them manually.
  • Error messages, floating dialogs, and notification displays (for example, Growl notifications and iTunes controllers such as CoverSutra) appear on the active workspace, even if they pertain to an app in a different workspace.
  • Launcher utilities, such as LaunchBar, work well with Spaces. For example, LaunchBar’s window appears in whichever workspace you’re in when you activate LaunchBar; if you open an item that isn’t currently open, it opens in the current workspace; if you open an item that’s already open in another workspace, Mac OS X automatically switches you to that workspace and brings the chosen item to the front.
  • You can consolidate all your windows to a single workspace without disabling Spaces: just press F8 for the birds-eye overview, and then press C; pressing C again will restore the windows to their separate workspaces. (However, once you leave the birds-eye view, you won’t be able to restore.)
  • What we think

    Overall, Spaces works well, and is relatively easy to use given that it’s presenting an entirely new way of thinking about your onscreen work area; the fact that it’s so well integrated into OS X means that some people who might never have considered using a virtual-desktop manager will end up making it part of their normal workflow. At the very least, it’s an appealing alternative to hiding and showing groups of windows to reduce onscreen clutter.

    On the other hand, Spaces isn’t without its limitations. For example, you can choose to have an application, and all its windows, appear in all workspaces, but you can’t do the same with just a particular document window within an application. And perhaps the most significant limitation is that Spaces doesn’t automatically remember open programs and windows when you log out; the closest you can get is to assign particular programs to always open in particular workspaces.

    Spaces’ behavior is also confusing at times, especially as it relates to OS X’s Command+Tab application switcher. Similarly, Spaces presents challenges if you have different windows for a particular application open in different workspaces. Finally, when using Spaces, OS X’s Command+` shortcut—which should toggle between open windows in the current application—doesn’t work properly if those windows are spread between multiple workspaces; it cycles through only the windows open in the current workspace.

    Spaces clearly isn’t for everyone. It’s unlikely to appeal to those who work in just a few applications; for example, if you spend most of your time surfing the Web, working with e-mail, and using a word processor, the benefits of Spaces may not be compelling enough for you to embrace virtual desktops. However, people who use their Macs for many different tasks throughout the day, and who wish there was a better solution to window clutter than Expose, may find Spaces to be just the solution.

    Spaces also has benefits for people who use virtualization utilities, such as Parallels Desktop or VMware Fusion, to run Windows applications or other operating systems on Intel Macs. For example, you can dedicate a workspace to Windows, or one workspace for each OS you’re running, giving you the ability to switch between operating systems with the press of a key.

    On the other hand, experienced users already taking advantage of some sort of virtual-desktop manager may find Apple’s make-it-simple approach too limiting; third-party managers still offer more features.

    Great or Wait? As virtual-desktop managers go, Leopard’s Spaces feature is attractive and easy to use. It may not have all the features of more-advanced virtual-desktop systems, but it offers most of the major benefits in a way that makes them accessible to even beginning users. Best of all, you can try Spaces without worrying about messing up your system; if you decide you don’t like it, turning it off simply combines your workspaces back into a single screen. So give it a try: you’ve got nothing to lose except screen clutter. A qualified Great.

    [ Senior editor Dan Frakes reviews low-cost applications in the Mac Gems blog. ]

    Subscribe to the MacWeek Newsletter

    Comments