background preloader

Mozilla

Facebook Twitter

XPCOM

XUL. Building a Thunderbird extension 4: chrome manifest - Extensions. The file called chrome.manifest tells Thunderbird what packages and overlays are provided by the extension.

Building a Thunderbird extension 4: chrome manifest - Extensions

Open the file called chrome.manifest that you created and add this code: content myfirstext chrome/content/ content specifies the type of material in the package myfirstext is the name of the chrome package (specified in the first segment of <em:id> in the install.rdf file chrome/content/ is the location of the package's files within the chrome namespace So, this line says that for a chrome package myfirstext, we can find its content files in the directory chrome/content/ (which is a path relative to the location of chrome.manifest). To change the Thunderbird user interface to support the extension, you create an overlay and then merge it with the default Thunderbird interface. JavaScript. JavaScript (JS) is a lightweight, interpreted, or just-in-time compiled programming language with first-class functions.

While it is most well-known as the scripting language for Web pages, many non-browser environments also use it, such as Node.js, Apache CouchDB and Adobe Acrobat. JavaScript is a prototype-based, multi-paradigm, dynamic language, supporting object-oriented, imperative, and declarative (e.g. functional programming) styles. Read more about JavaScript. This section is dedicated to the JavaScript language itself, and not the parts that are specific to Web pages or other host environments. For information about APIs specific to Web pages, please see Web APIs and DOM. The standard for JavaScript is ECMAScript.

Tutorials Learn how to program in JavaScript with guides and tutorials. For complete beginners. Application Versions. Adding items to menus. From MozillaZine Knowledge Base Note: Information in this section applies to Mozilla Suite, Firefox and Thunderbird and other XUL-based applications.

Adding items to menus

When I say Mozilla, I mean one of these three applications. This tutorial describes steps necessary to add a static or a dynamic menu item to Mozilla from an extension. It's created for beginner extension developers; if you're a user, you probably want to search for existing extensions that do what you need. Creating the overlay To add an item to an existing menu of a Mozilla-based application without editing its source files, you first need to create an overlay. The following lines in the overlay will add two items to contentAreaContextMenu popup menu (the menu that appears when you right-click a web page): These lines in the overlay add an item to Firefox "Tools" menu: You can specify position of the item being inserted with insertafter/insertbefore/position attributes [1] To find out id of specific menu, use DOM Inspector.

Resources. Performance best practices in extensions - Extensions. One of Firefox's great advantages is its extreme extensibility.

Performance best practices in extensions - Extensions

Extensions can do almost anything. There is a down side to this: poorly written extensions can have a severe impact on the browsing experience, including on the overall performance of Firefox itself. This article offers some best practices and suggestions that can not only improve the performance and speed of your extension, but also of Firefox itself. Improving startup performance Extensions are loaded and run whenever a new browser window opens.

Load only what you need, when you need it. Extensions. Modify and extend Mozilla applications Add-ons add new functionality to Gecko-based applications such as Firefox, SeaMonkey, and Thunderbird.

Extensions

There are two main types of add-on: Extensions add new features to the application, while Themes modify the application's user interface. Gecko - Mozilla. How to build an XPCOM component in Javascript. If you are looking for Add-on SDK solution for XPCOM JavaScript components then check out platform/xpcom module first.

How to build an XPCOM component in Javascript

This is a "Hello World" tutorial for creating an XPCOM component in JavaScript. This tutorial does not describe how and why XPCOM works the way it does, or what every bit of the example code does. That's been detailed elsewhere. This tutorial will show you what you need to do to get a component working in as few and as simple steps as possible. Implementation. Setting up an extension development environment. This article gives suggestions on how to set up your Mozilla application for extension development.

Setting up an extension development environment

Unless otherwise specified, these suggestions apply to both Firefox and Thunderbird as well as SeaMonkey version 2.0 and above. Overview. Add-ons. Add-on Builder. The Add-on Builder was a web-based development environment that allowed developers to create add-ons using the SDK APIs, but without needing to use the cfx command line tool.

Add-on Builder

It was retired on April 1, 2014, and the "builder.addons.mozilla.org" domain now redirects to this page. If you have only used the SDK through the Builder, you already know most of what you need to know to develop using just the SDK. The high-level and low-level APIs used for Builder add-ons are exactly the same for Builder and SDK. Tutorial - Add-on Builder. Addon - FlyingWelshMan v. initial r. 0 by FlyingWelshMan - Add-on Builder. Sign In - Add-on Builder. Add-ons for Firefox. Optimize browser rendering - Make the Web Faster. Once resources have been downloaded to the client, the browser still needs to load, interpret, and render HTML, CSS, and JavaScript code.

Optimize browser rendering - Make the Web Faster

By simply formatting your code and pages in ways that exploit the characteristics of current browsers, you can enhance performance on the client side. Use efficient CSS selectors Overview. Mozilla Persona: A Better Way to Sign In. Developer Hub. Developer Network. Builder and SDK.