Spaces for Virtual Desktops
Spaces was introduced with MacOS X 10.5 (Leopard) and provided virtual desktops to your Mac. As of MacOS X 10.7 (Lion), Spaces became a part of “Mission Control” and finding this functionality, for some awkward reason, became difficult to find, even for seasoned Mac users.
What is a Virtual Desktop?
A virtual desktop can be compared to a computer with multiple monitors, each part of the total “desktop”. So in essence this will give your Mac multiple Desktops.
Your mouse and applications can move from one monitor to the other, which in the end gives you much more working space (the use of multiple monitors this way, on a Mac, has been around for decades). Imagine having Word, Excel and your eMail program all open, and without having to flip windows around, you can see them all at a glance in full size.
MacOS X – Multiple Monitors
Now working with multiple monitors is really cool and I even dare to say that it increases productivity. It is however far from practical if you’re moving around with your laptop, and this is where Virtual Desktops come in play. Or in other words: Spaces, which offers your Mac Multiple Desktops.
With a virtual desktop, your Mac will seems to have multiple desktops, as if you’re using multiple monitors.
For example, one for working on the code of your website, one for Photoshop, and one for a preview of the website you’re developing. Or if you’re not a developer: One desktop for your Wordprocessor, another one for your spreadsheet application and the third one for your eMail program.
But the beauty of virtual desktops is that we’re not bound to only two or three desktops, I always use 4. Unlike monitors, this function is free and you’re allowed to create up to 18 desktops. And all that with just one screen (works for desktops and laptops).
In the image below, an illustration of how you could see “spaces” (virtual desktops).
Say you have 4 virtual desktops, your computer display will only show one of them at the time, but you can rotate through the desktops rapidly to enjoy the content of the next or previous desktop. Each desktop with it’s own set of applications and windows that are opened.
Space – Shuffle through virtual desktops
Virtual Desktops have been around for quite a while already, specially on the Unix/Linux platform. I’ve never found them to be really practical though (and in part I have to blame myself in that). Switching from one desktop to another was in my opinion too cumbersome and not very intuitive.
In this article however, I will show you how to use a key combination, tilting of the wheel of a wheel mouse, or the way I do it myself: by using two side buttons on my mouse. For the last two options, you’ll of course need a mouse that supports this.
Testing Spaces on your computer will not require any additional software (it’s build-in to MacOS X) and you can disable it any time you’d like. Mouse support depends on the driver of your mouse and an application like SteerMouse.
To create some spaces, I used 4 but any number will work, is relatively easy – just very well hidden in “Mission Control”.
How to Start Mission Control
You can start Mission Control in 3 ways:
Use the Keyboard
The easiest way to start Mission Control is by pressing the Mission Control key on your keyboard – this is typically the F3 key (or “Expose Key”).
By default, if you haven’t changed the keyboard shortcuts, CTRL + ↑ (CTRL + Arrow Up) will open Mission Control as well.
Mission Control – Start by pressing F3 (Expose Key)
Four finger swipe up ..
For laptop users, or for those that have a trackpad, a swipe with four finger moving up will start “Mission Control” as well.
Start Mission Control from “Applications”
You can also start Mission Control by clicking it’s application icon. Go to “Applications” “Mission Control“.
MacOS X – Mission Control icon
Closing Mission Control
You can close Mission Control by pressing the “Esc” key, or the “F3” key, or by a four finger swipe down or by clicking somewhere in the screen.
After Mission Control has been started, you’ll see all your open applications and desktops displayed. The illustration below shows that your screen is basically divided in 2 sections:
– Desktops (A), in this case “Dashboard” and “Desktop” and
– your Open Applications (B), here: TextEdit, Calculator, Safari, System Preferences and Finder.
Mission Control Areas – Desktops (A) and Open Applications (B)
How to Remove Dashboard (optional)
It’s a complete mystery to me who would even use Dashboard, but I guess I can’t judge people for using it.
I however removed it immediately after a fresh MacOS X install.
To remove Dashboard. or better said “to hide Dashboard”, simply open “System Preferences” “Mission Control” and remove the checkmark before “Show Dashboard as a Space” and close System Preferences.
Adding Desktops in Mission Control
Adding a (virtual) desktop is easy now that we have Mission Control open.
Move your mouse to the upper right corner until a block appears with a plus symbol in it.
MacOS X Mission Control – Add a Virtual Desktop
For every time you click this plus, a virtual desktop will be added.
MacOS X Mission Control – Added a Virtual Desktop
You will notice that it’s an empty “desktop” and that when you hover over the thumbnail of that desktop, a remove icon ( ) will appear, which allows you to remove the desktop if desired.
Going Through Virtual Desktops
To switch virtual desktops, specially when this is your first time, is done by clicking the desired desktop in Mission Control. However, I think we can all agree that this is not exactly practical during daily use.
Moving through Desktops
When switching to another Desktop, your Dock and Menubar will move along. Or better said: will be visible on any of the desktops (except when accessing “Dashboard”).
Using the Keyboard to Switch Desktops
The standard method to switch back and forth between desktops is by using the keyboard.
Next Virtual Desktop: CTRL + → (CTRL + Arrow Right)
Previous Virtual Desktop: CTRL + ← (CTRL + Arrow Left)
Using your Trackpad Gestures
By default your Mac is set to use a three finger swipe left (previous desktop) or right (next desktop).
Trackpad – Use 3 finger swipe (left/right) to switch desktops
Using the Mouse to Switch Desktops
I’ve found that using the mouse is much quicker, specially when you have a mouse that has extra buttons or a wheel that can tilt – most Logitech mouses have this option. Other brands like Microsoft and GigaByte offer this on some of there mouse models as well.
Using extra Mouse Buttons
My mouse, a Logitech Performance MX, has three small buttons on the left side, which are easy accessible with my thumb (assuming a mouse for right hand users). These buttons can be assigned in the Logitech software to keystrokes – you only need 2 buttons. Other brands might have similar options.
I have chosen to use the “back” button to go to the previous Desktop, and the “forward” button for the next Desktop. It is of course fully up to you what works intuitively best … any of the mouse buttons can be used, for any key assigment you have in mind.
Logitech Performance MX – Extra buttons
Recommended: A much better Mouse Driver … SteerMouse!
If your mouse driver does NOT support the assignment of keystrokes, or if you simply do not like the slow, unreliable and bulky driver provided by the manufacturer (yes Logitech, I’m looking at you!), then consider using SteerMouse which you can try for free for 30 days.
The full version is unfortunately $20, but I’ve found it to be well worth it, specially when you realize how many mouse brand and models it supports (no problems if you decide to switch mice).
SteerMouse does not only support pretty much any mouse on the planet, it’s also light weight, rock solid and offers additional mouse functions that you might not find with other mouse drivers (including profiles for individual applications).
While you’re at it: Assign a button for screenshots …
My mouse has 3 buttons (Forward, Backward, and Zoom). I frequently have to take screenshots for my articles for Tweaking4All, so I decided to assign taking a screenshot to the Zoom button.
I use for that the “Copy picture of selected area to clipboard” screenshot function, which allows me to select an area of the screen and copy this to the clipboard. However; when pressing CTRL + Spacebar after pressing the zoom button, it instead will take a screenshot of the window my mouse hovers over.
To accomplish that, we would use the key combination CTRL + SHIFT + COMMAND + 4, so assign this to the desired mouse button (in the case of my mouse: button 9).
Settings for SteerMouse (recommended)
Since I highly recommend the use of SteerMouse, let’s start with that one.
Keep in mind that SteerMouse needs to be installed, you can download a trial version from the SteerMouse website.
Go to “System Preferences” “SteerMouse“.
A window will open, telling you to click the “SteerMouse” picture, to open the SteerMouse preferences. In the now opening settings window select the tab “Buttons” (it should open with that by default).
MacOS X – SteerMouse Setitings
Tip : To identify your mouse buttons, I’ve found it to be easiest to move your mouse cursor over the mouse picture in this window, and press the button you’d like to assign a function to. The button you pressed will be highlighted in the list on the left hand side.
The settings for my mouse (a Logitech Performance MX):
| Button 4
|| CTRL + Left Arrow
|| Previous Desktop
| Button 5
|| CTRL + Right Arrow
|| Next Desktop
| Button 9
|| CMD + CTRL + SHIFT + 4
|| Screenshot selected area (optional)
Settings for Logitech Control Center
You can do these settings in the Logitech Control Center as well, but I’ve found that Logitech Control Center is not only bulky, but it occasionally can’t find my mouse and refuses to assign the functions to the buttons. You’ve been warned and your milage may vary ….
Go to “System Preferences” “Logitech Control Center“, select your mouse and click “Configure” (if needed).
Logitech Control Center – Assign keystrokes to buttons
The settings I’ve used:
Assigned Mouse buttons
| Thumb Back Button
|| CTRL + Left Arrow
|| Previous Desktop
| Thumb Forward Button
|| CTRL + Right Arrow
|| Next Desktop
| Zoom Button
|| CMD + CTRL + SHIFT + 4
|| Screenshot selected area (optional)
Instead of a keystroke for a screenshot, you can also assign the “Screen Capture” “Region” “Clipboard” function in Logitech Control Center.
Using Mouse Tilt
About half the wheel mice I’ve had, did support this function: pushing the wheel of your wheel mouse either left or right.
Depending on your mouse and what you’re used to, this might work just as well as the extra button.
Logitech Performance MX – Wheel tilt
The reason why I don’t use this every day is simple, my finger keeps slipping of the wheel when I try to do that, as extra force is needed on the Logitech Performance MX. My little Bluetooth travel mouse however does not have the extra buttons in in that case I do use this approach.
For SteerMouse, use the same approach as before, and identify the “button” by moving your mouse cursor over the displayed mouse and tap your wheel to the left or right to identify the button (button 7 and 8 on my Logitech Performance MX).
In Logitech Control Center these buttons are called “Tilt Left” and “Tilt Right”.
Working With Virtual Desktops
Now that we have some virtual dekstops and know how to switch with easy from one desktop to another, time for a few tips when actually working with multiple desktops.
Moving an Application Windows from one Desktop to another
When you’d like to move a window from one desktop to another, simply start dragging it to one of the sides of your current desktop. If, for example, you drag the window to the right side, you’ll notice that after a very short time, your Mac will switch to the next desktop. If you want to “drop” the window there, then simple release your left mouse button and stop dragging.
Doing this, will “assign” this application to the destination desktop. Next time when you open that application it will open on this desktop again.
Moving an Application instantly to another Desktop
An alternative way of moving an application fast to another desktop is by using keyboard shortcuts. This does not work for an unlimited number of desktops, only for the first four desktops. By default this function is disabled, so you’ll have to go to the “System Preferences” “Keyboard” “Shortcuts” “Mission Control” and set a checkmark before the options “Switch to Desktop 1” … “Switch to Desktop 4” (the number “4” depends on the amount of virtual desktops that you have defined).
After doing this pressing CTRL + 1 will move you quickly to Desktop 1 (dito for Desktop 2, 3 and 4).
To move an application quickly yo (for example) Desktop 1, grab the application window as if you want to drag it and with the other hand press CTRL + 1. Your application window will now instantly be on Desktop 1.
Assigning Destinations for Applications
With the dragging example we just looked at, you might have notice that the application will start on that desktop next time we open it. In fact: You can assign three different kinds of locations to an application:
- “None” or where-ever you open it, so it opens on whatever desktop you’re on and stay there,
- “This Desktop” or predefined desktop, which opens it always on the defined desktop
- “All Desktops” or it will always appear on all desktops.
Dragging a window to a particular desktop is one option to assign a predefined location, but how about the other options?
If you right click the application dock icon, a menu will popup, giving you the option to select (for the given application) what the desktop location “rule” should be. Your Mac will remember your choice, so when you open the application in the future, it will abide to these settings.
Define the desktop “rule” for this application
What is really great about this option, is that you can “define” your work environment any way you’d like.
As an example, right now I’m writing this article and my webbrowser is fixed to Desktop 1, Path Finder (Finder alternative) is assigned to Desktop 2, Photoshop to Desktop 3 and Dreamweaver to Desktop 4. Whenever I start any of these applications, they will be locked in to those predefined desktops.
Full Screen Applications …
For those running full-screen applications: you can assign them to a specific desktop as well, as seen with normal applications.
As an example, I use VMWare Fusion to run Ubuntu or Windows. I run them in full screen and they are assigned to Desktop 4. So whenever I start for example the Windows Virtual Machine, it will always open in full screen on Desktop 4. Switching desktops will work just fine and with this approach switching between MacOS X and other operating systems becomes a breeze …
Quickly Jumping to an Application
Your Mac will open an application in it’s default location, unless you defined one (see previous paragraph), and will set the involved desktop to the active one (ie. it will go to that Desktop if it is not the current desktop).
Once an application is open and you forgot where it was, just do what you usually would do: Click the icon in the Dock and your Mac will go to the involved desktop right away.
Using different Wallpaper for Desktops
Each desktop can have it’s own Wallpaper. Personally I’d not be happy with a parade of different wallpapers for each desktop, it can however be useful to quickly identify the desktop you’re on.
I used to use only one wallpaper for all my desktop, which of course make every desktop look the same.
Recently I made copies of this particular wallpaper and used a graphics editor (even “Preview” can do this for you!) to add “SCREEN 1” to the picture (I used the lower right corner). I did the same for each wallpaper copy, increasing the number count of course.
So now I have 4 different wallpapers that look identical, with a text in the lower right corner staying “SCREEN 1“, “SCREEN 2” etc.
To assign these wallpapers, simple go to the desktop for which you’d like to set the wallpaper, right click the desktop and select “Change Desktop Background…” and select the wallpaper you’d like to use for this desktop.
Quickly Creating a new Desktop for an open Application
Mission Control (F3) allows you to quickly create a new Desktop for an application that is already open.
To do this, you’ll need to open Mission Control (press F3) and simply drag the application preview to the top part of the screen (where you see the desktop thumbnails) and drop it there between the existing desktops and a new dedicated desktop will be created.
If you drag the application on an existing Desktop, the application will simply move to that desktop.
Mission Control – Add a new Desktop for an Application