IC-Switch on Jaguar
Yesterday I finally installed Jaguar, and found that although IC-Switch was still working apparently fine, its changes were no longer taken into account.
After some debugging, I found that in Jaguar, InternetConfig's helpers defined from System Preferences are no longer stored in com.apple.internetconfig.plist, but in com.apple.LaunchServices.plist. And for some reason, changes done from IC-Switch are still stored in com.apple.internetconfig.plist. That puzzles me, because IC-Switch doesn't edit this file itself, it calls InternetConfig.
OTOH, this change makes sense, because in Mac OS X 10.1, InternetConfig was still using creator codes, that are deprecated in Mac OS X. Now it uses bundle identifiers (the modern way). And it's good news for users, for several reasons (one is that InternetConfig was unable to distinguish two different versions of an application. Now it does).
But it also means that a consequent part of IC-Switch may have has to be rewritten. I didn't expect this and I don't know when I'll have time to do it. :-(
So, here's the plan:
- IC-Swith 1.1 (in beta, at the moment) will be the last version to work on Mac OS X 10.1.x and it won't support Jaguar;
- IC-Switch 2.0 will require Jaguar.
I've also found a bit more about the problem itself: it occurs only with bundle applications. That is IC-Switch will work fine if the application you select doesn't have a "Show Package Contents" item in the Finder's contextual menu. This definitely is a bug or an undocumented change in InternetConfig on Jaguar. So the next version of IC-Switch may still be 1.1 rather than 2.0.