Closed Bug 303134 Opened 19 years ago Closed 19 years ago

Use OS X's Launch Services API instead of Internet Config

Categories

(Core :: Networking: File, defect)

PowerPC
macOS
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 301731

People

(Reporter: pgauriar, Assigned: darin.moz)

Details

Gecko currently uses the Classic Mac OS Internet Config API to map file
extensions to their default application.  This leads to various bugs in
Gecko-based Mac apps, e.g. zip files are handled by StuffIt Expander in Tiger,
even though the OS is set to handle zip files by default.  Switching to the
modern Launch Services API for mapping file extensions (and possibly protocol
handlers) should solve these problems, simplify code, and make Gecko a bit more
future-resistant.

[1]
http://developer.apple.com/documentation/Carbon/Reference/LaunchServicesReference/index.html
[2] http://developer.apple.com/technotes/tn/tn2017.html
I thought we were already using LS ? See for example bug 167773 and
<http://lxr.mozilla.org/seamonkey/source/browser/components/shell/src/nsMacShellService.cpp>.
ICLaunchURL isn't used anymore.
A quick search of the source for ICLaunchURL gives us:

http://lxr.mozilla.org/seamonkey/source/uriloader/exthandler/mac/nsInternetConfigService.cpp#95

That file seems littered with InternetConfig code, particularly in
GetMappingForMIMEType and associated methods.  
(In reply to comment #2)
> A quick search of the source for ICLaunchURL gives us:
> 
>
http://lxr.mozilla.org/seamonkey/source/uriloader/exthandler/mac/nsInternetConfigService.cpp#95
> 
> That file seems littered with InternetConfig code, particularly in
> GetMappingForMIMEType and associated methods.  

The method you point to (nsInternetConfigService::LaunchURL) uses Launch
Services. It's even pointed out in the comment :-)

There are still references to a few IC-methods, left behind by bug 169667. The
CVS-log mentions "use LaunchServices APIs instead of InternetConfig APIs when
appropriate".
CCing pink, as he suggested that this would be an appropriate bug to file.
we use launch services for opening a file, but i thought as far as assigning it
a type/creator when we downloaded it, we still used internet config.

i could be totally mistaken, it's been a while.

regardless, something in the OS is telling us to use stuffit for zip files when
obviously that's not right. Even on a clean install of tiger on my gf's laptop,
.zip files are set to open with stuffit when downloaded from camino (so it's not
a upgrade migration issue).
It would seem like pink is talking about
nsInternetConfigService::FillMIMEInfoForICEntry:
http://lxr.mozilla.org/seamonkey/source/uriloader/exthandler/mac/nsInternetConfigService.cpp#279
Isn't this a dup of bug 301731?
Depends on: 301731

*** This bug has been marked as a duplicate of 301731 ***
Status: NEW → RESOLVED
Closed: 19 years ago
No longer depends on: 301731
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.