Mozilla DevCenter
oreilly.comSafari Books Online.Conferences.
advertisement

Sponsored Developer Resources

Atom 1.0 Feed RSS 1.0 Feed RSS 2.0 Feed

Related O'Reilly Books





What Is Firefox What Is Firefox
Brian King provides a brief look at Firefox's origins and evolution, and then dives into its support for web standards like CSS and XML, its debugging and extension capabilities, and some cool new features in the upcoming 1.5 release. If you're considering a switch to Firefox, this article may help make the decision for you.


Mozilla as a Development Platform: An Interview with Axel Hecht  Axel Hecht is a member of Mozilla Europe's board of directors, and a major contributor to the Mozilla project. At O'Reilly's European Open Source Convention (October 17-20), Dr. Hecht will be talking about Mozilla as a development platform. O'Reilly Network interviewed Dr. Hecht to find out if the long-held dream of Mozilla as a development platform was about to come true.   [O'Reilly Network]

A Firefox Glossary  Brian King, with some help from Nigel McFarlane, covers everything from about:config to "zool" in this fun, fact-filled Firefox glossary. It's by no means exhaustive, but you'll find references to specific chapters or hacks throughout the glossary to Nigel's book, Firefox Hacks. When you're ready to dig deeper, check out his book.   [O'Reilly Network]

Important Notice for Mozilla DevCenter Readers About O'Reilly RSS and Atom Feeds  O'Reilly Media, Inc. is rolling out a new syndication mechanism that provides greater control over the content we publish online. Here's information to help you update your existing RSS and Atom feeds to O'Reilly content.  [Mozilla DevCenter]

Hacking Firefox  This excerpt from Firefox Hacks shows you how to use overlays (essentially hunks of UI data) to make something you want to appear in the Firefox default application, perhaps to carry out a particular function of your extension. For example, you might want to add a menu item to the Tools menu to launch your extension. Overlays allow existing Firefox GUIs to be enhanced.   [O'Reilly Network]

Mozile: What You See is What You Edit  Most modern browsers don't allow you to hit "edit" and manipulate content as easily as you view it, WYSIWYG-style. Mozile, which stands for Mozilla Inline Editor, is a new Mozilla plug-in for in-browser editing. This article by Conor Dowling provides an overview of Mozile and what in-browser editing means.
  [ Mozilla DevCenter]

The Future of Mozilla Application Development  Recently, mozilla.org announced a major update to its development roadmap. Some of the changes in the new document represent a fundamental shift in the direction and goals of the Mozilla community. In this article, David Boswell and Brian King analyze the new roadmap, and demonstrate how to convert an existing XPFE-based application into an application that uses the new XUL toolkit. David and Brian are the authors of O'Reilly's Creating Applications with Mozilla.   [Mozilla DevCenter]

Remote Application Development with Mozilla, Part 2  In their first article, Brian King, coauthor of Creating Applications with Mozilla, and Myk Melez looked at the benefits of remote application development using Mozilla technologies such as XUL and web services support. In this article, they present a case study of one such application, the Mozilla Amazon Browser, a tool for searching Amazon's catalogs.   [Mozilla DevCenter]

Remote Application Development with Mozilla  This article explores the uses for remote XUL (loaded from a Web server), contrasts its capabilities with those of local XUL (installed on a user's computer), explains how to deploy remote XUL, and gives examples of existing applications.   [Mozilla DevCenter]

Mozdev.org Made Easy  Now that mozilla.org is about to release Mozilla 1.2 and Netscape has come out with the latest version of their own Mozilla-based browser, Netscape 7, this is a great time to see what other people are building with Mozilla's cross-platform development framework. Here's a little history about, and a roadmap to, mozdev.org.   [Mozilla DevCenter]

XML Transformations with CSS and DOM  Mozilla permits XML to be rendered in the browser with CSS and manipulated with DOM. If you're already familiar with CSS and DOM, you're more than halfway to achieving XML transformations in Mozilla. This article demonstrates how to render XML in the browser with a minimum of CSS and JavaScript.   [Mozilla DevCenter]

Roll Your Own Browser  Here's a look at using the Mozilla toolkit to customize, or even create your own browser.   [Mozilla DevCenter]

Let One Hundred Browsers Bloom  In this article, David Boswell, coauthor of Creating Applications with Mozilla surveys some of the more interesting, and useful, Mozilla-based browsers available now.   [Mozilla DevCenter]

Using the Mozilla SOAP API  With the release of Mozilla 1.0, the world now has a browser that supports SOAP natively. This article shows you how Web applications running in Mozilla can now make SOAP calls directly from the client without requiring a browser refresh or additional calls to the server.   [Web Development DevCenter]





Today's News
December 04, 2009

Deb Richardson: Planet Mozilla policies wiki page

planetmoPlanet Mozilla is a long-standing and incredibly important source for news and information about the Mozilla Project and community. For years, Planet has operated under a slowly evolving set of unwritten-but-generally-understood policies. In an effort to avoid potential misunderstandings and issues, however, The Planet Mozilla team has finally taken the time to write up and post these policies to the Mozilla Wiki:

Planet Mozilla policies

The policies are minimal and relatively straightforward, but if you have any questions please feel free to leave a comment here or to email any/all of the Planet Mozilla team (listed on the wiki page).

[Source: Planet Mozilla]

Rumbling Edge - Thunderbird: Thunderbird 3 RC 2 Released

Changelog for previous release (Thunderbird 3 RC 1) | Changelogs for other Thunderbird releases

Released on 01 Dec 09, and this changelog was last updated on 04 Dec 09.

Thunderbird 3 RC 2 has been released. Release notes are available. This post lists the improvements in Thunderbird 3 RC 2 over Thunderbird 3 RC 1. This list encompasses almost every single known fix that went into this release, but excludes platform-wide fixes. Do check out the known issues as well.

Now based on Gecko 1.9.1.5 platform version.

Changes in Thunderbird 3 RC 2: (4)

Thunderbird-specific: (3)

  • Fixed: 516950 - [autoconfiguration] “Download new messages automatically” should be checked/activated/enabled by default (at least for POP3 accounts!)
  • Fixed: 531278 - Theme is labeled as version 2.0
  • Fixed: 531502 - “Download More Dictionaries” fails to open webpage correctly

MailNews Core: (1)

  • Fixed: 494014 - shutdown hang, high cpu, no open imap connections

Windows builds Official Windows installer

Linux builds Official Linux (i686)

Mac builds Official Mac (Universal binary)

[Source: Planet Mozilla]

Rumbling Edge - Thunderbird: 2009-12-03 Calendar 1.0 builds

Current Sunbird (0.9) | Last planned Sunbird (1.0 Beta 1) | Previous releases | Mercurial source bundles (mozilla-central & comm-central)

MailNews Core: (6)

  • Fixed: 529326 - Create indexes for the local calendar cache
  • Fixed: 529853 - Creation of local calendar fails (DB Error no such column: recurrence_id_tz)
  • Fixed: 530100 - Bump version numbers for 1.0b1 release
  • Fixed: 530842 - Upgrade Sunbird/Lightning 0.9 to 1.0pre fails [error: no such table: idx_cal_alarms_cal_id_item_id_recurrence_id_recurrence_id_tz]
  • Fixed: 531028 - Linux: Delete Task button in Task view is missing its icon
  • Fixed: 531418 - Allow building lightning with all locales at once

Outstanding bugs (marked blocking-calendar1.0+) with [needed beta] in whiteboard: (1)

  • Since 2009-11-20: 530096 - Tracking bug for Sunbird/Lightning 1.0[ab]1 release

One can get the latest Lightning .xpis here.

Sunbird builds:

Windows builds Official Windows, Official Windows installer

Linux builds Official Linux (i686) (2009-11-27 builds)

Mac builds Official Mac (Universal binary)

[Source: Planet Mozilla]

Rumbling Edge - Thunderbird: 2009-12-03 Thunderbird Trunk builds

Current TB pre-release – 3 Beta 4 | Current TB pre-release – 3 RC 1 | Previous releases | Mercurial source bundles (mozilla-central & comm-central)

The following lists include both bugs that are being fixed in TB3 final as well as bugs fixed in the next version of Thunderbird (3.0.x or 3.1?).

Thunderbird-specific: (16)

  • Fixed: 58140 - save multiple messages as individual files in directory
  • Fixed: 271222 - Implement “Entire message filter” quick search feature (can’t filter for whole msg fulltext, need missing quicksearch option)
  • Fixed: 450861 - Add a “Tools > Downloads” menu item to open the Download Manager window (download manager is completely inaccessible via UI)
  • Fixed: 489711 - quicksearch hangs thunderbird when ’sort by’ is threaded and folder is large(3200 messages)
  • Fixed: 503794 - Unable to remove an attachment
  • Fixed: 511682 - Remove chromedir attributes, use -moz-locale-dir instead
  • Fixed: 516950 - [autoconfiguration] “Download new messages automatically” should be checked/activated/enabled by default (at least for POP3 accounts!)
  • Fixed: 524432 - Tracking bug for build and release of Thunderbird 3.0 RC1 (3.0rc1)
  • Fixed: 527232 - Unnecessary vertical space between the “Use a master password” checkbox and its description
  • Fixed: 530239 - Can’t see that there are more recipients, and can’t expand: “more” cut off by buttons
  • Fixed: 530618 - remove aol personal file cabinet aka pfc code
  • Fixed: 530723 - Disable ipc, since it requires libxul and we can’t build that way (yet)
  • Fixed: 531020 - 3.0 release notes: 404 Error
  • Fixed: 531278 - Theme is labeled as version 2.0
  • Fixed: 531502 - “Download More Dictionaries” fails to open webpage correctly
  • Fixed: 531922 - Search quicktext “Subject or Sender” doesn’t adapt to “Sent” folder (functionality does)

MailNews Core: (10)

  • Fixed: 277043 - Wrap column ignored for messages composed as HTML, sent as Plain
  • Fixed: 387502 - Mailboxes are allowed to grow larger than 4gb in size
  • Fixed: 494014 - shutdown hang, high cpu, no open imap connections
  • Fixed: 521293 - Port |Bug 515777 – move css files, hiddenWindow.html to jar| to comm-central (apps)
  • Fixed: 521867 - Deleting/Detach attachment issue with imap
  • Fixed: 529718 - static builds error with win7 SDK
  • Fixed: 530031 - Fix JS strict warning in nsMsgTraitService.js
  • Fixed: 530032 - xpcshell-tests in /mailnews/db/ fail on JS strict mode
  • Fixed: 530034 - xpcshell-tests in /mailnews/compose fail on JS strict mode
  • Fixed: 531283 - Fix up building on 1.9.2 with jemalloc and allow building jemalloc with VC9 SP1

No outstanding bugs (marked blocking-thunderbird3+ with Target Milestone of Thunderbird 3.0rc1).

Windows builds Official Windows, Official Windows installer (discussion)

Linux builds Official Linux (i686)

Mac builds Official Mac (Universal binary)

[Source: Planet Mozilla]

Rumbling Edge - Thunderbird: Thunderbird 3 RC 2 Released

Changelog for previous release (Thunderbird 3 RC 1) | Changelogs for other Thunderbird releases

Released on 01 Dec 09, and this changelog was last updated on 04 Dec 09.

Thunderbird 3 RC 2 has been released. Release notes are available. This post lists the improvements in Thunderbird 3 RC 2 over Thunderbird 3 RC 1. This list encompasses almost every single known fix that went into this release, but excludes platform-wide fixes. Do check out the known issues as well.

Now based on Gecko 1.9.1.5 platform version.

Changes in Thunderbird 3 RC 2: (4)

Thunderbird-specific: (3)

  • Fixed: 516950 - [autoconfiguration] “Download new messages automatically” should be checked/activated/enabled by default (at least for POP3 accounts!)
  • Fixed: 531278 - Theme is labeled as version 2.0
  • Fixed: 531502 - “Download More Dictionaries” fails to open webpage correctly

MailNews Core: (1)

  • Fixed: 494014 - shutdown hang, high cpu, no open imap connections

Windows builds Official Windows installer

Linux builds Official Linux (i686)

Mac builds Official Mac (Universal binary)

[Source: Planet Mozilla]

Rumbling Edge - Thunderbird: 2009-12-03 Calendar 1.0 builds

Current Sunbird (0.9) | Last planned Sunbird (1.0 Beta 1) | Previous releases | Mercurial source bundles (mozilla-central & comm-central)

MailNews Core: (6)

  • Fixed: 529326 - Create indexes for the local calendar cache
  • Fixed: 529853 - Creation of local calendar fails (DB Error no such column: recurrence_id_tz)
  • Fixed: 530100 - Bump version numbers for 1.0b1 release
  • Fixed: 530842 - Upgrade Sunbird/Lightning 0.9 to 1.0pre fails [error: no such table: idx_cal_alarms_cal_id_item_id_recurrence_id_recurrence_id_tz]
  • Fixed: 531028 - Linux: Delete Task button in Task view is missing its icon
  • Fixed: 531418 - Allow building lightning with all locales at once

Outstanding bugs (marked blocking-calendar1.0+) with [needed beta] in whiteboard: (1)

  • Since 2009-11-20: 530096 - Tracking bug for Sunbird/Lightning 1.0[ab]1 release

One can get the latest Lightning .xpis here.

Sunbird builds:

Windows builds Official Windows, Official Windows installer

Linux builds Official Linux (i686) (2009-11-27 builds)

Mac builds Official Mac (Universal binary)

[Source: Planet Mozilla]

Rumbling Edge - Thunderbird: 2009-12-03 Thunderbird Trunk builds

Current TB pre-release – 3 Beta 4 | Current TB pre-release – 3 RC 1 | Previous releases | Mercurial source bundles (mozilla-central & comm-central)

The following lists include both bugs that are being fixed in TB3 final as well as bugs fixed in the next version of Thunderbird (3.0.x or 3.1?).

Thunderbird-specific: (16)

  • Fixed: 58140 - save multiple messages as individual files in directory
  • Fixed: 271222 - Implement “Entire message filter” quick search feature (can’t filter for whole msg fulltext, need missing quicksearch option)
  • Fixed: 450861 - Add a “Tools > Downloads” menu item to open the Download Manager window (download manager is completely inaccessible via UI)
  • Fixed: 489711 - quicksearch hangs thunderbird when ’sort by’ is threaded and folder is large(3200 messages)
  • Fixed: 503794 - Unable to remove an attachment
  • Fixed: 511682 - Remove chromedir attributes, use -moz-locale-dir instead
  • Fixed: 516950 - [autoconfiguration] “Download new messages automatically” should be checked/activated/enabled by default (at least for POP3 accounts!)
  • Fixed: 524432 - Tracking bug for build and release of Thunderbird 3.0 RC1 (3.0rc1)
  • Fixed: 527232 - Unnecessary vertical space between the “Use a master password” checkbox and its description
  • Fixed: 530239 - Can’t see that there are more recipients, and can’t expand: “more” cut off by buttons
  • Fixed: 530618 - remove aol personal file cabinet aka pfc code
  • Fixed: 530723 - Disable ipc, since it requires libxul and we can’t build that way (yet)
  • Fixed: 531020 - 3.0 release notes: 404 Error
  • Fixed: 531278 - Theme is labeled as version 2.0
  • Fixed: 531502 - “Download More Dictionaries” fails to open webpage correctly
  • Fixed: 531922 - Search quicktext “Subject or Sender” doesn’t adapt to “Sent” folder (functionality does)

MailNews Core: (10)

  • Fixed: 277043 - Wrap column ignored for messages composed as HTML, sent as Plain
  • Fixed: 387502 - Mailboxes are allowed to grow larger than 4gb in size
  • Fixed: 494014 - shutdown hang, high cpu, no open imap connections
  • Fixed: 521293 - Port |Bug 515777 – move css files, hiddenWindow.html to jar| to comm-central (apps)
  • Fixed: 521867 - Deleting/Detach attachment issue with imap
  • Fixed: 529718 - static builds error with win7 SDK
  • Fixed: 530031 - Fix JS strict warning in nsMsgTraitService.js
  • Fixed: 530032 - xpcshell-tests in /mailnews/db/ fail on JS strict mode
  • Fixed: 530034 - xpcshell-tests in /mailnews/compose fail on JS strict mode
  • Fixed: 531283 - Fix up building on 1.9.2 with jemalloc and allow building jemalloc with VC9 SP1

No outstanding bugs (marked blocking-thunderbird3+ with Target Milestone of Thunderbird 3.0rc1).

Windows builds Official Windows, Official Windows installer (discussion)

Linux builds Official Linux (i686)

Mac builds Official Mac (Universal binary)

[Source: Planet Mozilla]

Frank Hecker: Mozilla Education: Looking back and ahead


I’m currently working on putting together a draft plan for Mozilla Education activities in 2010. I’m a bit blocked on coming up with a coherent plan, so I thought I’d try to unblock myself by blogging my thoughts on the subject. These are informed by the recent feedback on Mozilla Education I solicited from several Mozilla folks, as well as the Mozilla Education 2009 report I wrote earlier. Note that I’m thinking out loud here, so this will be somewhat long and rambling.

Based on the feedback, the first point to address is: What is Mozilla Education, and what are its goals? The people I asked were familiar with what Dave Humphrey has been doing at Seneca College in terms of introducing students to Mozilla, but weren’t clear on what was going on beyond that. So, some explanation: “Mozilla Education” as a program started out as an effort by the Mozilla Foundation to take what was going on at Seneca and try to replicate it at other schools, on the assumption that the Seneca approach was worth replicating. (There seems to be general agreement on this, though as discussed below there are some limitations to this approach.)

The primary goal of Mozilla Education now and going forward is to help grow a new generation of Mozilla contributors by working with students and educators around the world. In the original Mozilla Education planning document we outlined another broader goal around promoting general innovation in education (“help to drive a new wave of participatory, student-led learning in fields like computer science, design and business”). As discussed in the progress report, we’ve since deemphasized that second goal and are now focusing Mozilla Education efforts primarily on the Mozilla project proper.

In the context of this discussion the term contributorcovers anyone who makes a significant positive impact on Mozilla worthy of recognition; this includes both technical and non-technical contributions, anything from doing heavy-duty Gecko hacking to helping out with marketing Firefox. Thus there are multiple types of students and educators who might participate in Mozilla Education, and multiple types of activities directed toward them. To provide a bit more focus, let’s follow the advice of one of the people who provided feedback and discuss 1) what has worked (and not worked) in the past and 2) how we might take what’s worked and establish scalable processes for the future.

The first thing to note is that the Seneca approach–integrating teaching of Mozilla technologies and practices directly into college and university courses–is proving to be somewhat replicable, with several schools and professors now teaching or planning to teach such courses. (See the progress report for a full list.) However the pure Seneca-style approach has some limitations, at least from the point of view of producing core Mozilla contributors: It has been successful in producing good contributors in such areas as build infrastructure and release engineering, but less so in terms of producing contributors who are hard-core Mozilla hackers.

In my opinion this is not so much a failing of the approach as it is a failing of academia: The schools that have been most open to integrating open source development work into the classroom (like Seneca) are the schools that focus more on practical instruction for job-seeking students. The high-end research universities that attract top-quality computer science students are the ones least interested in anything that smacks of vocational education.

Until and unless this situation changes, I suspect that the most realistic approach to growing full-time core Mozilla contributors (i.e., people who are good candidates for employment at the Mozilla Corporation or Mozilla Messaging) is as follows:

  • Continue to promote the Seneca approach to schools that are most likely to be receptive to it, and in particular try to target schools interested in teaching topics like quality assurance through automated testing, continuous integration, and other software engineering practices needed in large-scale projects like Mozilla.
  • For research-focused institutions, pursue a more lightweight approach of encouraging professors to have students do Mozilla-related senior projects and independent study, either based on self-generated ideas or based on tasks previously identified as being good student projects. Note this is lightweight only in the sense that it demands less of the school and its faculty; in practice this approach will be limited by the amount of effort existing Mozilla contributors can devote to helping students.
  • For recruitment of hard-core hackers continue to rely on recruiting students from top schools as Mozilla Corporation or Mozilla Messaging interns, outside the context of the Mozilla Education program proper. In this context it’s easier to justify the amount of time needed to bring such students up to speed.

Moving beyond the issue of growing new core contributors, a second topic is that of encouraging students to make technical contributions outside the context of the core Mozilla code. This could include working on Firefox or Thunderbird add-ons, developing web applications that make use of new Firefox features, working with the various technologies being prototyped by Mozilla Labs, and so on.

In the context of Mozilla Education the Processing for the Web project (based on processing.js) is the primary project of this type thus far, and is proving to be quite successful. Projects like this are somewhat peripheral to the core Mozilla activities around shipping new releases of Firefox, Thunderbird, etc. However they do get more people involved in working with Mozilla technologies and code, help to promote adoption of Mozilla products, and help support other Mozilla activities, whether technical or not. (For example, the Processing for the Web work could be used in the context of the “visualize the (open) web” project proposed as part of Mozilla Drumbeat.)

In my opinion doing projects like Processing for the Web is a useful and scalable approach for two reasons. First, it provides a common focus for lots of student work, so that the limited time of mentors can be leveraged across more people: A mentor can help many students at once, and students can help one another. Second, it leverages the time and expertise of people outside the project (in this case people like Al MacDonald who were already working on processing.js), further lessening the burden placed on core Mozilla contributors.

Are there other possible projects like Processing for the Web that could serve as a focus for student contributions? One possibility is a project around Dehydra, Pork, and similar code analysis and rewriting tools designed for large code bases like Mozilla’s. Like the Processing for the Web project, such a project could leverage an existing community of people outside of Mozilla, including developers working in the GCC project and others developing or working with advanced code analysis tools.

Another way to engage students is the design challenge approach pioneered by Mozilla Labs and then adopted in a Mozilla Education context for the Jetpack for Learning Design Challenge. Design challenges and similar contest-like events have proved successful at attracting student participants, including design students and others who are not programmers at heart. Keys to success include have a fairly tightly focused challenge, along with one or more expert mentors who can help the students realize their ideas.

Because they’re focused on leading-edge work not yet ready for incorporation into standard shipping products, the Mozilla Labs folks have some freedom and time available for running design challenges that other Mozilla core contributors don’t necessarily have. In the context of Mozilla Education running a design challenge would typically finding third party subject matter experts to help with the challenge, which in turns means that challenges would typically require additional funding over and beyond what the Mozilla Foundation spends on the basic Mozilla Education program.

With that in mind, here are my thoughts on how Mozilla Education should approach engaging students to contribute outside the context of the core Mozilla codebase:

  • Sponsor at least three projects in 2010 that can each serve as a focus for engaging larger groups of students:
    • continuation of the Processing for the Web project
    • a new project around tools for analyzing and/or rewriting code, leveraging existing work by Taras Glek and others and done in loose cooperation with the GCC project or others
    • at least one other new project in an area yet to be determined.
  • Start at least one new Mozilla Education design challenge project in 2010, if (and only if) there is a suitable problem (e.g., one that doesn’t overlap with planned Mozilla Labs challenges) and funding can be found.
  • coordinate with Mozilla Labs to cross-promote Labs design challenges to the students involved in Mozilla Education activities, and vice versa.

Thus far I’ve primarily discussed engaging with CS students and others in related IT-centric programs. What about students in other areas, such as design or marketing? My feeling is that in 2010 at least Mozilla Education won’t play a major role in terms of growing core contributors in those areas, primarily because they’re outside the expertise of the main people working on Mozilla Education activities.

However that doesn’t mean that those areas have to be (or can be) ignored from a Mozilla Education point of view. One of the things we discussed in 2009 was the role of the proposed education.mozilla.org web site (currently instantiated as a set of pages on wiki.mozilla.org. We’ve pulled back on some of the more expansive ideas for what that site might become. However I do think it makes sense to use it as a central point from which students can find information on Mozilla activities of potential interest to them. That leads to my final Mozilla Education proposed activity for 2010:

  • Establish and actively maintain a single high-profile page (e.g., www.mozilla.org/education) that can serve as a portal to information about Mozilla activities of potential interest to students, including not only Mozilla Education material but also links to Mozilla Labs design challenges, student internship opportunities, etc.

Those are all my thoughts for now. If you have comments or questions about the above, please let me know. I’ll next boil this down into an actual plan.

Posted in education, mozilla
[Source: Planet Mozilla]

Ehsan Akhgari: My favorite Mercurial extension

What's your favorite Mercurial extension?  Mine is the color extension!
It does all sorts of amazing syntax coloring for you, right on your consoles.  It basically makes all the diff outputs from hg colorized, and also modifies the status and qseries commands output to print the patch names in color based on their status.  And enabling it is as easy as putting the following two lines in your ~/.hgrc.  Of course, you can go all crazy and customize it all, but I find the default choice of colors mostly good (except for underlining stuff which makes them harder to read in my opinion.)

[extensions]
color =

Yes, it doesn't simplify your workflow, and it doesn't really do anything cool, SCM-wise, but trust me, once you enable it and get used to it, you can never go back to the usual dull hg output on your console.

Trackback URL for this post:

http://ehsanakhgari.org/trackback/102
[Source: Planet Mozilla]

Fabien Cazenave: KompoZer Addons Mini How-To

There are two items in my long todo-list that I can’t address properly before KompoZer 0.8 is released:

I won’t be able to work on these items before January 2010, so here’s a very quick how-to for add-on developers. I’ll suppose you’re already familiar with Firefox add-on development, or that you can read the related documentation on MDC.

Install DOM Inspector

I’ve taken the Mozilla 1.8.1 DOM Inspector and adapted it for KompoZer 0.8. You can download it here: inspector-20091201.xpi

I’ve tried to make a quick port of Venkman but I’m not sure it works on KompoZer 0.8 (I confess I don’t use it at all). If you can help me with this, that would be very appreciated.

If you need other developer add-ons for KompoZer 0.8 (Console˛, Event Spy, Extension Developer…), just let me know. If you can take the time to port these add-ons to KompoZer 0.8, that’d be even better. :-)

Set up a development profile

You should add these two lines in the prefs.js file in your profile directory:

 user_pref("browser.dom.window.dump.enabled", true);
 user_pref("nglayout.debug.disable_xul_cache", true);

The first one will show the output of dump() commands to the console. The second one will save you some significant time if your extension is in a separate window or in the sidebar, as you won't have to restart KompoZer to see your changes: modify your code and reopen your window/sidebar, your changes are reloaded.

You can also use the about:config extension to modify these two settings.

UUID / install.rdf

As you may know, KompoZer 0.8 now has a specific UUID:
{20aa4150-b5f4-11de-8a39-0800200c9a66}

This new UUID will prevent many compatibility issues we had with Nvu add-ons. If you know some Nvu extensions that should be ported to KompoZer 0.8, just let me know and I’ll port them as soon as possible.

Your install.rdf file should have this “targetApplication” section:

    <!-- target: KompoZer 0.8.x -->
    <em:targetApplication>
      <Description>
        <em:id>{20aa4150-b5f4-11de-8a39-0800200c9a66}</em:id>
        <em:minVersion>0.7.99</em:minVersion>
        <em:maxVersion>0.8+</em:maxVersion>
      </Description>
    </em:targetApplication>

You can (should) use a readable identifier for your add-on, i.e. something like “myextension@website.tld” instead of a UUID.

Unlike Nvu / KompoZer 0.7.10 extensions, you can use chrome.manifest files instead of contents.rdf ones.

Overlay

If you want to add your extension to the “Tools” menu, I recommend to insert it after the “JavaScript console” item in your overlay file:

<menupopup id="taskPopup">
  <menuitem id="myExtensionID"
                   insertafter="javascriptConsole"
                   command="cmd_openMyExtension" />
</menupopup>

Warning: the ID “javascriptConsole” is case-sensitive. I realized recently that the ID is “javaScriptConsole” for Thunderbird, but it’s too late to change this ID now that KompoZer 0.8 is shipped in most Linux distros.

Getting started: LoremIpsum

Pascal Chevrel has designed a simple but helpful LoremIpsum extension.

This extension is the simplest I can think of: no locales and 10 lines of JavaScript. As such, playing with LoremIpsum should be the easiest way to get started if you want to develop your own add-on for KompoZer.

Another way to get started would be to adapt a Firefox or Thunderbird extension to KompoZer. Beware, KompoZer 0.8 is still based on Gecko 1.8.1 (= Firefox 2 / Thunderbird 2)…

Getting Help

As usual, the #kompozer channel is the best place to get some help for KompoZer-related issues. I’m usually online from noon to midnight, GMT.

[Source: Planet Mozilla]

Madhava Enros: Adblock Plus + Firefox on maemo

Wladimir Palant and Mark Finkle have both blogged the great news already: development builds of Adblock Plus are now compatible with Firefox on Maemo (Fennec), thanks to Wladimir and Fabrice Desré. You can get the latest here and start browsing ad-free while mobile!

In case you want to see, I took some screenshots of the interesting bits of installing and setting up Adblock Plus in Firefox on an N900. Here they are (they've all been scaled down by flickr - you can click and get the large size if you want the full resolutions ones):

When you tap on the most recent .xpi file, Firefox confirms that you want to install.

Screenshot-20091202-104532.png


You get a couple of transient alerts over the course of installation, but this is the one the browser shows when it's done. You can tap on this to go immediately to the add-ons manager, or go later, at your convenience.

Screenshot-20091202-104620.png


In the add-ons manager, you tap to restart the browser.

Screenshot-20091202-104651.png


On restart, Adblock Plus is installed, and in your list.

Screenshot-20091202-105526.png


And tapping "Options" lets you do the configuration in place.

Screenshot-20091202-105632.png


New York Times without ads! Very cool.

Screenshot-20091202-105858.png

[Source: Planet Mozilla]

Mozilla Add-ons Blog: Pre-Add-on-Con Workshop next Thursday

Firefox 3.6 & Mobile are just around the corner. Join us for an open house at Mozilla to get your existing add-ons 3.6 and mobile ready. We’ll have desktop and mobile add-on developers on hand to answer questions and help brainstorm new add-on ideas. And no worries, it won’t be all work and no play!

When: Next Thursday, December 10, 2009
Time: 6-9pm
Where: Mozilla Headquarters
What: Join us for food, drinks, pool and add-on fun!

For more information and to RSVP, please visit our Meetup page.

ShareThis

[Source: Planet Mozilla]

Mozilla IT: Mozilla Scheduled Downtime – 12/03/2009, 6pm – 11pm PST (0100 – 0700 12/04/2009 UTC)

We will have a scheduled maintenance window tonight from 5:00pm to 11:00pm PST. The following changes will take place:

  • 6:00pm PST (0100 UTC) Breakpad upgrade. We will be upgrading the breakpad environment to the next release (bugs fixed). In addition, we will also be making changes to the storage layout to help back-end storage scaling. The crash collector should not be impacted during the upgrade. The reporter however may be unavailable during parts of the upgrade. Please contact us in #breakpad if you notice issues past 9pm. Duration 3 hours.
  • 6:00pm PST (0100 UTC) support.mozilla.com update. We’ll be updating support.mozilla.com to pick up code updates (bug 532232). Duration 2 hours.

Please let me know if you have any reason why we should not proceed with this planned maintenance. As always, we aim to keep downtime to as little as possible, but unexpected complications can arise causing longer downtime periods than expected. All systems should be operational by the end of the maintenance window.

Feel free to comment directly if you see issues past the planned downtime.

[Source: Planet Mozilla]

Murali Nandigama: Please take time to show your 'Appreciation' when it is due ... Have you ever felt that you could have been appreciated for that big thing or the little thing you have done either because you are obligated to do it or because you volunteered to do it out of your own good will?

Did you take time to stop for a second and appreciate the people that surround your life .. be it your partner, kid, friend or colleague for what they are doing to make your life easier OR more importantly ... what they are NOT doing to make your life more miserable than what you are capable of doing all by yourself?

A little bit of appreciation goes a long way ... some times in ways that you never know could have existed .

Don't believe what I a said !!! then please LOOK at this beautiful example

APPRECIATION MAKES A DIFFERENCE

[Source: Planet Mozilla]

Caitlin Looney: Take Five with HTML5: Device Orientation & Geolocation on the Nokia N900


Doug Turner demos device orientation and geolocation on the Nokia N900.

[Source: Planet Mozilla]

More News


Sponsored by: