Friday, September 25, 2009

Fixing the Apple Remote in Snow Leopard

I've seen many complaints about the behavior of the Apple Remote since the Snow Leopard (OS X 10.6), so without getting technical on the cause of the problem, here's a way to work around the problem.

Problem

  • Pressing the 'Menu' button on the Apple Remote launches Front Row.
  • Pressing the 'Play/Pause' launches iTunes.
  • Button events go to both iTunes/Front Row as well as the application you're REALLY wanting to control (like VLC, Hulu, etc.)
Solution

Part 1: Stop Front Row from Launching

As root, edit /System/Library/LaunchAgents/com.apple.RemoteUI.plist and replace the contents of the file with this:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Disabled</key>
<true/>
</dict>
</plist>
Reboot.

Part 2: Stop iTunes from Playing Songs

Open iTunes. Create an empty playlist (call it 'Empty' - makes sense). Minimize iTunes.

Rollback

So you want to put things back to normal. Well, here's the original
contents of /System/Library/LaunchAgents/com.apple.RemoteUI.plist:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.apple.RemoteUI</string>
<key>ProgramArguments</key>
<array>
<string>/System/Library/CoreServices/Front Row.app/Contents/MacOS/Front Row</string>
</array>
<key>MachServices</key>
<dict>
<key>com.apple.RemoteUI</key>
<true/>
</dict>
</dict>
</plist>
Put that file back to normal and reboot. Happiness ensues.

1 comment:

  1. This didn't fix the volume issue did it? pressing up/down on the remote lowers/raises the volume. If you are using an app that needs up/down then you need to turn those off too.

    The brute force way is as to delete /System/Library/LoginPlugins/BevelServices.loginPlugin

    Maybe there is something inside there that can be tweeked to just turn of the remote and not all of it?

    ReplyDelete