One of 10.5’s new features that I use quite often is the built-in screen sharing. You can use screen sharing from iChat, which is great for family tech support, but I’m referring specifically to screen sharing in the Finder. With multiple machines in the house, I often want to see the screen on a given machine while seated at another. In the pre-10.5 days, this was doable, and not overly difficult—you had to click a couple buttons to enable things, then run a VNC viewer app to make the connection. But with 10.5, the viewer is now built into the system. Screen sharing is based on Apple’s full Remote Desktop package, which offers more control over exactly how remote screens are shared. Luckily for us, Apple left at least some of that functionality in the more-limited screen sharing application—it’s just disabled by default.
First, here’s a potentially easier way to share the screens of other Macs on your network. First, realize that the screen sharing feature is just an application. It resides in /System/Library/CoreServices, under the tricky name of Screen Sharing. Find it now, and drag it onto your Dock, or into your sidebar, or your toolbar—whichever you prefer for quick launch access.
Now you can launch Screen Sharing directly from the Finder, without first selecting a machine in the SHARED section of the sidebar. When you do, a dialog box appears onscreen, asking for the remote machine’s address. Great, you’re thinking, now I have to type in a machine’s IP address to connect to it? This is progress? No, not yet it’s not. Quit Screen Sharing if you launched it, switch to Terminal, and copy and paste this line, then press Return:
defaults write com.apple.ScreenSharing ShowBonjourBrowser_Debug 1
Now launch Screen Sharing again, and revel in the new Bonjour Browser window that allows you to pick which machine you’d like to connect to from a list:
You can now pick your machines from a list of all Macs on the network. (And if there are any other Bonjour-compatible operating systems that support VNC (the technology behind screen sharing), I would expect they’d show up here as well, but I can’t test that assumption.) If you click the Add to My Computers box, the machine you connect to will be added to that section of the browser window, making future access a bit easier (think of it as a Favorites section).
Now that connecting is easier, let’s add even more functionality to the program. Again, quit Screen Sharing if it’s running, and then pop back into Terminal. If you’ve presently got a screen sharing session open, close it. Then copy and paste the following lines into Terminal, then press Return:
defaults write com.apple.ScreenSharing \ 'NSToolbar Configuration ControlToolbar' -dict-add 'TB Item Identifiers' \ '(Scale,Control,Share,Curtain,Capture,FullScreen,GetClipboard,SendClipboard,Quality)'
That’s all one long line, so feel free to copy and paste directly to Termianl. When you launch Screen Sharing again, you’ll see six new buttons on your toolbar. (If you can’t see the toolbar, use View -> Show Toolbar to make it visible.)
So what do these new buttons do? Here’s a quick rundown on each.
Switch between controlling the remote Mac (the default) and simply observing the other machine.
Switch between allowing the remote Mac’s keyboard and mouse to be used (the default) and locking them out.
This button will lock the other Mac’s screen, displaying an all-black background, a huge lock icon, and the text you enter after clicking this button. Note that there’s a minor bug here; you’ll actually see the name of a variable that Apple left in the text field, too—so if you type “Using remotely,” the displayed message will be “Using remotelylockedByString.” This button is off by default, meaning the other Mac’s screen displays what you’re doing.
Click this button to capture the remote Mac’s screen to a local file. You’ll capture the full screen, and the system will ask you to pick a name and save location for the file.
Toggle between windowed (the default) and full screen modes. In full screen mode, the toolbar floats in the top left of the screen. To exit full screen mode, click the “X” button on the toolbar.
Not really a button at all, this is the quality slider. If you’re finding that screen updates are going slowly, for instance, you can reduce the quality—all the way down to a badly dithered black-and-white representation—to speed things up.
You might run into the occasional glitch with some of these features—like the extra text displayed in the lock screen mode—but for the most part, they work quite well. You can customize the toolbar as you would in any app, too. Feel free to use Command-drag to rearrange the icons, for instance. The only thing you can’t do is drag the default set back into the toolbar. If you do that, you’ll lose all your custom buttons. Obviously, that’s also the easiest way to undo this hint; just pick View -> Customize Toolbar, and then drag the default set up onto the toolbar. But after trying screen sharing with these new features, I have no intent to give up the added functionality!