Closed
Bug 611430
Opened 14 years ago
Closed 14 years ago
ChromeML and SkinML support removed from nsXREDirProvider.cpp breaking chromelist extension
Categories
(Firefox :: Extension Compatibility, defect)
Firefox
Extension Compatibility
Tracking
()
RESOLVED
WONTFIX
People
(Reporter: ignisvulpis, Unassigned)
References
Details
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 Build Identifier: Mozilla/5.0 (Windows NT 6.1; rv:2.0b8pre) Gecko/20101111 Firefox/4.0b8pre The addon chromelist that MDN recommends does not work in Firefox4. The code that makes getting the properties ChromeML and SkinML to work in the directory service was removed. Here http://mxr.mozilla.org/mozilla1.9.2/source/toolkit/xre/nsXREDirProvider.cpp#702 in 1.9.2 the code is there but it is missing in mozilla-central. http://mxr.mozilla.org/mozilla-central/source/toolkit/xre/nsXREDirProvider.cpp#623 Reproducible: Always Steps to Reproduce: 1. Install chromelist in Firefox4 2. Open the chromelist window 3. The window remains empty, the console shows exeptions thrown Actual Results: The chrome list window remains empty, the console shows exeptions thrown Expected Results: chrome list window shows components and xul and all the other things chromelist normaly shows. The lines that stopped working are in : http://code.google.com/p/chromelist/source/browse/trunk/content/lib/parser.js#119 and in http://code.google.com/p/chromelist/source/browse/trunk/content/lib/parser.js#122 var manifestEnum = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("ChromeML", Components.interfaces.nsISimpleEnumerator); The code repository for chromelist is here: http://code.google.com/p/chromelist/ The Chrome List addon is here: https://addons.mozilla.org/en-US/firefox/addon/4453/
Reporter | ||
Comment 1•14 years ago
|
||
ChromeML and SkinML support was removed here: http://hg.mozilla.org/mozilla-central/rev/635937a6a8ef by Benjamin Smedberg. Why?
Comment 2•14 years ago
|
||
Cross-referencing http://code.google.com/p/chromelist/issues/detail?id=46 This doesn't seem to be a widely used API, and major releases are allowed to break extensions. Don't know why this particular change was made, probably code simplification. Benjamin should decide if this is a valid problem.
Blocks: data-driven-compreg
Summary: ChromeML and SkinML support removed from nsXREDirProvider.cpp → ChromeML and SkinML support removed from nsXREDirProvider.cpp breaking chromelist extension
Version: unspecified → Trunk
Comment 3•14 years ago
|
||
Indeed, manifests are registered with XRE_AddManifestLocation now.
Status: UNCONFIRMED → RESOLVED
Closed: 14 years ago
Resolution: --- → WONTFIX
Reporter | ||
Comment 4•14 years ago
|
||
Yes, manifests are registered with XRE_AddManifestLocation but there is no API to access the locations. How is an extension expected to enumerate the manifest locations? There is no access api for sModuleLocations. https://mxr.mozilla.org/mozilla-central/source/xpcom/components/nsComponentManager.cpp#325 Could you add that?
Comment 5•14 years ago
|
||
No, but I'd take a patch.
Comment 6•13 years ago
|
||
Why was this marked as WONTFIX when the question about how to enumerate manifest locations is not clarified?
Comment 7•13 years ago
|
||
That's a different bug. There is currently no way to enumerate them.
You need to log in
before you can comment on or make changes to this bug.
Description
•