[Project_owners] It's time to make your extensions compatible with SeaMonkey 2.0!

Philip Chee philip at aleytys.pc.my
Sun Oct 25 07:31:28 PDT 2009


Hi there fellow extension authors!

Phil Chee here. Some of you may know me as the project owner of the
Flashblock, Console², and xSidebar extensions. Others may know that I am
also an active SeaMonkey developer. For the last few years I have also
been running an extension porting service
<http://forums.mozillazine.org/viewtopic.php?t=500361> to port Firefox
and Thunderbird extensions to SeaMonkey 1.x and lately to the imminent
SeaMonkey 2.0. To date I've ported over 100 extensions to SeaMonkey.

When SeaMonkey 2.0 is released this Tuesday, making your extensions
compatible with SeaMonkey will be dead easy. We now use the same
extension manager as Firefox 3.5.4. which means getting your Firefox or
Thunderbird extension working in SeaMonkey could be as easy as 1-2-3:

1. Adding a compatibility section to your install.rdf.
2. In your chrome.manifest, overlay
chrome://navigator/content/navigator.xul.
3. Adjust a few item IDs in your overlay that are different with
Firefox's browser.xul.

See <https://developer.mozilla.org/en/Extensions_support_in_SeaMonkey_2>
for the details.

Thunderbird extensions are even easier since almost all our chrome URLs
are identical. In fact almost all the Thunderbird extension articles on
https://developer.mozilla.org
<https://developer.mozilla.org/en/Extensions/Thunderbird> will apply to
the MailNews component in SeaMonkey including techniques such as
creating custom columns
<https://developer.mozilla.org/en/Extensions/Thunderbird/Creating_a_Custom_Column>.

We use the same toolkit version (1.9.1.4) as Firefox, so all (or almost
all) the toolkit APIs that you have come to know and love are available
to you including the download manager APIs (although our front end UI is
decidedly different), Places History (but not Places Bookmarks as we are
still using the Firefox 2.0 bookmarks API) and of course our own version
of FUEL which we call SMILE
(<https://developer.mozilla.org/en/Toolkit_API/SMILE>)

On the front end we now support the same customizable toolbars as
Firefox and Thunderbird do. In fact some of the improvements I made when
implementing customizable toolbars in SeaMonkey have been (or are in the
process of being) back-ported to Firefox and Thunderbird so we are
actually slightly leading the pack here. To create a toolbar button for
SeaMonkey you should follow the exact same steps as in Firefox here
<https://developer.mozilla.org/en/Creating_toolbar_buttons> and here
<https://developer.mozilla.org/en/Custom_Toolbar_Button/Code_Samples>.

Still leary of porting your extension to SeaMonkey 2.0? Have a look at
the list of extensions I and my friends have ported to SeaMonkey:
1. Firefox <http://xsidebar.mozdev.org/modifiedmisc.html>
2. Thunderbird <http://xsidebar.mozdev.org/modifiedmailnews.html>

If you see your extension listed here this means that I've already done
all the hard work for you so you don't have any excuses left! If you
don't I am usually available to answer your questions in
irc://moznet/extdev where I go by the nick of 'Ratty'
<http://weblogs.mozillazine.org/seamonkey/archives/2009/10/seamonkey_2_con_1.html>.
I am also active in the Mozillazine extension development forum
<http://forums.mozillazine.org/viewforum.php?f=19> and of course I
monitor the mozilla.dev.extensions and the public.mozdev.project-owners
newsgroups.

So what are you waiting for? SeaMonkey 2.0 is coming out next week, it's
time to get cracking!

Phil

-- 
Philip Chee <philip at aleytys.pc.my>, <philip.chee at gmail.com>
http://flashblock.mozdev.org/ http://xsidebar.mozdev.org
Guard us from the she-wolf and the wolf, and guard us from the thief,
oh Night, and so be good for us to pass.
[ ]If all else fails, read the directions!
* TagZilla 0.066.6



More information about the Project_owners mailing list