Closed Bug 144263 Opened 23 years ago Closed 12 years ago

Need backend for mimetype plug-in association

Categories

(Core Graveyard :: Plug-ins, defect, P2)

defect

Tracking

(Not tracked)

RESOLVED INCOMPLETE
mozilla1.5alpha

People

(Reporter: rubydoo123, Unassigned)

References

Details

(Keywords: topembed+, Whiteboard: [Plug-in Mgr][PL:BRANCH],adt_a3)

Need to support a mechanism to allow mimetype assocaition with a particular plug-in.
Priority: -- → P2
Whiteboard: [ADT1+] [PL RTM] [Plug-in Mgr]
Target Milestone: --- → mozilla1.0
How is this going to interact with the MIME type mappings in Prefs/Navigator/Helper Apps?
There are two ideas I have so far: 1. Use nsIMIMEDataSource and add const usePlugin=5 to nsMIMEInfoHandleAction in nsIMIMEInfo. Possibly use the same mimetypes.rdf or make a new plugin_mimetypes.rdf. For each nsIMIMEInfo, create a nsPluginTag from that info or DLL pointed to, if possible, and give it priority over any "scanned" plugins found during plugins.refresh(). An embedder or app UI could provide these mappings similar to the way the helper apps dialog works today. They can already get exisiting mappings from the DOM navigator array. We could possibly even ship with certain plugins in a white/black list. (Real in components on white list and Beatnik on black list, black list means preferredApplicationHandler = nsnull) 2. Make the DOM object navigator.mimetypes[0].enabledPlugin writeable (and report correctly when read) such that one could choose which plugin was mapped to which mime type by simple assignment. We'd still need some way to internally store this info, possibly in the appreg or prefs. Comments, ideas, suggestions?
Could you please coordinate this with Bill Law?
What modifications to nsIMIMEInfo would need to be made for solution #1, other than the constant definition?
If a separate data source is used for embedded plugins vs. helper apps, then I think we can swing by with only the constant change. If the same data source is used then I think nsIMIMEInfo will need a new attribute for a default embedded plugin handler.
Whiteboard: [ADT1+] [PL RTM] [Plug-in Mgr] → [PL RTM] [Plug-in Mgr]
Target Milestone: mozilla1.0 → mozilla1.1alpha
Whiteboard: [PL RTM] [Plug-in Mgr] → [Plug-in Mgr]
Blocks: 125168
Blocks: 149705
*** Bug 141402 has been marked as a duplicate of this bug. ***
Blocks: 144044
We really need a good plug-in manager back-end. Hopefully the fix for this bug will also superceed any for bug 109739. We need to get away from using the fragile application registry.
Severity: critical → normal
Whiteboard: [Plug-in Mgr] → [Plug-in Mgr][PL2:P1]
Target Milestone: mozilla1.1alpha → mozilla1.2beta
Target Milestone: mozilla1.2beta → mozilla1.3alpha
--->serge plug-in manager work
Assignee: peterl → serge
*** Bug 88114 has been marked as a duplicate of this bug. ***
moving to 1.4 beta, plug-in branch work
Whiteboard: [Plug-in Mgr][PL2:P1] → [Plug-in Mgr][PL:BRANCH]
Target Milestone: mozilla1.3alpha → mozilla1.4beta
-->peterl Okay, new idea: Use the existing nsIDOMPlugin/sArry and nsIDOMMimeType/sArray since it provides lots of identification info about the plugin but have new interfaces (frozen for embedders) that could be QI'ed to for controling these objects.
Assignee: serge → peterl
Blocks: 19118
QA Contact: shrir → bmartin
Keywords: topembed
Discussed in edt. Plussing.
Keywords: topembedtopembed+
Whiteboard: [Plug-in Mgr][PL:BRANCH] → [Plug-in Mgr][PL:BRANCH],adt_a3
Target Milestone: mozilla1.4beta → mozilla1.5alpha
*** Bug 150990 has been marked as a duplicate of this bug. ***
Assignee: peterl-bugs → nobody
QA Contact: bmartin → plugins
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → INCOMPLETE
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.