Closed Bug 222049 Opened 21 years ago Closed 16 years ago

taskOverlay.xul should include chrome://communicator/locale/tasksOverlay.dtd

Categories

(Thunderbird :: Mail Window Front End, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 386908
Thunderbird0.6

People

(Reporter: BijuMailList, Unassigned)

References

()

Details

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6a) Gecko/20031002 Firebird/0.7+ Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6a) Gecko/20031002 Firebird/0.7+ Various extension developers are facing problem because of this... see <snip> In calendar, we call taskOverlay.xul to add the standards Suite element in the calendar Window. This file is present in the Thunderbird hierarchy but this file should includes the DTD file chrome://communicator/locale/tasksOverlay.dtd which is not present in Thunderbird. </snip> There are many other examples Reproducible: Always Steps to Reproduce: 1. install http://downloads.mozdev.org/quicktools/QuickTools_Tb.xpi 2. install calendar from http://www.mozilla.org/projects/calendar/ 3. now try Tools/Calendar
In fact, it will be sufficient to include the DTD file from chrome://communicator/locale/tasksOverlay.dtd. Indeed, other files are loaded when tasksOverlay.xul is loaded. At least, editorTasksOverlay.xul is loaded through dynamic overlay defined in chrome/overlayinfo/communicator/content/overlays.rdf. This other file misses also its DTD definition. I try to run calendar, after the suppression of TasksOverlay.xul of Thunderbird hierarchy and cleaning in chrome/overlayinfo/communicator/content/overlays.rdf and it works well... ....
Sorry the first line of previous comment should be : In fact, it will NOT be sufficient....
Blocks: 227681
biju, so all you need from me is to make sure tasksOverlay.dtd gets loaded with the overlay file? Any specific strings youare looking for in that file? Trying to get a handle on why you need a dtd file. I would think the overlay is all you need to hook into things.
Target Milestone: --- → Thunderbird0.5
The tasksOverlay.xul file try to load the DTD file chrome://communicator/locale/tasksOverlay.dtd. This DTD file is used to define the strings which appears in the interface (it is language specific). In tasksOverlay, those strings are menu labels or key to access to commands (i.e. &javaScriptConsoleCmd.label;). So, it is not coherent to include tasksOverlay.xul without including tasksOverlay.dtd (the first one is not usefull without the second one). The problem in thunderbird is that that this incoherence exists. You have two possibilities to correct this bug. 1. You can either remove the following files from the hierarchy : - communicator/content/tasksOverlay.js - communicator/content/tasksOverlay.xul - editor/content/editorTasksOverlay.xul and remove the following lines from editor/content/contents.rdf <!-- editor tasks overlay --> <RDF:Seq about="chrome://communicator/content/tasksOverlay.xul"> <RDF:li>chrome://editor/content/editorTasksOverlay.xul</RDF:li> </RDF:Seq> 2. Or you can choose to support the tasksOverlay.xul file and you then would have to include the file chrome://communicator/locale/tasksOverlay.dtd in the thunderbird hierarchy (this file in present in Firebird and The Suite). After some testings, I could say that both solutions are correct for the extension support. If the files are not available in the hierarchy they will not be loaded by the extension, modifying the application support, but the extension will run without errors. Nevertheless, the second solution is preferable for large extensions like calendar.
I prefer the second solution. I tried following downloaded http://ftp.mozilla.org/pub/mozilla.org/thunderbird/nightly/2003-12-11-trunk/thunderbird-win32.zip added tasksOverlay.dtd from a old mozilla build to en-US-mail.jar\locale\en-US\communicator\tasksOverlay.dtd In mail.jar\content\messenger\messenger.xul added <?xul-overlay href="chrome://communicator/content/tasksOverlay.xul"?> commented line 63 of mail.jar\content\messenger\mailCore.js ie, const nsIWindowMediator = Components.interfaces.nsIWindowMediator; because it is already defined in mail.jar\content\communicator\tasksOverlay.js Tested and it looks fine to me except for "JavaScript Console" menu items is repeating and there is a "Download Manager" menu item which is not functioning. If possible we could make this as "Attachment manager"
moving these bugs to 0.6
Target Milestone: Thunderbird0.5 → Thunderbird0.6
Scott any progress, we are past 0.6?
QA Contact: front-end
Assignee: mscott → nobody
Any thoughts on how this can be moved forward?
Sideways beats forward.
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.