Found 2390 pages:

# Page Tags and summary
1 Archive of obsolete content
Here at MDN, we try to avoid outright deleting content that might be useful to people targeting legacy platforms, operating systems, and browsers. Perhaps your target audience is people that are using older hardware, for example, and can't upgrade to the latest and greatest browsers. Or for "reasons," your company is required to use very old software and you need to build Web content that runs on that software. Or perhaps you're just curious about the history of an obsolete feature or API, and how it worked.
2 .htaccess ( hypertext access ) 301 redirect, Cache control, Custom Error pages, HTACCESS, Permanent Redirect, Redirect
The term .htaccess stands for "hypertext access". A file with the HTACCESS file extension is an Access Configuration file for apache server. The .htaccess file configures the current directory with things like password protection, URL rewrites & redirects, and more.
3 2015 MDN Fellowship Program
We are not accepting applications. This page is a historical archive, originally hosted at /fellowship, and was localized. More information:
4 API API, Archive
Archived documentation about obsolete web standards APIs.
5 Navigator API, Navigator
Features that used to hang off the Navigator interface, but have since been removed.
6 Navigator.mozNotification API, Deprecated, Mobile, Non Standard, Property, Reference
Provides support for creating notification objects, which are used to display desktop notification alerts to the user. Currently, these are only supported on Firefox Mobile and Firefox OS. See Displaying notifications for an example.
7 Add-ons
Archived add-ons documentation.
8 Add-on SDK Add-on SDK, Jetpack
Using the Add-on SDK, you can create Firefox add-ons. You can use various standard Web technologies: JavaScript, HTML, and CSS, to create the add-ons. The SDK includes JavaScript APIs, which you can use to create add-ons and tools for creating, running, testing, and packaging add-ons.
9 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 jpm command line tool. It was retired on April 1, 2014, and the "builder.addons.mozilla.org" domain now redirects to this page.
10 Guides Add-on SDK
This page lists more theoretical in-depth articles about the SDK.
11 Content Scripts Add-on SDK
Many add-ons need to access and modify the content of web pages. But the main add-on code doesn't get direct access to web content. Instead, SDK add-ons need to factor the code that gets access to web content into separate scripts that are called content scripts. This page describes how to develop and implement content scripts.
12 Communicating With Other Scripts
This section of the guide explains how content scripts can communicate with:
13 Communicating using "port"
To enable add-on scripts and content scripts to communicate with each other, each end of the conversation has access to a port object.
14 Communicating using "postMessage" Add-on SDK
As an alternative to port, content modules support the built-in message event. In most cases port is preferable to message events. However, the context-menu module does not support port, so to send messages from a content script to the add-on via a context menu object, you must use message events.
15 Cross-domain Content Scripts Add-on SDK, Add-ons, Extensions
By default, content scripts don't have any cross-domain privileges. In particular, they can't:
16 Interacting with page scripts Add-on SDK, Add-ons, Extensions
By default, content scripts loaded by add-ons and scripts loaded by web pages are insulated from each other:
17 Loading Content Scripts
The constructors for content-script-using objects such as panel and page-mod define a group of options for loading content scripts:
18 Reddit Example Advanced, CodingScripting, JavaScript, Mobile
This example add-on creates a panel containing the mobile version of Reddit. When the user clicks on the title of a story in the panel, the add-on opens the linked story in a new tab in the main browser window.
19 port
This article documents the port object, which is used to communicate between a content script and the main add-on code.
20 self
This article documents the self object that is available as a global in content scripts. self provides:
21 Contributor's Guide
No summary!
22 Classes and Inheritance Add-on SDK
A class is a blueprint from which individual objects are created. These individual objects are the instances of the class. Each class defines one or more members, which are initialized to a given value when the class is instantiated. Data members are properties that allow each instance to have their own state, whereas member functions are properties that allow instances to have behavior. Inheritance allows classes to inherit state and behavior from an existing classes, known as the base class. Unlike languages like C++ and Java, JavaScript does not have native support for classical inheritance. Instead, it uses something called prototypal inheritance. As it turns out, it is possible to emulate classical inheritance using prototypal inheritance, but not without writing a significant amount of boilerplate code.
23 Content Processes Add-on SDK
A content process was supposed to run all the code associated with a single tab. Conversely, an add-on process was supposed to run all the code associated with a single add-on. Neither content or add-on proceses were ever actually implemented, but by the time they were cancelled, the SDK was already designed with them in mind. To understand this article, it's probably best to read it as if content and add-on processes actually exist.
24 Getting Started Add-on SDK
Learn how to contribute to the Add-on SDK.
25 Modules Add-ons, Extensions
A module is a self-contained unit of code, which is usually stored in a file, and has a well defined interface. The use of modules greatly improves the maintainability of code, by splitting it up into independent components, and enforcing logical boundaries between them. Unfortunately, JavaScript does not yet have native support for modules: it has to rely on the host application to provide it with functionality such as loading subscripts, and exporting/ importing names. We will show how to do each of these things using the built-in Components object provided by Xulrunner application such as Firefox and Thunderbird.
26 Private Properties
People have come up with several ways to emulate private properties using existing language features. This article discusses two common techniques: one using prefixes, the other closures.
27 Firefox Compatibility Add-on SDK
No summary!
28 Module structure of the SDK Add-on SDK
CommonJS is the underlying infrastructure for both the SDK and the add-ons you build using the SDK. A CommonJS module is a piece of reusable JavaScript: it exports certain objects which are thus made available to dependent code. CommonJS defines:
29 Multiprocess Firefox and the SDK Firefox OS, Guide, SDK
This article explains how developers can test whether SDK-based add-ons are compatible with multiprocess Firefox, and how to fix them if they are not.
30 Porting the Library Detector Add-on SDK, Add-ons, Example, Extensions, Sample code, Tutorial
This example walks through the process of porting a XUL-based add-on to the SDK. It's a very simple add-on and a good candidate for porting because there are suitable SDK APIs for all its features.
31 Program ID
The Program ID is a unique identifier for your add-on. When you package your add-on for distribution using jpm xpi, it will become the ID field in the add-on's Install Manifest.
32 SDK API Lifecycle
Developers using the SDK's APIs need to know how far they can trust that a given API will not change in future releases. At the same time, developers maintaining and extending the SDK's APIs need to be able to introduce new APIs that aren't yet fully proven, and to retire old APIs when they're no longer optimal or supported by the underlying platform.
33 SDK and XUL Comparison
That's not the whole story. If you need more flexibility than the SDK's High-Level APIs provide, you can use its Low-level APIs to load XPCOM objects directly or to manipulate the DOM directly as in a traditional bootstrapped extension.
34 Testing the Add-on SDK Add-on SDK, CFX, JPM, SDK
With a checkout of the mozilla/addon-sdk repository (or a checkout of the m-c repo and cd into the addon-sdk/source directory) there are many means to run the addon-sdk tests.
35 Two Types of Scripts
On the web, JavaScript executes in the context of a web page, and has access to that page's DOM content. This enables you to call functions like:
36 Working with Events
The Add-on SDK supports event-driven programming.
37 XUL Migration Guide
This guide aims to help you migrate a XUL-based add-on to the SDK.
38 High-Level APIs Add-on SDK
Modules listed on this page implement high-level APIs for building add-ons: creating user interfaces, interacting with the web, and interacting with the browser.
39 addon-page Add-on SDK, Add-ons, Extensions, Reference
Create a page that does not contain navigational elements.
40 base64 Add-on SDK
Data encoding and decoding using Base64 algorithms.
41 clipboard Add-on SDK
Interact with the system clipboard, setting and getting its contents.
42 context-menu Add-on SDK, Add-ons, Extensions, Firefox, SDK
Adds items, submenus, and menu separators to the page's context menu.
43 hotkeys Add-on SDK
Assign hotkey combinations to functions in your add-on.
44 indexed-db Add-on SDK
Exposes the IndexedDB API to add-ons.
45 l10n Add-on SDK
Localize strings appearing in the add-on's JavaScript code.
46 notifications Add-on SDK, Notifications
Display transient, toaster-style desktop messages to the user.
47 page-mod Add-on SDK
Run scripts in the context of web pages whose URL matches a given pattern.
48 page-worker Add-on SDK
Create a permanent, invisible page and access its DOM.
49 panel Add-on SDK, Add-ons, Extensions
Creates transient dialogs to implement part of an add-on's user interface.
50 passwords Add-on SDK
Interact with Firefox's Password Manager to add, retrieve and remove stored credentials.
51 private-browsing Add-on SDK
Check whether a given object is private, so an add-on can respect private browsing
52 querystring Add-on SDK
Utility functions for working with query strings.
53 request NeedsUpdate, SDK, add-on
Make simple network requests.
54 selection Add-on SDK
Get and set text and HTML selections in the current web page.
55 self Add-on SDK
Access data that is bundled with the add-on, and add-on metadata.
56 simple-prefs Add-on SDK
Store preferences across application restarts.
57 simple-storage Add-on SDK, Add-ons, Reference
Lets an add-on store data so that it's retained across Firefox restarts.
58 system Add-on SDK
Query the add-on's environment and access arguments passed to it.
59 tabs Add-on SDK
Open, manipulate, and access tabs, and receive tab events.
60 timers Add-on SDK
Set one-off and periodic timers.
61 ui Add-on SDK, Add-ons, Extensions, Reference
Provides access to button, toolbar, and sidebar UI objects.
62 url Add-on SDK
Construct, validate, and parse URLs.
63 webextension
Provides functions for communicating with an embedded WebExtension.
64 widget Add-on SDK
Create a simple user interface for an add-on in Firefox's add-on bar.
65 windows Add-on SDK
Enumerate and examine open browser windows, open new windows, and listen for window events.
66 Low-Level APIs
Modules in this section implement low-level APIs. These modules fall roughly into three categories:
67 /loader
Create CommonJS module loaders.
68 chrome
The chrome module gives an Add-on SDK add-on access to the Components object, which in turn gives it access to a large set of privileged low-level Firefox APIs.
69 console/plain-text
Constructor for a console instance.
70 console/traceback
Functionality similar to Python's traceback module.
71 content/content
Re-exports three objects from three other modules: Loader, Worker, and Symbiont.
72 content/loader
Provides one of the building blocks for those modules that use content scripts to interact with web content, such as panel and page-mod.
73 content/mod
Provides functions to modify a page content.
74 content/symbiont
Used by SDK modules that can load web content and attach content scripts to it.
75 content/worker
Used in the internal implementation of SDK modules which use content scripts to interact with web content.
76 core/heritage
Helper functions for inheritance.
77 core/namespace
Provides an API for creating namespaces for objects, which effectively may be used for creating fields that are not part of objects public API.
78 core/promise
Implementation of promises to make asynchronous programming easier.
79 dev/panel
Enables you to extend the Firefox Developer Tools.
80 event/core
The event/core module allows the creation of APIs to broadcast and subscribe to events.
81 event/target
Create objects that broadcast events.
82 frame/hidden-frame
Creates Firefox frames (i.e. XUL <iframe> elements) that are not displayed to the user.
83 frame/utils
Provides helper functions for working with platform internals like frames and browsers.
84 fs/path
Provides access to the local filesystem with the NodeJS path module API.
85 io/byte-streams
Provides streams for reading and writing bytes.
86 io/file
Provides access to the local filesystem.
87 io/text-streams
Provides streams for reading and writing text.
88 lang/functional
Functional helper methods.
89 lang/type
Functions for working with type detection.
90 loader/cuddlefish Add-on SDK, CFX
The SDK's module loader.
91 loader/sandbox
Create JavaScript sandboxes and execute scripts in them.
92 net/url
Enables you to read content from a URI.
93 net/xhr
Provides access to XMLHttpRequest functionality.
94 places/bookmarks
Create, modify, and retrieve bookmarks.
95 places/favicon
Helper functions for working with favicons.
96 places/history
Access the user's browsing history.
97 platform/xpcom
Implement XPCOM objects, factories, and services.
98 preferences/event-target Add-on SDK
Listen to changes to the Preferences system in Firefox.
99 preferences/service Add-on SDK, Jetpack, SDK
Access the Preferences system in Firefox.
100 remote/child Module, Reference, SDK
Enables an SDK module loaded into a child process to access web content in the child process and communicate with modules in the main process.
101 remote/parent Reference, SDK
Enables you to load modules, and privileged parts of your add-on in general, into child processes.
102 stylesheet/style
Modify styles using stylesheet files or CSS rules.
103 stylesheet/utils
Helper functions for working with stylesheets.
104 system/child_process
An implementation of the node.js child_process API.
105 system/environment
Access, set and clear environment variables.
106 system/events
API for working with the application observer service.
107 system/runtime
Access to information about Firefox's runtime environment.
108 system/unload
Register callbacks that are called when a module is unloaded.
109 system/xul-app
Information about the application on which your add-on is running.
110 tabs/utils
Functions for working with XUL tabs and the XUL tabbrowser object.
111 test/assert Add-on SDK, JPM
Implements the assert interface defined in the CommonJS Unit Testing specification version 1.1.
112 test/harness
Test harness setup and execution.
113 test/httpd
An HTTP server for the Mozilla platform, which can be used in unit tests.
114 test/runner
Sets up unit tests.
115 test/utils
Helper methods used in the CommonJS Unit Testing suite.
116 ui/button/action
Add a button to the Firefox user interface.
117 ui/button/toggle
Add a toggle button to the Firefox user interface.
118 ui/frame
Create HTML iframes, using bundled HTML, CSS and JavaScript, that can be added to a designated area of the Firefox user interface.
119 ui/id
Create UI component IDs.
120 ui/sidebar
Enables you to create sidebars.
121 ui/toolbar
Add a toolbar to the Firefox user interface.
122 util/array
Helper functions for working with arrays.
123 util/collection
A simple list-like class and utilities for using it.
124 util/deprecate
Functions to deprecate code.
125 util/list
Building blocks for composing lists.
126 util/match-pattern
Test strings containing URLs against simple patterns.
127 util/object
Functions for working with objects.
128 util/uuid
Generate or parse UUIDs.
129 window/utils
Functions for working with browser windows.
130 Release notes Add-on SDK
GitHub commits made between Firefox 34 and Firefox 35. This will not include any uplifts made after this release entered Aurora.
131 Tools Add-on SDK, CFX, JPM
Articles listed here provide a reference for the SDK's tools:
132 cfx Add-on SDK, CFX
Enables you to test, run, and package add-ons. cfx is is no longer supported as of Firefox 44 and no longer accepted for add-on submission, jpm should now be used instead.
133 cfx to jpm CFX, JPM, SDK, add-on
A guide to working with jpm if you're already familiar with cfx.
134 console Add-on SDK
Enables your add-on to log error, warning or informational messages.
135 jpm Add-on SDK, JPM
jpm is a command-line tool that enables you to test, run, and package add-ons.
136 jpm-mobile ADB, Add-ons, JPM, Mobile, Testing, travis-ci
The Node-based replacement for cfx --force-mobile. Enables you to run and test add-ons for Firefox Mobile (aka Fennec).
137 jpmignore JPM
Use .jpmignore to ignore files from your XPI builds created via jpm.
138 package.json CommonJS, JPM, SDK, add-on, package.json
The package.json file contains manifest data for your add-on, providing not only descriptive information about the add-on for presentation in the Add-ons Manager, but other metadata required of add-ons.
139 Tutorials Add-on SDK
This page lists practical hands-on articles about how to accomplish specific tasks using the SDK.
140 Add a Context Menu Item Add-on SDK, Firefox, Guide
To add items and submenus to the Firefox context menu, use the context-menu module.
141 Add a Menu Item to Firefox Add-on SDK
The SDK doesn't provide a built-in API to add new menu items to Firefox. But it's extensible by design, so anyone can build and publish modules for add-on developers to use.
142 Adding a Button to the Toolbar Add-on SDK
To add a button to the toolbar, use the action button or toggle button modules.
143 Annotator Add-on SDK
In this tutorial we'll build an add-on that uses many of the SDK's high-level APIs.
144 Creating annotations Add-on SDK, Add-ons, Beginner, Extensions, Tutorial
We'll use two objects to create annotations: a page-mod to find page elements that the user can annotate, and a panel for the user to enter the annotation text itself.
145 Displaying annotations Add-on SDK
In this chapter we'll use a page-mod to locate elements of web pages that have annotations associated with them, and a panel to display the annotations.
146 Implementing the widget Add-on SDK, Add-ons, Beginner, Extensions, Tutorial
We want the widget to do two things:
147 Overview Add-on SDK
The annotator uses content scripts to build user interfaces, get user input, and examine the DOM of pages loaded by the user.
148 Storing annotations Add-on SDK
Now we are able to create annotations, let's store them using the simple-storage module. In this chapter we will cover three topics relating to persistent storage:
149 Chrome Authority
The most powerful low-level modules are run with "chrome privileges", which gives them access to the infamous Components object, which grants unfettered access to the host system. From this, the module can do pretty much anything the browser is capable of. To obtain these privileges, the module must declare its intent with a statement like the following:
150 Creating Event Targets
This tutorial describes the use of low-level APIs. These APIs are still in active development, and we expect to make incompatible changes to them in future releases.
151 Creating Reusable Modules Add-on SDK
With the SDK you don't have to keep all your add-on in a single "index.js" file. You can split your code into separate modules with clearly defined interfaces between them. You then import and use these modules from other parts of your add-on using the require() statement, in exactly that same way that you import core SDK modules like page-mod or panel.
152 Developing for Firefox Mobile Add-on SDK
Firefox for Android implements its UI using native Android widgets instead of XUL. With the add-on SDK you can develop add-ons that run on this new version of Firefox Mobile as well as on the desktop version of Firefox.
153 Display a Popup Add-on SDK
To display a popup dialog, use the panel module. A panel's content is defined using HTML. You can run content scripts in the panel: although the script running in the panel can't directly access your main add-on code, you can exchange messages between the panel script and the add-on code.
154 Getting Started (jpm) Add-on SDK, JPM
In this tutorial we've built and packaged an add-on using three commands:
155 Getting started (cfx)
In this tutorial we've built and packaged an add-on using three commands:
156 List Open Tabs Add-on SDK
To list the open tabs, you can iterate over the tabs object itself.
157 Listen for Page Load Add-on SDK
You can get notifications about new pages loading using the tabs module. The following add-on listens to the tab's built-in ready event and just logs the URL of each tab as the user loads it:
158 Listening for Load and Unload
If your add-on exports a function called main(), then that function will be called whenever the add-on is loaded, and it will be passed an object containing a string describing the reason it was loaded as well as any arguments passed to it. If your add-on exports a function called onUnload(), then that function will be called when the add-on is unloaded, and it will be passed a string describing the reason it was unloaded.
159 Localization Add-on SDK, Localization
The SDK supports localization of strings appearing in:
160 Logging Add-on SDK
The DOM console object is useful for debugging JavaScript. Because DOM objects aren't available to the main add-on code, the SDK provides its own global console object with most of the same methods as the DOM console, including methods to log error, warning, or informational messages. You don't have to require() anything to get access to the console. It is automatically made available to you.
161 Modifying Web Pages Based on URL Add-on SDK
To modify any pages that match a particular pattern (for example, "http://example.org/") as they are loaded, use page-mod module.
162 Modifying the Page Hosted by a Tab Add-on SDK
To modify the page hosted by a particular tab, load one or more content scripts into it using attach() method of tab object. The job of these scripts is to interact with web content.
163 Open a Web Page Add-on SDK
To open a new web page, you can use the tabs module:
164 Troubleshooting
If you're having trouble getting the Add-on SDK up and running, don't panic! This page lists some starting points that might help you track down your problem.
165 Unit Testing Add-on SDK, JPM
The SDK provides a framework to help create and run unit tests for your code. To demonstrate how it works we'll write some unit tests for a simple Base64 encoding module.
166 Using XPCOM without chrome Bookmarks, Chrome, SDK, XPCOM
With the low-level module sdk/platform/xpcom , it's possible to exclude chrome and XPCOMUtils in some cases.
Below is an example for the XPCOM bookmark observer.
167 Using third-party modules (jpm) Addon-SDK, JPM
First, while in the root of your add-on, install the package that contains the modules you want to use:
168 Bootstrapped extensions Add-ons, Extensions, Firefox 4, Gecko 2.0, Guide, Localization
browser.bookmarks.export( function() {...} // optional function )
169 Code snippets Add-ons, Code snippets, Extensions
170 Alerts and Notifications Code snippets
non-modal notification and further interaction with users
171 Autocomplete Code snippets, Form Fill, Satchel
172 Bookmarks Code snippets, Developing Mozilla, Extensions, Places
173 Boxes Code snippets
Make the BOX style="display: block" and the wrapping behavior will occur when the box is resized:
174 Canvas code snippets Canvas, Code snippets, Graphics
175 Cookies Add-ons, Code snippets, Cookies, Extensions
176 Customizing the download progress bar
177 Delayed Execution Code snippets
178 Dialogs and Prompts Add-ons, Code snippets, Extensions, XUL
179 Downloading Files Code snippets
To download a file, create an instance of nsIWebBrowserPersist and call its nsIWebBrowserPersist.saveURI() method, passing it a URL to download and an nsIFile instance representing the local file name/path.
180 Drag & Drop Code snippets
181 Embedding SVG Code snippets
182 Examples and demos from articles
183 File I/O Add-ons, Code snippets, Extensions, Files, Streams, Tutorial
184 Finding window handles Add-ons, Code snippets, Extensions, XPCOM, js-ctypes
185 Forms related code snippets Code snippets, Forms
186 HTML in XUL for rich tooltips Code snippets, Examples, HTML, XUL
187 HTML to DOM Code snippets, DOM, Guide, HTML, Intermediate, NeedsUpdate
188 IsDefaultNamespace
189 JS XPCOM Code snippets, JavaScript, XPCOM, about:, nsIAboutModule
190 JavaScript Debugger Service Code snippets
191 JavaScript timers JavaScript timers, NeedsBetterPlace
192 JavaScript Daemons Management DOM, Guide, JavaScript, JavaScript timers, MakeBrowserAgnostic
193 Label and description Code snippets
194 LookupNamespaceURI
195 LookupPrefix
196 Miscellaneous Add-ons, Code, Code snippets, Extensions, Snippets
197 Modules
198 On page load Add-ons, Extensions
199 Page Loading Code snippets
200 Post data to window Add-ons, Extensions, NeedsContent
201 Preferences Add-ons, Code snippets, Extensions, Guide, Mozilla, Preferences
202 Progress Listeners Add-ons, Extensions
203 QuerySelector DOM
No summary!
204 Rosetta C, DOM, HTML, HTMLScriptElement, JavaScript, Non-JavaScript, Programming Languages
205 Running applications Add-ons, Code snippets, Extensions
206 SVG Animation NeedsContent
207 SVG General Code snippets
208 Scrollbar Code snippets
209 Sidebar Add-ons, Code snippets, Extensions
210 StringView Code snippet, Guide, JavaScript, JavaScript typed arrays, MDN JavaScript Libraries, Sample code, Typed Arrays, WebGL, WebSockets, js-ctypes
211 Tabbox
Assuming the tabbox, tabs, and tabpanels widgets with id's the same as their nodeName, this function will correctly remove the current tab and tab panel for the onclosetab tabs event:
212 Toolbar Add-ons, Code snippets, Extensions, Toolbars
213 Tree Code snippets
214 URI parsing
215 View Source for XUL Applications
216 Windows Add-ons, Code snippets, Extensions, Guide, NeedsContent, NeedsHelp
217 XML-related code snippets Add-ons, Code snippets, Extensions
218 xml:base support in old browsers Code snippets
219 XPath
220 getAttributeNS Code snippets
221 Common Pitfalls Add-ons, Developing Mozilla, Extensions
There are some common pitfalls that should be avoided when writing either extensions or core Mozilla code. These are the sort of things that super-review should be catching for code that goes into the tree; avoiding these to start with saves super-reviewers a lot of effort.
222 Communication between HTML and your extension Add-ons, Extensions, Web Development
See also Interaction between privileged and non-privileged pages.
223 Creating custom Firefox extensions with the Mozilla build system Add-ons, Build documentation, Developing Mozilla, Extensions, Guide, NeedsContent, XPCOM
There is a wealth of material on creating extensions for Firefox. All of these documents currently assume, however, that you are developing your extension using XUL and JavaScript only. For complex extensions, it may be necessary to create components in C++ that provide additional functionality. Reasons why you might want to include C++ components in your extension include:
224 Custom about: URLs about:
This page describes how to register a new about: URL for your extension.
225 Default Preferences
A key part of any extension is the default settings that come with it. Mozilla provides a simple way of shipping default settings by allowing default preferences.
226 Deploying a Plugin as an Extension Add-ons, Plugins
One of the new features available in Firefox 1.5 is the ability to place browser plugins in a Firefox extension. This feature is particularly useful for vendors who wish to deploy the plugin even if Firefox is not currently installed, or who want to use the automatic extension update mechanism to update their plugin to a newer version.
227 Developing add-ons Add-ons
This page will help guide you to the information you need in order to create add-ons for Firefox, Thunderbird, or other software based on the Mozilla platform, as well as how to distribute your add-ons.
228 Displaying web content in an extension without security issues Extensions, Security, XMLHttpRequest, XUL
One of the most common security issues with extensions is execution of remote code in privileged context. A typical example is an RSS reader extension that would take the content of the RSS feed (HTML code), format it nicely and insert into the extension window. The issue that is commonly overlooked here is that the RSS feed could contain some malicious JavaScript code and it would then execute with the privileges of the extension — meaning that it would get full access to the browser (cookies, history etc) and to user’s files. These issues can easily be avoided by making use of the existing security mechanisms in the Mozilla codebase. The following article explains these security mechanisms, ideally an extension that needs to display web content (which is always potentially dangerous) will use all of them.
229 Downloading JSON and JavaScript in extensions AJAX, Add-ons, Extensions, JSON, XMLHttpRequest
A common practice found in many extensions is using XMLHttpRequest (or some other mechanism) to download JavaScript or JSON (they are different) from a remote website. Once the content has been downloaded, the extension authors proceed to use eval() to decode the string content into JavaScript objects. This practice is dangerous and will not, in fact, pass an AMO review. So the extension will not be allowed to move out of the AMO sandbox.
230 Enhanced Extension Installation Add-ons, Extensions
No summary!
231 Extension Etiquette Add-ons, Extensions, Guide
This article describes best practices when making extensions, including how to be kind to your users. It assumes that you are already familiar with Building an Extension.
232 Extension Library
No summary!
233 Extension Packaging Add-ons, Extensions, Guide, Toolkit API
By the end of 2017 WebExtensions will be the only supported add-on type in Firefox. To learn how to install a WebExtension for testing purposes, see Temporary Installation in Firefox. To learn how to package a WebExtension for distribution, see Publishing your WebExtension.
234 Extension Samples
No summary!
235 Extension Theming Guidelines Add-ons, Extensions
This is a set of guidelines on how to control the look and feel of your extension while leaving it open for styling by custom themes.
236 Extension Versioning, Update and Compatibility Add-ons, Extensions
Add-ons should specify their versions using the Toolkit version format. As a rough overview this is a version string split by periods, some examples:
237 Extensions support in SeaMonkey 2 Add-ons, CodingScripting, Extensions, JavaScript, SeaMonkey, URL, thunderbird
Starting with SeaMonkey 2 Alpha 1 SeaMonkey supports toolkit/-style extensions. These type of extensions have many advantages for both users and developers compared to the old xpinstall/-style extensions.
238 Firefox addons developer guide
The original document is in Japanese and distributed via the xuldev.org website. So there may be still some reference to the xuldev website (we want to host source code on MDC, not on xuldev), and to Japanese things (like some specific locales, which have been translated to French since non-latin characters are not well supported).
239 Hiding browser chrome Add-ons, Extensions, XUL, XULBrowserWindow
There are times in which an extension may find it useful to hide browser chrome (that is, toolbars, the location bar, and so forth), in order to reduce clutter when presenting a particular user interface. This is done, for example, by the about:addons page.
240 Hotfix Extension
This document has been moved to the Add-ons wiki.
241 How to convert an overlay extension to restartless Add-ons, Code snippets, Extensions, Firefox, Firefox OS, Guide, Preferences system
First off, what kind of add-on are we talking about here? Well, XUL overlays and windows, JSM files, chrome & resource mappings with localization, default preferences, but no XPCOM components of your own. Some of that will have to be replaced and the rest will need to be loaded differently.
242 Inline options Add-ons, Extensions, XUL
Firefox 7 supports a new syntax for defining extensions' preferences for both bootstrapped and traditional extensions. The user interface for the preferences defined with this new syntax appears in the extension's detail view in the Add-on Manager. This functionality originally appeared in Firefox mobile and is now available in Firefox on the desktop as well.
243 Install Manifests Add-ons, Extensions, Manifests, NeedsUpdate, Toolkit API
An Install Manifest is the file an Add-on Manager-enabled XUL application (e.g. Firefox or Thunderbird) uses to determine information about an add-on as it is being installed. It contains metadata identifying the add-on, providing information about who created it, where more information can be found about it, which versions of what applications it is compatible with, how it should be updated, and so on.
244 Installing Extensions and Themes From Web Pages Add-ons, Extensions, Obsolete, Themes
There are a variety of ways you can install extensions and themes from web pages, including direct linking to the XPI files and using the InstallTrigger object.
245 Interaction between privileged and non-privileged pages Add-ons, Code snippets, Extensions
An easy way to send data from a web page to an extension is by using custom DOM events. In your extension's browser.xul overlay, write code which listens for a custom DOM event. Here we call the event MyExtensionEvent.
246 Jetpack Processes Jetpack
Jetpack processes are created by components that implement the nsIJetpackService interface, and their parent chrome process communicates with them via the nsIJetpack interface.
247 Legacy Add-ons Add-ons, Extensions, Landing
This section contains links to documentation for legacy technology for add-on development, including:
248 Legacy extensions for Firefox for Android
Add-ons that work with desktop Firefox do not automatically work in Firefox for Android:
249 API
There are a couple of differences between desktop Firefox and Firefox for Android that are particularly relevant to add-on developers:
250 Accounts.jsm
The Accounts API lets you check whether a Firefox Account or a legacy Sync account is currently present on the device, and to start the Firefox Account set-up process if an account is not present. Accounts is a single object that provides a Promise-based API.
251 BrowserApp Apps, CodingScripting, Firefox, Glossary, Guide, Mobile, add-on
Add-ons running on desktop Firefox can use the global gBrowser variable to interact with tabs and any HTML content they host. This object isn't available on Firefox for Android, and instead add-ons should use the BrowserApp object, which provides much of the same functionality.
252 addTab
BrowserApp.addTab() opens a new tab. By default, the new tab is made the selected tab.
253 closeTab
BrowserApp.closeTab(tab) closes the supplied tab. If no other tabs are open, then the tab is not closed.
254 deck
deck is a property of the BrowserApp object. It is a deck of all currently open browsers, represented as browser objects.
255 getBrowserForDocument
BrowserApp.getBrowserForDocument() retrieves a browser, given the DOM document hosted by that browser.
256 getBrowserForWindow
BrowserApp.getBrowserForWindow() retrieves a browser, given the DOM content window hosted by that browser.
257 getTabForBrowser
BrowserApp.getTabForBrowser() retrieves a tab, given the XUL browser object hosted by that tab.
258 getTabForId
BrowserApp.getTabForId() retrieves a browser tab, given its unique ID.
259 getTabForWindow
BrowserApp.getTabForWindow() retrieves a browser tab, given the DOM window hosted by that tab.
260 loadURI
BrowserApp.loadURI(uri, browser, params) loads the specified URI into the specified browser.
261 quit Apps, Firefox, Mobile, NeedsContent
BrowserApp.quit() closes the browser.
262 selectTab Mobile, NeedsContent, Reference
BrowserApp.selectTab(tab) makes the supplied tab the currently selected tab.
263 tabs Apps, CodingScripting, Firefox, JavaScript, Mobile
tabs is a property of the BrowserApp object. It is an Array of all currently open tabs, represented as Tab objects.
264 HelperApps.jsm
265 Home.jsm
The Home.jsm JavaScript code module offers utility routines dealing with customizing the home page in Fennec. This is the page that's shown on startup and new tabs, as well as when the user enters "editing mode" from the urlbar. To use it, you first need to import the code module into your JavaScript scope:
266 banner API, Glossary, Guide, JavaScript
The Home.banner API lets you customize a banner that appears at the bottom of the home page. You can use this API to add and remove messages from the set of messages that rotate through this banner.
267 panels API, CodingScripting, Firefox, Glossary, Guide, JavaScript, Mobile, add-on
Use the Home.panels API to add custom panels to the browser's home page.
268 HomeProvider.jsm
The HomeProvider API lets you store data that can be displayed in custom panels on the home page. HomeProvider is a single object that manages access to data and data syncing.
269 HomeStorage
Each HomeStorage object is associated with a single dataset. This object is used to save and delete data. Consumers can retreive a HomeStorage object through the HomeProvider API.
270 NativeWindow
The NativeWindow object enables Firefox for Android add-ons to create user interface components.
271 contextmenus API, Reference
Returns a reference to the NativeWindow.contextmenus object, which can be used to add items to the Firefox for Android context menu, and subsequently remove them. You can add a menu item to the context menu using NativeWindow.contextmenus.add() and remove it using NativeWindow.contextmenus.remove().
272 doorhanger Add-ons, Extensions, Mobile, Reference
Returns a reference to the NativeWindow.doorhanger object, which can be used to display doorhanger notifications (also known as popup notifications) on Firefox for Android.
273 menu API, Reference
Returns a reference to the NativeWindow.menu object, which can be used to add items to the main Firefox for Android menu, and subsequently remove them. You can add a menu item to a browser window using NativeWindow.menu.add() and remove it using NativeWindow.menu.remove().
274 toast Add-ons, CodingScripting, Firefox, Guide, JavaScript, Mobile
Returns a reference to the NativeWindow.toast object, which can be used to display toast notifications on Firefox for Android.
275 Notifications.jsm
The Notifications.jsm JavaScript code module offers utility routines dealing with showing system notifications in Fennec. It duplicates some of what is available in the nsIAlertService already, but exposes to more advanced Android functionality.
276 PageActions.jsm
Contains the PageActions object, which can be used to add items to the Firefox for Android url/title bar, and subsequently remove them. You can add an item using PageActions.add() and remove it using PageActions.remove(). Import the script by inserting:
277 Prompt.jsm
278 RuntimePermissions.jsm
Contains the RuntimePermissions object, which can be used to check whether one or more runtime permissions have been granted to Firefox for Android, and to ask for them if they have not.
279 Snackbars.jsm
Contains the Snackbars object, which can be used to show notifications to let users know that some change has been made.
280 Sound.jsm
The Sound.jsm JavaScript code module offers the ability to play sounds simply using the HTML 5 audio APIs under the hood. For basic usage, see the Github readme.
281 Tab API, Add-ons, CodingScripting, Firefox, Mobile, Tab
The Tab object represents a browser tab, and provides access to the browser and the DOM content window hosted by that tab.
282 Addons developer guide install, xpi
This guide walks you through the steps needed to make a restartless add-on for Firefox on Android. If you are familiar with building add-ons for desktop Firefox, much of this guide will be review. Firefox on Android uses native Android widgets for the browser UI so the big difference is how you interact with the browser UI.
283 Code snippets
This article includes code snippets to help you write an add-on for Firefox for Android. For additional code samples, check out the Firefox for Android Add-ons Github repo.
284 Creating a User Interface
See the NativeWindow documentation for examples the APIs Firefox for Android add-ons can use to create user interface components.
285 Firefox Hub Walkthrough
This guide walks you through developing a Firefox Hub add-on for Firefox for Android. The Firefox Hub APIs allow add-ons to add new content to the Firefox for Android home page. These APIs are new in Firefox 30, and increased capabilities are planned for future releases. The two main APIs that this guide covers are the Home.panels API and the HomeProvider API. For some example code to get started, you can copy the hub boilerplate add-on from github.
286 Initialization and Cleanup
Android add-ons don't have to be restartless, but with Firefox for Android you can't use XUL overlays to create your user interface, so there's much less incentive to write overlay-based add-ons.
287 Prerequisites Extensions, Mobile
While you're developing your add-on, it will be very important to have a way to test and run snippets of code; development will go very slowly if you have to build and install your entire app every time you need to test something. Once all of your snippets are working together, then you can start worrying about bringing together all of the add-on files to build the complete app (bootstrap.js, etc.). You can do this using WebIDE, by connecting your device to your development workstation.
288 Walkthrough Extensions, Mobile
This guide walks you through the process of developing a simple add-on for Firefox for Android. The add-on adds a menu item to display the source of the current web page.

If you're familiar with developing add-ons for desktop Firefox, much of this guide will not be new to you.
289 WebExtensions for Firefox for Android Landing, Mobile, WebExtensions
This section provides information specific to developing extensions using WebExtension APIs for Firefox for Android. General information on extensions development is in main extensions section. If you have not developed extensions before, consider starting with the guides to building extensions for desktop, such as the guide to building Your first extension.
290 Listening to events in Firefox extensions DOM, Gecko, events
Gecko uses events to pass information about interesting things that have occurred along to the parties that may wish to know about them.  There are several different categories of events; this article will help you learn about them and direct you to more specific documentation covering each of them.  It also provides some use cases that may be of specific interest.
291 Migrating from Internal Linkage to Frozen Linkage XPCOM
Extension code using internal linkage will need to migrate to use frozen linkage because internal linkage will not be available in Firefox 3. This document is a guide to common code patterns that may need to change to work with frozen linkage.
292 Migrating raw components to add-ons
Historically, Firefox has allowed third party contributions to be added to the application's components/ directory, but beginning with Firefox 3.6, this is no longer permitted. Components added in this way are invisible to users and cannot be managed through the Firefox add-ons manager. What's worse, though, is that these components don't have a mechanism for specifying the versions of Firefox with which they are compatible, leading to poor integration and instability as users upgrade their Firefox installations.
293 Multiple item extension packaging Add-ons, Obsolete, Toolkit API, install. rdf
A multiple Item package provides the ability to package multiple installable bundles which can then be downloaded and installed by a user, or provided pre-packaged with an application or by an external program. Every multiple item package must provide an install.rdf file (not old-style install.js!) and has the same requirements as an extension except as noted below.
294 Observer Notifications Add-ons, Extensions, XPCOM
The following are topics that you can observe during the course of an application. Unless otherwise noted you register for the topics using the nsIObserverService.
295 Offering a context menu for form controls Add-ons, Extensions, Mozilla, XUL
Firefox 3 changed the behavior of right-click on form controls to no longer display a context menu by default.  This article describes how an extension can override this change in a particular window, enabling context menus to work on form controls.
296 Overlay extensions Add-ons, Extensions, Landing
This page contains links to documentation for the approach to developing extensions for Gecko-based applications which uses:
297 Firefox addons developer guide Add-ons, Extensions, Firefox, Guide
The Firefox add-ons developer guide was contributed by the Mozilla Japan community; it covers how to go about building Firefox extensions using XPCOM and XUL. These days, we recommend using the Add-on SDK instead, but there are times when you need the additional control offered by a more direct approach.
298 Appendix: What you should know about open-source software licenses
No summary!
299 Chapter 1: Introduction to Extensions
This document was authored by Hideyuki Emura and was originally published in Japanese for the Firefox Developers Conference Summer 2007. Emura-san is a co-author of Firefox 3 Hacks (O'Reilly Japan, 2008.)
300 Chapter 2: Technologies used in developing extensions
This document was authored by Hiroshi Shimoda of Clear Code Inc. and was originally published in Japanese for the Firefox Developers Conference Summer 2007. Shimoda-san is a co-author of Firefox 3 Hacks (O'Reilly Japan, 2008).
301 Chapter 3: Introduction to XUL—How to build a more intuitive UI Firefox, XUL
learn about XUL, the XML-based User-interface Language, which is one of the building blocks for extensions.
302 Chapter 4: Using XPCOM—Implementing advanced processes
This chapter explains how to use XPCOM to implement advanced processes using only JavaScript.
303 Chapter 5: Let's build a Firefox extension Archive, Obsolete
This document was authored by Taiga (Gomita) Gomibuchi and was originally published in Japanese for the Firefox Developers Conference Summer 2007. Gomita-san won "Most Useful Upgraded Extension" award in Mozilla's 2006 "Extend Firefox" competition for ScrapBook, and was runner-up in the "Extend Firefox 2" contest for FireGestures.
304 Chapter 6: Firefox extensions and XUL applications
This chapter discusses tools to assist in developing extensions.
305 License and authors
License: Attribution-Share Alike 2.1 Japan.
306 XUL School Tutorial Add-ons, Extensions, References, Tutorials, XUL
XUL School is a comprehensive add-on development tutorial, focusing on Firefox extension development. It is recommended that you read through all of it at least once. While Firefox changes rapidly, the content in this tutorial should be up to date and valid.
307 Adding Events and Commands Add-ons, CodingScripting, DOM, Glossary, Guide, JavaScript, XUL, events
Just like with HTML, most JavaScript code execution is triggered by event handlers attached to DOM elements. The most commonly used event is the onload event, which is used in overlays and other windows to detect when the window has loaded and then run initialization code:
308 Adding Toolbars and Toolbar Buttons Toolbars, XUL
Adding new toolbars to Firefox is easy, but adding them the wrong way is very easy as well.
309 Adding menus and submenus Add-ons, CodingScripting, Macs, XUL, apple
The Hello World example in the previous sections shows the two most common ways to add menus. In this section we'll look into more specialized menus and what you can do with them.
310 Adding sidebars
The sidebar in Firefox is a relatively large and flexible space to add rich interfaces without requiring new windows or complicated overlays. Sidebars take as much space as the user wants them to, and provide a frame where you can add elaborate data and controls. You're probably familiar with the Bookmarks and History sidebars. If not, you can open either one from the View > Sidebar menu. They also have shortcuts to open or close them using the keyboard.
311 Adding windows and dialogs
To open a new window, use the Javascript window.open function just like with HTML windows.
312 Appendix A: Add-on Performance Add-ons, Extensions, Performance
Add-ons can have a noticeable performance impact on Firefox. This is evident when opening a Firefox profile that has many add-ons installed; some profiles can take minutes to load, which is a serious inconvenience for users that gives them a negative view of Firefox. Add-on developers need to make sure that they minimize their add-ons' performance impact, and here are a few simple guidelines that should be followed to achieve that.
313 Appendix B: Install and Uninstall Scripts
Add-ons normally run code at startup, and as it is covered in the main tutorial, all you need is a load event handler and a little code. It is also common for an add-on to require to run a script only when it is installed for the first time, or every time it is updated. It can be used to write or copy necessary files to the profile folder, like the initial DB the add-on will use for storage. A few others require cleanup code to be run after the add-on is uninstalled. This appendix covers these cases with simple code that should work for most add-ons.
314 Appendix C: Avoiding using eval in Add-ons
Using eval in add-ons is almost always unnecessary, and many times even a security vulnerability. Moreover, code using eval is harder to parse for a human mind, is often pretty complex, and relies on assumptions that are not necessarily true in the future or even now.
315 Appendix D: Loading Scripts Extensions, XUL
Most add-ons and XUL Runner applications provide their primary functionality by loading and executing JavaScript code. Because there are such a diverse array of add-ons, and because the needs of developers have grown organically over time, the Gecko runtime provides a number of means to dynamically load and execute JavaScript files. Each of these means has its own advantages and disadvantages, as well as its own quirks which may trap the unwary. Below is an overview of the more common means of loading scripts, along with some of their primary advantages, disadvantages, quirks, and use cases.
316 Appendix E: DOM Building and Insertion (HTML & XUL)
Many add-ons need to dynamically generate DOM content, either XUL or HTML, from their scripts. For security reasons, and to prevent errors, care needs to be taken to avoid evaluating arbitrary text as HTML. Failure to do so can lead to execution or remote scripts, and in the worst cases to privilege escalation which can leave a user's PC open to remote attack.
317 Appendix F: Monitoring DOM changes
DOM mutation events were introduced to HTML several years ago in order to allow web applications to monitor changes to the DOM by other scripts. Unfortunately, adding listeners for any of these events to a document has a highly deleterious effect on performance, an effect which is not mitigated in the slightest by later removing those listeners. For this reason, it is best to avoid using mutation listeners at all costs, especially from extensions. This document lays out some alternatives which do not have such severe performance impacts.
318 Connecting to Remote Content
XMLHttpRequest is an API for transferring XML between a local script and a remote server via HTTP. It is an integral part of the modern web, and all major browsers support it. Besides XML, it can be used to retrieve data in other formats, for example JSON, HTML and plain text. In this section we'll look into the XML and JSON communication mechanisms.
319 Custom XUL Elements with XBL
Taken from the XBL page.
320 Getting Started with Firefox Extensions Extensions
an extension is a small application that adds something new to one or more Mozilla applications. This tutorial focuses on extensions for Firefox, but the same (or very similar) principles apply to creating extensions for other applications such as Thunderbird, Seamonkey, and Flock.
321 Handling Preferences Add-ons, Extensions, XUL, XUL School
Mozilla applications are highly customizable. Preferences are used to store settings and information to change their default behavior. To open the preferences window in Firefox, select the following from the main menu:
322 Intercepting Page Loads
There are several ways to detect and intercept loading of web pages and their content, be it only to realize when it happens, modify their contents, or to block them and do something else instead. Some of the techniques presented here apply only to content loaded in the main browser area, while others detect content being loaded in other XUL windows, or even detect XUL content being loaded. Also, the different techniques tap into different steps of the load process. Which one you should use solely depends on your needs. We will start with the simplest one, which is also the most common to use.
323 Introduction
Welcome to the XUL School Tutorial!
324 JavaScript Object Management JavaScript, Object, Tutorials
In this section we'll look into how to handle JavaScript data effectively, beginning with chrome code, in ways which will prevent pollution of shared namespaces and conflicts with other add-ons resulting from such global namespace pollution.
325 Local Storage Guide, Storage, XUL
It is very common for an extension to require some kind of local persistent storage. We recommend that you at least keep an error log, so that you can request error data from your users when you encounter problems that are hard to debug. We'll discuss logging in this section, but first let's look at the right (or at least, common and scalable) way of managing local files.
326 Mozilla Documentation Roadmap
Firefox extension development is still an immature discipline, with a developer base consisting mostly of hobbyists and just a few organized development groups. There's a great deal of free online documentation available on XUL and extension development, but finding it and turning it into useful information can be a daunting task. Knowing where to look is critical and non trivial. This tutorial was aimed at compiling all the right resources for extension development and putting them in the right context, but there's much more to learn, and knowing how to find it is part of what we felt was necessary to teach.
327 Observer Notifications
Sometimes you need your code to send a message to other parts of your code. For example, you might want to notify that a task is completed, and then several different actions must be performed. You could do that by calling all those functions directly, but XPCOM offers you a better and cleaner way to achieve that using observers and the observer service.
328 Setting Up a Development Environment
There are 3 tools that we think are essential for effective add-on development (or any kind of development, really): a source code editor, a source control system, and a build system.
329 The Box Model
In order to master XUL, you'll need to have a fairly good understanding of its Box Model. This is the system that determines how all elements are laid out visually in a XUL document. It is important to know how it works in order to make interfaces that are easy to localize, skin and use in different types of operating systems, screen sizes and resolutions.
330 The Essentials of an Extension
In the last section we looked at the contents of the Hello World extension. Now we'll look into its files and code, starting with the install.rdf file. You can open it with any text editor.
331 Useful Mozilla Community Sites
The Mozilla Community is very rich and active. It's a very powerful tool you have when developing on top of the Mozilla platform, and you should take advantage of it in order to create a truly successful add-on .
332 User Notifications and Alerts
It is often the case that extensions need to notify users about important events, often requiring some response. Using modal dialogs and alerts is usually a bad idea. They interrupt the user's workflow, demanding immediate action before anything else can be done. Users will find them annoying and probably will learn to dismiss them as quickly as possible without even reading what they have to say. Or they will just get rid of your add-on.
333 XPCOM Objects
Taken from the XPCOM page.
334 Performance best practices in extensions Add-ons, Best practices, Extensions, Guide, NeedsContent, NeedsExample, Performance
One of Firefox's great advantages is its extreme extensibility. 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.
335 Search Extension Tutorial (Draft) Extensions, Search, Tutorial
Many add-ons, for monetization or other reasons, change several search-related settings at install time. While this is generally considered acceptable behavior, considerable care must be taken to avoid violating the Mozilla add-on guidelines or creating an adverse user experience.
336 Security best practices in extensions Add-ons, Best practices, Extensions, Guide, Security
This document is intended as a guide for developers to promote best practices in securing your extension. Your goal is to keep your users safe. Some items mentioned are strict guidelines, meaning that if you don't follow them then your add-on will not be approved on Mozilla add-ons. Other items are recommendations. The difference will be clearly flagged.
337 Session store API Add-ons, Extensions, Firefox, Guide
Session store makes it possible for extensions to easily save and restore data across Firefox sessions. There is a simple API that lets extensions access the session store feature.
338 Setting up an extension development environment Add-ons, Extensions, Guide
This article provides suggestions for how to set up your Mozilla application for extension development. These details apply to Firefox, Thunderbird, and SeaMonkey (version 2.0 and above).
339 Signing an XPI Add-ons, Code snippets, Extensions, Guide, NeedsHelp, XPInstall
This article describes how to sign your own Firefox extensions with a code-signing certificate on a Windows platform. It was developed from the linux article So you want to sign your XPI package? by MozDev Group's Pete Collins.
340 Signing an extension Add-ons, Administration, Extensions, Themes, XPInstall, enterprise
This article describes how to digitally sign your extension for Firefox and Thunderbird, with a code signing certificate for Object Signing. The following instructions also apply to a theme and other XPI files.
341 Supporting search suggestions in search plugins Add-ons, OpenSearch, Search, Search plugins
Firefox supports search suggestions in OpenSearch plugins; as the user types in the search bar, Firefox queries the URL specified by the search plugin to fetch live search suggestions.
342 Tabbed browser Add-ons, Code snippets, Extensions
Here you should find a set of useful code snippets to help you work with Firefox's tabbed browser. The comments normally mark where you should be inserting your own code.
343 Techniques
.
344 Promises Add-ons, Examples, Snippets, async
Due to the performance and stability costs of synchronous IO, many APIs which rely on it have been deprecated. The following page contains examples of many Promise-based replacement APIs for common operations. These APIs allow asynchronous operation to be achieved with a coding style similar to synchronous variants.
345 Updating addons broken by private browsing changes Add-ons, Reference
After reading this document, contact Josh Matthews with further questions or clarifications, or file a bug if your extension has stopped working due to a change described here and you are having trouble updating it.
346 Using Dependent Libraries In Extension Components Add-ons, Extensions
Extensions with binary components sometimes need to depend on other shared libraries (for example, libraries provided by a third party). The Firefox extension system does not provide automatic support for loading these dependent libraries, but it is possible to load these libraries explicitly using a component stub.
347 Using the Stylesheet Service Add-ons, Extensions
The stylesheet service allows extensions to manage user and UA stylesheets without having to touch userContent.css or userChrome.css files. The API is defined in nsIStyleSheetService.idl.
348 Working with multiprocess Firefox
In older versions of Firefox, chrome code (including code inserted by extensions) and content run in the same operating system process. So extensions can access content directly:
349 Using the message manager from Firefox extensions
This article explains how to refactor a Firefox extension to use the message manager. This enables the extension to work in multiprocess Firefox.
350 bookmarks.export() API, Add-ons, Bookmarks, Extensions, Method, Non-standard, Reference, WebExtensions, export
Exports bookmarks to an HTML bookmark file.
351 bookmarks.import() API, Add-ons, Bookmarks, Extensions, Method, Non-standard, Reference, WebExtensions, import
Imports bookmarks from an HTML bookmark file.
352 Adding preferences to an extension Add-ons, Extensions, Preferences system, XUL
This article takes the Creating a dynamic status bar extension sample to the next level, adding a popup menu that lets you quickly switch between multiple stocks to watch. It also adds a preference dialog that lets you switch to a stock other than one of the ones included in the popup menu.
353 An Interview With Douglas Bowman of Wired News Web Development, Web Standards
One of the Web's oldest news sites, Wired News draws between 20 and 25 million page views every month. On October 11, 2002, Wired launched a brand-new site design that uses validating XHTML for its structure and a small collection of CSS files for its layout. The new design clearly shows what some experts have been saying: that standards-based design can be visually compelling and preserve the interface conventions we've come to expect from Web pages.
354 Apps Apps, Firefox OS, Web
This page includes archived content for Apps, including obsolete web app content, Firefox OS app-related content, and so forth.
355 Advanced topics Apps
These articles provide extra information on more advanced Open Web Apps topics. Topics such as app architecture documentation to help with the design and implementation of open web apps and other documentation for creating a store for selling and distributing open web apps.
356 App Development API Reference API, Apps, B2G, Firefox OS, Reference, Référence(2)
Technical review completed. Editorial review completed.
357 Drawing and animation API, Apps, B2G, Firefox OS, Reference, Référence(2)
For a modern app experience, use of animations and lightweight graphics is essential. The following pages provide what you need in this area.
358 Firefox Marketplace services API, Apps, B2G, Firefox OS, Marketplace, Reference, Référence(2)
These documents and guides provide a reference to the APIs needed for publishing and managing your app on the Firefox Marketplace.
359 Foundations of a Firefox OS app API, Apps, B2G, Firefox OS, Reference, Référence(2)
A Firefox OS app is simply an Open Web App, but with some special considerations and features, such as working offline and being installable.
360 General Web APIs API, Apps, B2G, Firefox OS, Reference, Référence(2)
Elements, events, network requests, storage and other standard Web APIs that provide useful functionality for Open Web Apps. The summary table on our Web API team's main Wiki page also provides a useful overview of what's supported and where.
361 Layout and structure API, Apps, B2G, Firefox OS, Reference, Référence(2)
A series of articles to help you create the perfect structure for your Open Web App.
362 Designing Open Web Apps Apps, CSS, Design, Examples, Guide, Layout, Mobile, Styleguides, UX, Usability, Web Development, patterns
The items under this section apply generally to Web app design.
363 Design guidelines Apps, Responsive Design
Some suggestions to help you build an app that’s attractive and easy to use.
364 Resources Apps, Guide, Responsive Design, Web Development
No summary!
365 Your App's Elevator Pitch Apps
Technical review completed. Editorial review completed.
366 Design guidelines Apps, Design, Guide
Design guidelines to help create intuitive apps that work across platforms.
367 Design patterns and assets Design, Guide, Intro
Design pattern information, along with building blocks and assets to help with rapid prototyping and consistent look and feel.
368 Facebook Apps
https://www.facebook.com/
369 Patterns Apps, Firefox OS, Firefox OS UX, UX
Patterns are methods of interaction with your app. Unlike the building blocks, which describe particular user interface elements, patterns are ways those building blocks are presented.
370 Drawer Apps, Firefox OS, Firefox OS UX, US
Drawers provide access to top-level navigation options that may be too numerous for a tabs or toolbar interface. Drawers can also be used to access user-generated content such as browser tabs, accounts in an email or messaging client, and so forth. Drawers slide out from the edge of the screen at the user's request (pushing the underlying content aside), then slide back out of the way when no longer needed. See the Coding guide for details on implementing drawers in your apps.
371 Coding guide: Drawers Apps, Firefox OS, Firefox OS UX, Guide, UX
Here you can find examples of how to create a drawer on Firefox OS, as well as downloads for the CSS and image resources used by the built-in apps on Firefox OS. You can copy these resources into your app and make use of them to build apps that match these apps' appearances.
372 Entry sheet Apps, Firefox OS, Firefox OS UX, NeedsContent, Reference, Référence(2), UX
An entry sheet is used to edit a single setting or option in your app that either contains a large number of possible values (such as a text entry form or a long list of choices) or requires multiple inputs or selections, such as configuring and connecting to a WiFi network.
373 Multi select Apps, Firefox OS, Firefox OS UX, Guide, UX
Multi-select mode is used to let the user perform "bulk actions;" that is, to select a number of items and then act on all of them at once. This may be something like deleting six emails from the user's inbox or choosing two photos to email to a friend. Multi-select mode actually encompasses two similar but functionally different modes: multi-select mode, for choosing multiple items and performing actions on them; and edit mode, which lets the user change existing data in the list (such as editing data in a table) and then save or discard the changes.
374 Coding guide: Multi select Apps, Firefox OS, Firefox OS UX, UX
Here you can find examples of how to implement the multi-select mode (also known as "edit mode") on Firefox OS, as well as downloads for the CSS and image resources used by the built-in apps on Firefox OS. You can copy these resources into your app and make use of them to build apps that match these apps' appearances.
375 Search Apps, Firefox OS, Firefox OS UX, Guide, NeedsContent, UX
A search bar lets users use keywords to locate content within an app, on the device, or online. An app can specify what types of content are shown in the search results. Search can also be used to filter long lists, such as contacts.
376 Planning Apps, Design, Planning
No summary!
377 General design Principles Apps, Design
Be consistent in your language. Refer to an action or an item with the same term in your app, and use each term for only one action or item.
378 Installed app considerations Guide, UX
When designing an installable Open Web App, there are a number of considerations to keep in mind about how the app will behave after it is installed. This article provides advice on each one.
379 Planning your app Apps, B2G, Firefox OS, Guide, Mobile
Once you have an idea for a Web app, you should carefully plan it before you start to do any coding or design. This will be amazingly obvious to most of you, but it's a point that cannot be overstated, whether you're creating a completely new app, or repurposing an existing application. This article covers the main concepts to keep in mind as you plan an application and prepare for implementation.
380 UI layout basics Design, Layouts, UI
No summary!
381 Responsive design versus adaptive design Design, Intro, NeedsContent, Web, adaptive, responsive
Both responsive and adaptive design attempt to optimize the user experience across different devices, adjusting for different viewport sizes, resolutions, usage contexts, control mechanisms, and so on.
382 Graphics and UX Apps, CSS, Canvas, Firefox OS, Graphics, Guide, HTML, Layout, SVG, UX, WebGL
When creating Open Web Apps, you need to give a lot of consideration to the look and feel, user experience and workflow of your applications. In previous parts of this material we looked at application planning and flexible layouts for applications, and in this section we will go further, looking at both general patterns and design techniques that work for Open Web Apps, and specific techniques and assets that will help you put together great-looking Firefox OS apps that match the experience of the device's default applications.
383 Icon implementation for apps Apps, B2G, Firefox OS, Icons, dimensions
TBD
384 Open web app architecture Apps
Apps can be installed from the server that hosts them ("self-hosting") or from a store. Mozilla launched the Firefox Marketplace in a test mode for apps in 2012. Other third-party app stores are also possible using this architecture. Apps can be free or paid. Stores can support validation of purchases to ensure that apps are run only by users who purchased them. The Firefox Marketplace will support this.
385 Rec Room - Animation and Graphics Apps, Design, Development, Firefox OS, Quickstart
There are various tools found all around the web for creating animations and graphics for your work. In this article, we will go over a few of these options so that you can use to make your project stand out! For example, CSS is one way to apply animations to HTML elements, while Chartist is a great tool for creating graphs and charts.
386 Tools and frameworks Apps, Firefox OS, Frameworks, Libraries, Tools, Workflows
No summary!
387 Cordova Firefox OS plugin reference Apps, Cordova, Firefox OS, Phonegap
This article provides a reference showing sample code and examples for many of the Cordova plugins that Firefox OS supports.
388 Cordova support for Firefox OS Apps, Cordova, Firefox OS, Phonegap
The Apache Cordova project (which powers Adobe's Phonegap tool) is an industry standard solution for writing an app with open web technologies, and then generating native app versions that will work seamlessly on other platforms such as iOS and Android. As of version 3.1, Cordova is extended to support the creation of open web apps that can be installed on Firefox OS. In this article we will look at how to use the Firefox OS extension to Cordova, and what benefits it brings to the table.
389 Using App templates Apps
What you get:
390 Mortar
(placeholder page for mortar intro)
391 Web components and Mozilla Brick Web Components, brick, building blocks, x-tag
There is a problem with the Web as a platform for applications: HTML, the language that makes it easy to mark up documents and give them meaning doesn't have enough elements to build applications. There are quite a few new elements in the HTML5 spec, but their support is sketchy across browsers and there are still a lot of widgets missing that other platforms like Flex or iOS give developers out-of-the-box. As a result, developers build their own "widgets" like menu bars, slider controls and calendars using non-semantic HTML (mostly <div> elements) and make them interactive using JavaScript and theme-able using CSS.
392 Working with common libraries and frameworks Apps, Frameworks, JavaScript, Libraries, NeedsContent
If you have developed a packaged app with AngularJS, you may run into this error message:
393 X-Tag and the Web Components Family Web Components, shadow dom, x-tag
In the last few years we've witnessed an evolution in what 'app' means to both developers and consumers. The word app evokes the idea of a rich, task-oriented user experience with highly optimized user interface that responds to its environment and can be used on an array of common devices. In order to make development of rich app experiences easier, native platforms have generated many of their own controls and components that Just Work™.
394 X-Tags and custom elements Apps, B2G, Firefox OS, Mobile, Web Components, x-tags
X-tags are custom HTML elements that give you a collection of building blocks (components) for developing HTML5 apps. If you don't see the component you need, you can define your own x-tag and use it like any other native HTML tag. Listed below are ten x-tags and a description of what they are used for.
395 Validating web apps with the App Validator
Some checks that the validator performs include:
396 Archived Mozilla and build documentation
These articles are archived, obsolete documents about Mozilla, Gecko, and the process of building Mozilla projects.
397 ActiveX Control for Hosting Netscape Plug-ins in IE Add-ons, NeedsClassification, Plugins
Microsoft has removed support for Netscape plug-ins from IE 5.5 SP 2 and beyond. If you are a plug-in author, you may find this project saves you a lot of work!
398 Archived SpiderMonkey docs Archive
This section contains old SpiderMonkey documentation.
399 File object JavaScript, SpiderMonkey
Non-Standard Server-Side Object
400 open
Opens the file, specifying file mode and type.
401 Merging TraceMonkey Repo
These are the steps to merge the TraceMonkey repository to mozilla-central. Between resolving conflicts, finding a good time to land, watching the tree, and marking bugs as fixed, it takes around half a day.
402 SpiderMonkey coding conventions JavaScript, SpiderMonkey
The SpiderMonkey project owners enforce coding conventions pretty strictly during code reviews.
403 Autodial for Windows NT Necko, Outdated_articles
This document is intended to explain how the autodial helper feature implemented for bug 93002 works and why it works that way.
404 Automated testing tips and tricks Developing Mozilla
No summary!
405 Automatic Mozilla Configurator Administration, Configuration management, enterprise
No summary!
406 Enabling quicklaunch for all users Administration, Configuration management, enterprise
No summary!
407 How Mozilla finds its configuration files Administration, Configuration management, enterprise
No summary!
408 How Thunderbird and Firefox find their configuration files Administration, Configuration management, enterprise
No summary!
409 Introduction Administration, Configuration management, enterprise
No summary!
410 Kill the XUL.mfl file for good Administration, Configuration management, enterprise
No summary!
411 Locked config settings Administration, Configuration management, enterprise
No summary!
412 Other Mozilla customization pages Administration, Configuration management, enterprise
No summary!
413 Protecting Mozilla's registry.dat file Administration, Configuration management, enterprise
No summary!
414 Automatically Handle Failed Asserts in Debug Builds
As of 2004-12-8, it is now possible to automatically handle failed asserts in debug builds of Mozilla for Windows.
415 BlackConnect Java
No summary!
416 Blackwood Java
No summary!
417 Bonsai Developing Mozilla, Tools
It is a tool that lets you perform queries on the contents of a CVS archive; you can: get a list of checkins, see what checkins have been made by a given person, or on a given CVS branch, or in a particular time period. It also includes tools for looking at checkin logs (and comments); doing diffs between various versions of a file; and finding out which person is responsible for changing a particular line of code ("cvsblame").
418 Bookmark Keywords User_Documentation
Practically every Web surfer has bookmarks, of course, and power surfers usually have hundreds stuffed into folders within folders. In addition to being handy pointers to useful resources, bookmarks in Mozilla can be used to make the address bar itself a power tool. Searches, lookups, package tracking, and even word definitions can all be retrieved from user-customized bookmarks.
419 Build
This page was auto-generated because a user created a sub-page to this page.
420 Building TransforMiiX standalone NeedsHelp, NeedsRewrite, XSLT
No summary!
421 Chromeless Update
[This project may not be active — check Github https://github.com/mozilla/chromeless]
422 Compiling The npruntime Sample Plugin in Visual Studio Add-ons, Plugins
No summary!
423 Creating a Firefox sidebar extension Add-ons, Extensions, Firefox
This article describes how to create a registered sidebar for Firefox 2 or greater. See the references section for information on creating extension in earlier browsers.
424 Creating a Microsummary Microsummaries, Obsolete
A microsummary generator is a set of instructions for creating a microsummary from the content of a page. Web pages can reference generators via <link rel="microsummary"> elements in their <head> elements. Generators can also be independently downloaded and installed by users if they include a list of pages to which they apply.
425 Creating a Mozilla Extension Add-ons, Extensions
A Mozilla extension is an installable enhancement to the Mozilla browser that provides additional functionality (for example Linky, which adds an item to the context menu for opening multiple links in a document or selection). This tutorial walks you through the process of building a Mozilla extension that adds an icon to Mozilla's status bar showing the current status of the Mozilla source code (i.e. whether or not the latest version of the code is compiling successfully and passing tests). The extension will access Tinderbox, mozilla.org's webtool for tracking source code status, to get the status of the code.
426 Adding the structure Add-ons, Extensions
The UI for our extension is an icon in the status bar. To implement this UI, we'll add a statusbarpanel element to the statusbar element in the navigator.xul file.
427 Conclusion Add-ons, Extensions
You now have a working Mozilla extension installer! To test it, try installing the extension on a fresh copy of Mozilla by loading the file in your Mozilla browser (this works whether you load it from the web or from your local hard drive via a file:/// URL). Mozilla will automatically detect that the file is an installer and ask you if you want to install the software. Try installing the extension, restarting Mozilla, and see if it works.
428 Enabling the behavior - retrieving tinderbox status Add-ons, Extensions
Our Mozilla extension now exists, but it doesn't do anything. To make it work we have to add JavaScript code that changes its status when the tinderbox status changes. The first step is to write a function that queries the tinderbox server and retrieves the current status.
429 Enabling the behavior - updating the status bar panel Add-ons, Extensions
No summary!
430 Enabling the behavior - updating the status periodically Add-ons, Extensions
No summary!
431 Finding the code to modify Add-ons, Extensions
Now that we've found the file to edit, we need to find the specific code within that file. Again, the DOM Inspector makes this easy. The "Document - DOM Nodes" pane on the left-hand side of the Inspector window displays a tree representation of the browser window's XUL file. When you select a node in the tree, a red border flashes for several seconds around the visual representation of that node in the browser window.
432 Finding the file to modify Add-ons, Extensions
Now that we have a hackable Mozilla, it's time to find the file we want to hack. Mozilla's UI is divided into three layers: the structure, the style, and the behavior. The structure layer identifies the widgets (menus, buttons, etc.) and their position in the UI relative to each other, the style layer defines how the widgets look (size, color, style, etc.) and their overall position (alignment), and the behavior layer specifies how the widgets behave and how users can use them to accomplish their goals. mention the localization layer
433 Making a Mozilla installation modifiable Add-ons, Extensions
Mozilla's user interface is made up of XUL (described below), XBL (a topic for another tutorial), JavaScript, CSS, and image files. XUL, XBL, JavaScript, and CSS files are all in text format and can be edited in a standard text editor, while image files are in binary GIF, JPG, or PNG format and must be edited with an image editing program.
434 Making it into a dynamic overlay and packaging it up for distribution Add-ons, Extensions
Now that we have a static overlay we're in good shape to create a XPI package that installs our extension as a dynamic overlay. XPIs have a complex structure designed to separate UI layers from each other. To make our XPI we'll start out by creating a directory to hold the files we're going to add to the XPI. Then we'll modify URLs in our files so they point to the right place. After that we'll create a contents.rdf file describing the tinderstatus component for the chrome registry and an install.js script to perform the installation. Finally we'll zip the files into an archive.
435 Making it into a static overlay Add-ons, Extensions
Now that we have a working Mozilla extension that shows tinderbox status, we need to make it distributable to other users. The two ways of doing that are to integrate it into the Mozilla codebase (in which case it is no longer an extension but rather part of the default Mozilla distribution) and to package it into an installer that users can run from within Mozilla to add the extension to their Mozilla installation.
436 Prerequisites Add-ons, Extensions
In order to complete this tutorial you need to have and know how to use the following programs on your computer:
437 Specifying the appearance Add-ons, Extensions
Now that we have defined a panel in which to display an icon, we use CSS to specify which icon to display. For this we have to first create four icons, one for each tinderbox state (none, success, test failed, and busted), then create a set of CSS rules that displays the icon corresponding to the current tinderbox state:
438 Tinderbox Add-ons, Extensions
Tinderbox is a web tool for tracking the status of the Mozilla source code. It consists of a set of client machines that continuously build and test Mozilla and report their results back to a server that makes those results available via a web page. The tool enables mozilla.org to be immediately notified of changes to the code that prevent Mozilla from compiling and running (or compromise performance and footprint) so they can get someone to fix the problem or reverse the changes.
439 Creating a Release Tag Junk
Here are directions for creating a release from a linux system. Note that there are a couple of extra files for Win32 and Macintosh that aren't pulled by the normal script and need to be pulled by hand. The mini-branch is created so you can check in the build scripts with the necessary changes without touching the original branch.
440 Creating a Skin for Firefox/Getting Started Add-ons, Themes
Download the latest version of Firefox and install it. Be sure to install the DOM Inspector extension as well.
441 Creating a Skin for Mozilla Add-ons, NeedsUpdate, O, Themes
In order to create a skin for mozilla, you will need to know three things. How to edit images, extract zip files, and how to modify CSS. Mozilla uses standard gif, png, and jpeg images for the buttons and CSS to style everything else in the interface.
442 FAQ Add-ons, NeedsUpdate, Ob, Themes
Unfortunately, yes. Every time there is a major change made to the interface, either visible or behind the scenes, your skin will have problems. When the Mozilla developers make changes like this, they increase the skin version number. This is the number that is defined in contents.rdf. Test your skin with every major release of Mozilla. If a message appears in the preferences window telling you that it's an old skin, you're going to have to look over the code to see what changed.
443 Getting Started Add-ons, Guide, Themes
No summary!
444 In-Depth Add-ons, Themes
No summary!
445 Links Add-ons, Themes
No summary!
446 contents.rdf Add-ons, Themes
No summary!
447 toolbarBindings.xml Add-ons, Themes
No summary!
448 Creating a Skin for SeaMonkey 2.x SeaMonkey
You're going to make a theme for SeaMonkey 2, but don't know how? I hope this manual will help you.
449 Getting Started
The folder containing Seamonkey is called folder_with_seamonkey in this manual.
450 chrome.manifest
Copy the following text and paste it into a text file, then save that file as "chrome.manifest":
451 install.rdf
Copy the following text and paste it into a text file, then save that file as "install.rdf":
452 Creating a hybrid CD Developing Mozilla, Outdated_articles
No summary!
453 Creating regular expressions for a microsummary generator Microsummaries, Obsolete
A regular expression is a special kind of string (i.e. a sequence of characters) that matches patterns of characters in other strings. Microsummary generators use them to identify the pages that the generators know how to summarize by matching patterns in those pages' URLs.
454 DTrace Archive, DTrace, Performance, Profiling, QA, Testing
 DTrace is Sun Microsystem's dynamic tracing framework that allows developers to instrument a program with probes that have little to no effect on performance when not in use and very little when active. Probe data can be collected with scripts written in D (no, not that one). Mozilla DTrace support has been added by the Sun DTrace team and can be used on Solaris 10 and Mac OS X 10.5.
455 Dehydra Dehydra
The development focus switched to DXR (where the "D" comes from "Dehydra"), which is based on clang instead of gcc. Try DXR instead, or else try the gcc python plugin: https://fedorahosted.org/gcc-python-plugin/.
456 Dehydra Frequently Asked Questions Dehydra
Initially Dehydra was written as an easy way to look for patterns in Control Flow Graphs (CFGs). Images of those graphs reminded me of the multiheaded Hydra monster. Thus De-hydra can be thought of as a decapitating tool for slaying CFGs. Currently Dehydra does not provide the CFG functionality, this functionality is now provided by Treehydra.
457 Dehydra Function Reference
The following functions may be provided by the analysis script and will be called by Dehydra while compiling. See the Dehydra object reference for details on the available object properties.
458 Dehydra Object Reference
Dehydra represents C++ types and variables as JavaScript objects. The objects are designed to distill that type system to the minimum such that it can be easy to match on.
459 Installing Dehydra Dehydra
It is recommended that you use SpiderMonkey revision AURORA_BASE_20110705 when building Dehydra.
460 Using Dehydra
As GCC compiles file, Dehydra calls functions in the user analysis script with information about the code being compiled. For more information, see the function reference and the object reference.
461 Developing New Mozilla Features Developing Mozilla, Outdated_articles
Tips For Contributing New Features To Mozilla.
462 Devmo 1.0 Launch Roadmap MDC Project archives
Comments, ideas, questions and other discussion should be added on the Devmo talk:1.0 Launch Roadmap page. Further details on smaller tasks being done are available at User:Dria:TODO page. See also Current Events.
463 Download Manager improvements in Firefox 3 Download Manager, Firefox 3
Firefox 3 offers improvements to the Download Manager that allow multiple progress listeners, use of the Storage API for data management, download resuming, and more. In addition, you can augment or replace the Download Manager's user interface by implementing the new nsIDownloadManagerUI interface.
464 Download Manager preferences
There are several preferences used by the Download Manager. This article provides a list of them.
465 Drag and Drop XUL
This section describes how to implement objects that can be dragged around and dropped onto other objects.
466 Drag and Drop Example XUL
An example of implementing drag and drop will be implemented in this section.
467 Drag and Drop JavaScript Wrapper XUL
No summary!
468 Drag and drop events Firefox 3
Firefox 3 adds two new events that allow you to determine when drag operations begin and end. These events are new in the current working draft of the HTML 5 specification.
469 Editor Embedding Guide Embedding Mozilla, Guide, Midas, NeedsHelp
Given an nsIWebBrowser instance, get an nsIDOMWindow from the GetContentDOMWindow call. Then simply call nsIWebBrowser->do_GetInterface on the nsIWebBrowser to retrieve the nsIEditingSession from it. From there you call editingSession->MakeWindowEditable(domWindow, editortype, PR_TRUE). The first parameter is the nsIDOMWindow you just retrieved, the second is the editor type you want to create, and the third is whether you want the window editable immediately or when the document is done loading. In calling this method, the editor is created underneath and the event listeners are all prepa if (NS_FAILED(rv)) return NS_ERROR_FAILURE; // we are not setup??!! nsCOMPtr<nsIEditingSession> editingSession; nsIWebBrowser->do_GetInterface(getter_AddRefs(editingSession)); if (editingSession) editingSession->MakeWindowEditable(domWindow, "html", PR_TRU?E);
470 Embedding FAQ Embedding Mozilla
No summary!
471 Embedding Mozilla in a Java Application using JavaXPCOM Embedding Mozilla, JavaXPCOM, Obsolete, XPCOM:Language Bindings
XULRunner ships with the JavaXPCOM component, which allows Java code to interact with XPCOM objects. As you will see in this article, working with XPCOM objects in Java is not that much different than doing so in C++.
472 Error Console Extensions, Extensions:Tools, JavaScript, JavaScript:Tools, Tools, Web Development, Web Development:Tools
The Error Console is a tool available in most Mozilla-based applications that is used for reporting errors in the application chrome and in web pages user opens. It reports JavaScript-related errors and warnings, CSS errors and arbitrary messages from chrome code. In Firefox, the Error Console can be opened from the tools menu or by Ctrl-Shift-J.
473 Exception logging in JavaScript Extensions, Extensions:Tools, Guide, JavaScript, JavaScript:Tools, Tools, Web Development, Web Development:Tools
Technical review completed.
474 Existing Content
This is a list of existing mozilla.org documentation. It needs to be checked, prioritized, and migrated.
475 Extension Frequently Asked Questions
This is quick set of answers to the most common issues with extension development. They are currently written with mostly Firefox in mind, but most if not all should easily translate to SeaMonkey, Thunderbird or any of the other applications. For Thunderbird, you may also find the extension HowTo or FAQ pages helpful.
476 External CVS snapshots in mozilla-central
mozilla-central contains copies of external software modules that it depends on.
477 Fast Graphics Performance With HTML
No summary!
478 Fighting Junk Mail with Netscape 7.1 User_Documentation
Summary: Is your mail account drowning in a flood of spam? Netscape 7.1 includes built-in junk mail filtering that you can train to meet your specific needs. Eric Meyer share his experiences with making the junk mail controls more effective, and looks at other preferences you might want to set to keep your account safe.
479 Firefox Archive, Firefox
Out-of-date information about the Firefox project.
480 Block and Line Layout Cheat Sheet Gecko
The details of block and line layout are tricky; this document serves as a "cheat sheet" that describes how the vagary of different state flags control what's going on. It's a work-in-progress, with questions in red highlight. If you know the answer, please pass it along to me so I can update the document.
481 Content states and the style system Developing Mozilla
Content states are what Gecko uses to implement the various state-dependent in CSS (examples would be :hover, :active, :focus, :target, :checked). We will focus on describing how changes in content state are handled.
482 Disabling interruptible reflow
Add the following variables to your environment to disable Gecko interruptible reflow:
483 Document Loading - From Load Start to Finding a Handler DocShell, Outdated_articles, Uriloader
This document describes the beginning of the document loading process. We start with the request to load a particular link in a particular window, and proceed up to the point at which the data stream is dispatched to the proper handler. The final goal is to find the correct stream listener to pump the data into when necko calls OnDataAvailable (e.g., we may find the HTML parser as the stream listener to give the data to).
484 Documentation for BiDi Mozilla Developing Mozilla, Internationalization
This is preliminary documentation of the changes introduced to Mozilla as part of the BiDi support contributed by IBM (a.k.a. IBMBIDI), written by Simon Montagu and posted to the mozilla-layout mailing list. While it was published in 2001 and might not be totally accurate, it does help understanding the internals of the BiDi code.
485 Downloading Nightly or Trunk Builds NeedsUpdate, QA
There are some terms that are used by the Mozilla community. One sees them on IRC or in bugs. It can be helpful to know exactly what these refer to. Note that this is an attempt at describing the current usage of these terms. This usage may change.
486 JSS build instructions for OSX 10.6 JSS
The following build instructions were provided by PAVRW. The generic instructions didn't work to build on OSX 10.6.7.
487 Layout FAQ NeedsUpdate
No summary!
488 Layout System Overview Gecko
Layout is primarily concerned with providing a presentation to an HTML or XML document. This presentation is typically formatted in accordance with the requirements of the CSS1 and CSS2 specifications from the W3C. Presentation formatting is also required to provide compatibility with legacy browsers (Microsoft Internet Explorer and Netscape Navigator 4.x). The decision about when to apply CSS-specified formatting and when to apply legacy formatting is controlled by the document's DOCTYPE specification. These layout modes are referred to as 'Standards' and 'NavQuirks' modes. (DOCTYPE and modes are explained in more detail in article Mozilla's DOCTYPE sniffing.
489 Multiple Firefox profiles
No summary!
490 Repackaging Firefox enterprise
Notice: The article is about repackaging Firefox 2.0 and is obsolete when working on 3.x repackaging.
491 SOAP in Gecko-based Browsers SOAP, XML Web Services
This article shows how to access web services using the SOAP and JavaScript capabilities available in recent Gecko-based browsers (though support for SOAP is being dropped in Firefox 3).
492 Style System Overview Gecko
Style sheets & rules
  ↓
Rule tree
  ↓
Style context interface
493 Using microformats Firefox 3, Microformats
Microformats allow web sites to provide semantic data to the browser in order to make it possible to present summaries of the information on a page without having to know how to parse the document itself. Firefox 3 implements a global Microformats object that provides access to microformats. This object and its API make finding and reading microformats easy to do.
494 Firefox Sync Sync
Sync refers to a family of related components and services which provide synchronization of data between Mozilla application instances. These components and services include:
495 Code snippets
This page documents how to perform custom actions with Firefox Sync via JavaScript.
496 JavaScript Client API Sync
This page describes how to use the internal client-side Sync JavaScript API. This API is available in Mozilla-based products that use Sync, such as Firefox desktop. This document is somewhat outdated, and the API isn't well-supported for use from add-ons; tread carefully.
497 Syncing custom preferences Sync
When preferences sync is enabled, Firefox Sync will synchronize preferences between the same application based on a whitelist. That means preferences between Firefox and Fennec, for instance, are never synced. To sync preferences between Firefoxes, Fennecs, Thunderbirds, etc., ensure the prefs are whitelisted.
498 Force RTL
(This is a temporary placeholder/stub for the Force RTL page)
499 GRE Gecko, XUL, XULRunner
The framework for embedding Mozilla technologies was at one point called the GRE (Gecko Runtime Environment). This embedding framework allows applications to locate a compatible Gecko runtime and embed it without knowing in advance where that runtime will be installed. This document describes how embedders should dynamically link to a GRE. To understand how GREs are registered, see GRE Registration.
500 GRE Registration Gecko, XUL, XULRunner
No summary!
501 Gecko Coding Help Wanted Gecko, NeedsHelp, NeedsUpdate
Take a look through LXR, and you'll realize that Mozilla's source code is a big place.
502 HTTP Class Overview Necko
This document provides an overview of the classes used by the Mozilla HTTP implementation. It's meant as a guide to developers wishing to understand or extend the Mozilla HTTP implementation.
503 Hacking wiki MDC Project archives
To be able to hack the MDC wiki software, you'll need a local webserver install, which can run MediaWiki.
504 Help Viewer Toolkit API, XUL, XULRunner
Help Viewer: Allows information to be shown to the user inside Mozilla.
505 Creating a Help Content Pack
Original doc: http://www.mozilla.org/projects/help.../content_packs I hesitate to call it "original", tho, because I've basically rewritten the entire thing so that it's easier and faster to use to create Help content. The previous document had a lot of places where ideas were simply introduced without explanation, and I've tried to go through things a bit more slowly with better descriptions. This is still very much a work in progress, tho, and I need to complete the rest of it soon (where "complete" means "use what's there that's good, build on the stuff that's not as good, and add other useful information as necessary".
506 Helper Apps (and a bit of Save As) Outdated_articles, Uriloader
Image:overview.png
507 Hidden prefs
This page has been flagged by editors or users as needing technical review. Until it is fully reviewed, it may contain inaccurate or incorrect information.
508 How to Write and Land Nanojit Patches Obsolete
Adobe and Mozilla share a copy of Nanojit. This means that landing nanojit patches is a bit complicated, but experience has taught us that this is much better than having separate versions of nanojit.
509 IO Guide/Directory Keys
"Directory Keys" are the keys for nsIDirectoryService, see description. The actual keys are:
510 Introducing the Audio API extension Deprecated
The Audio Data API extension extends the HTML5 specification of the <audio> and <video> media elements by exposing audio metadata and raw audio data. This enables users to visualize audio data, to process this audio data and to create new audio data.
511 Isp Data Administration, enterprise
This page will explain how to create a .rdf or .xml file that you can place in the $INSTALLFOLDER/default/isp to do a variety of things. This page applies to Thunderbird (Mail/News).
512 Java in Firefox Extensions Add-ons, Extensions, Java
If you are in need of calling Java code from within a Firefox extension, you can make use of LiveConnect. LiveConnect gives your extension's JavaScript code (linked from or contained in XUL code) access to 2 objects: java and Packages (note that per this thread, although the new documentation for the LiveConnect reimplementation states that these globals will be deprecated (in the context of applets), "Firefox and the Java Plug-In will continue to support the global java/Packages keywords, in particular in the context of Firefox extensions."). These 2 objects let you make use of the standard JDK classes, e.g.,
513 JavaScript OS.Shared
Module OS.Shared contains tools to interact with the operating system (and, more generally, in C) in JavaScript. All these tools are designed to be used with js-ctypes.
514 JavaScript crypto
Mozilla defines a special JavaScript object to allow web pages access to certain cryptographic-related services. These services are a balance between the functionality web pages need and the requirement to protect users from malicious web sites. Most of these services are available via the DOM window object as window.crypto.
515 CRMF Request object
RFC 4211, the Internet X.509 Public Key Infrastructure Certificate Request Message Format (CRMF), defines a certReqMessage. The object returned by generateCRMFRequest() contains one of those.
516 generateCRMFRequest() NSS
This method will generate a sequence of CRMF requests that has N requests. One request for each key pair that is generated. The first three parameters will be applied to every request. The "escrowAuthorityCert" parameter will only be used for requests that pertain to a key that is being escrowed. After the "escrowAuthorityCert" parameter, the method takes some JavaScript code that is invoked when the CRMF request is ready. Finally, there are 1 or more sets of key generation arguments. Each key generation will be associated with its own request. All the requests will have the same DN.
517 importUserCertificates NSS
The importUserCertificates() method is used to import newly issued certificates for the user. The private key for the certificates must already reside in the user's personal private key database.
518 popChallengeResponse NSS
The resultString will either be a base-64 encoded POPODecKeyRespContent message, or one of the following error strings:
519 Jetpack
520 Basics
Writes some information to the Error Console. You can find the console in the Extra Menu of Firefox.
521 Content
No summary!
522 Page modifications
This documentation is under development.  Please see the page modifications API proposal for now.
523 Extenders
No summary!
524 Jetpack Snippets
Bits of code that may come in handy. Feel free to add your own!
525 Libraries
Namespace: jetpack.lib
526 Twitter
Jetpack's Twitter library, jetpack.lib.twitter, is a very simple, lightweight layer on top of Twitter's REST API. In fact it's hardly more than syntactic sugar for doing XMLHttpRequests.
527 Meta
No summary!
528 Enabling
The proposed method for accessing Jetpack features that are still in development and may be added in the future is inspired by python's future module. In Python, you can call
529 Enabling Experimental Jetpack Features
The proposed method for accessing Jetpack features that are still in development and may be added in the future is inspired by python's future module. In Python, you can call
530 First Run
Jetpack lets you specify arbitrary content that will be shown to your users when they install your jetpack. You can also register a callback that will be called after installation.
531 First run
Jetpack lets you specify arbitrary content that will be shown to your users when they install your jetpack.  You can also register a callback that will be called after installation.
532 Me
The jetpack.me namespace provides mechanisms for introspecting the dynamic state of your jetpack. The namespace currently lives in the future and must be imported before it is used:
533 Settings
The jetpack.storage.settings namespace allows jetpacks to specify user-configurable settings. Jetpack will automatically generate a user interface based on the specification. The settings persist across browser sessions and are stored using the Jetpack [simple storage API][]. Settings are private to each jetpack and are not accessible by other jetpacks.
534 Multimedia
No summary!
535 Storage
No summary!
536 File access
Click on the paper-clip icon below for a demonstration of the file upload dialog.
537 Settings
The jetpack.storage.settings namespace allows jetpacks to specify user-configurable settings. Jetpack will automatically generate a user interface based on the specification. The settings persist across browser sessions and are stored using the Jetpack simple storage API. Settings are private to each jetpack and are not accessible by other jetpacks.
538 Simple Storage
The jetpack.storage.simple namespace provides an easy way to persist data across browser restarts. It's a simple key-based persistent object data store.
539 System
No summary!
540 Clipboard
Jetpack's clipboard support API provides a standardized way for features to access the clipboard. Features can get and set the clipboard in various flavors of data type.
541 Clipboard
Jetpack's clipboard support API provides a standardized way for features to access the clipboard. Features can get and set the clipboard in various flavors of data type.
542 Clipboard Test
<style></style>
543 Clipboard Test
Jetpack's clipboard support API provides a standardized way for features to access the clipboard. Features can get and set the clipboard in various flavors of data type.
544 System information
This documentation is under development.  Please see the system information API proposal for now.
545 UI
No summary!
546 Menu
Jetpack's menu API allows features to access and modify the browser's built-in menus.  Features can also create new menus and attach them almost anywhere, chrome or content, as popup menus or context menus.
547 Notifications
The Notification Box appears at the bottom right corner of the browser and displays important information to the user.
548 Panel
Please refer to the Panels JEP.
549 Selection
Jetpack's selection API provides a method for detecting the selections made by the user. Features can get, set, and listen for selection events in HTML or plain text.
550 Selection
Jetpack's selection API provides a method for detecting the selections made by the user. Features can get, set, and listen for selection events in HTML or plain text.
551 Tabs
In this class you can find information about the tabs in your Firefox window.
552 slideBar
slideBar is a reinvention of the old sidebar features of browsers. They allow quick access to a wide range of both temporary and permanent information at the side of your browser window. When a slideBar feature is selected its contents will be revealed from behind the current webpage.
553 slideBar
To implement a new slideBar within your jetpack code, use the method jetpack.slideBar.append(options)
554 Users
No summary!
555 aza
No summary!
556 Dropbox
No summary!
557 docs
No summary!
558 Meta
No summary!
559 Enabling Experimental Jetpack Features
The proposed method for accessing Jetpack features that are still in development and may be added in the future is inspired by python's future module. In Python, you can call
560 Storage
No summary!
561 Simple Storage
The jetpack.storage.simple namespace provides an easy way to persist data across browser restarts. It's a simple key-based persistent object data store.
562 System
No summary!
563 Clipboard
Jetpack's clipboard support API provides a standardized way for features to access the clipboard. Features can get and set the clipboard in various flavors of data type.
564 UI
No summary!
565 Selection
Jetpack's selection API provides a method for detecting the selections made by the user. Features can get, set, and listen for selection events in HTML or plain text.
566 jspage
No summary!
567 statusBar
No summary!
568 statusBar Class
The Class statusBar contains functions to add and control the Statusbar of the Browser. You can find the complete Sourcecode in the status-bar-panel.js file in your Jetpack Repository.
569 Litmus tests
Litmus tests are (non-automated) tests that are documented in the litmus database. See http://litmus.mozilla.org.
570 Mac OS X Build Prerequisites/fink
Fink is a package management system for Mac OS X, alternative to MacPorts. It doesn't seem to be as well maintained (in terms of available packages) as macports, so it is strongly suggested that you use macports instead of fink.
571 Makefile.mozextension.2
This Makefile is a modification of the Makefile.mozextention, found in Makefile for packaging an extension - MozillaZine Knowledge Base (2005).
572 Message Summary Database MailNews, thunderbird
The Mail Summary Files (.msf) are used to store summary information about messages and threads in a folder, and some meta information about the folder.
573 Metro browser chrome tests Automated testing, Developing Mozilla, Metro Browser
The metro browser chrome test suite is an automated testing framework designed to allow testing of the immersive version of Firefox for Windows 8 and above using JavaScript. It currently allows you to run JavaScript code in the same scope as the immersive browser and report results using the same functions as the Mochitest test framework.
574 Microsummary topics Microsummaries
To programmatically install a microsummary generator -- for example, in an extension that helps users create custom generators for their favorite sites -- obtain a reference to the nsIMicrosummaryService interface implemented by the nsIMicrosummaryService component, then call its installGenerator() method, passing it an XML document containing the generator.
575 Microsummary XML grammar reference Microsummaries
A microsummary generator is an XML document that describes how to pull specific information from a web page to be presented in summary form as a bookmark whose title changes based on the content of the page it targets.
576 Migrate apps from Internet Explorer to Mozilla
When Netscape started the Mozilla browser, it made the conscious decision to support W3C standards. As a result, Mozilla is not fully backwards-compatible with Netscape Navigator 4.x and Microsoft Internet Explorer legacy code; for example, Mozilla does not support <layer> as I will discuss later. Browsers, like Internet Explorer 4, that were built before the conception of W3C standards inherited many quirks. In this article, I will describe Mozilla's quirks mode, which provides strong backwards HTML compatibility with Internet Explorer and other legacy browsers.
577 Modularization techniques Mozilla, XPCOM
The purpose of this document is provide all the information you need to create a new Mozilla Module or break existing code into a module. The mechanism we're using is based on the principles laid down by COM, so pretty much anything you know about COM can be applied here, and any reference on COM can provide you with more interesting and complex examples than the ones provided here.
578 Monitoring downloads Download Manager, Firefox 3
Firefox 3 makes it easier than ever to monitor the status of downloads. Although it was possible to do so in previous versions of Firefox, it was previously only possible for one observer to do so at a time. Firefox 3 introduces new API that allows any number of listeners to observe downloads.
579 Mozilla Application Framework Developing Mozilla, XUL, XULRunner
The Mozilla Application Framework: for powerful, easy to develop cross-platform applications
580 Mozilla Application Framework in Detail Developing Mozilla, XUL, XULRunner
No summary!
581 Mozilla Crypto FAQ NSS, Outdated_articles
In this document I try to answer some frequently asked questions about the Mozilla web browser and mail/news client and its support for SSL, S/MIME, and related features based on cryptographic technology. Note that this document is for your information only and is not intended as legal advice. If you wish to develop and distribute cryptographic software, particularly for commercial sale or distribution, then you should consult an attorney with expertise in the particular laws and regulations that apply in your jurisdiction.
582 Mozilla Modules and Module Ownership Developing Mozilla
REDIRECT https://www.mozilla.org/hacking/module-ownership.html
583 Mozprocess
mozprocess provides python process management via an operating system and platform transparent interface to Mozilla platforms of interest. Mozprocess aims to provide the ability to robustly terminate a process (by timeout or otherwise), along with any child processes, on Windows, OS X, and Linux. Mozprocess utilizes and extends subprocess.Popen to these ends.
584 Mozprofile Junk
Mozprofile is a python tool for creating and managing profiles for Mozilla's applications (Firefox, Thunderbird, etc.). In addition to creating profiles, mozprofile can install addons and set preferences.
Mozprofile can be utilized from the command line or as an API.
585 Mozrunner Junk
mozrunner is a python package which handles running of Mozilla applications. mozrunner utilizes mozprofile for managing application profiles and mozprocess for robust process control.
586 NSC_SetPIN
No summary!
587 Nanojit Developing Mozilla, SpiderMonkey
Nanojit is a small, cross-platform C++ library that emits machine code. Both the Tamarin JIT and the SpiderMonkey JIT (a.k.a. TraceMonkey) use Nanojit as their back end.
588 LIR
In Nanojit, LIR is the source language for compilation to machine code. LIR stands for low-level intermediate representation.  It is a typed assembly language.
589 New Security Model for Web Services SOAP
The proposed declaration file places the server operator, not the client in control of access to his server by untrusted scripts. The access hole is no bigger than the service in question. The access is disabled by default, and there is nothing the user needs to do to open access, and nothing that can go wrong to make a hole in his firewall. It seems fairly easy to drop an access file into the root directory of the web server to allow access.
590 New Skin Notes MDC Project archives
Devmo has a new skin that is ready for testing. If you go to your user preferences, you can change the skin to "Devmo". This is currently just a preview, but we would appreciate help with testing.
591 Overview of how downloads work DocShell, Embedding Mozilla, Necko, Uriloader
There are two ways of downloading files in Mozilla. One way is to encounter a file with an unknown content type, the other is to choose "Save link target as" from the context menu of a link. Things like File|Save Page as, Save Image As, etc. are all part of the second codepath.
592 Persona Persona
Mozilla Persona is a cross-browser login system for the Web, that's easy to use and easy to deploy. It works on all major browsers, and you can get started today.
593 .well-known-browserid Persona
Domains advertise their ability to act as Persona Identity Providers (IdPs) by publishing a support document at /.well-known/browserid. This JSON-formatted document must be served over HTTPS with the content type application/json.
594 Browser compatibility Persona
Persona is developed, tested, and supported with the following browsers. Thanks to Persona's cross-platform JavaScript library, users do not need add-ons in order to use Persona.
595 Cryptography Persona
The Persona identity system uses public key cryptography to ensure trust and security in authentication.
596 FAQ Persona
Persona is a complete implementation of a new, distributed login system from Mozilla.
597 Glossary Persona
Persona is a complete implementation of a new, distributed login system from Mozilla.
598 Identity Provider Overview Extensions, Graphics, Persona, Tutorial
A Persona Identity Provider (IdP) is a domain which directly signs and certifies the identities of its users. Because Persona identities are based on email addresses, any domain which offers email to its users is a natural fit for becoming an IdP.
599 Implementing a Persona IdP Persona
After you've read the Identity Provider overview, this document will guide you through implementing a Persona Identity Provider (IdP). This page provides a guide to implementating an IdP. For details of the current data formats used by Persona, you should refer to the BrowserID specification.
600 Internationalization Persona
In the future, the user interface for signing into sites with Persona will be directly integrated into the browser, and thus localized along with the browser's own localization. For browsers without integrated support, Persona's user interface consists of a series of dialogs served from login.persona.org. These dialogs are translated by a team of community volunteers, and more than 45 locales are currently enabled in production.
601 Libraries and plugins Persona
Want to use Persona on your website or blog? Implementing Persona from scratch is easy, but the plugins and libraries listed here might get you going faster!

This page lists three types of libraries:

1. Plugins that integrate Persona with existing frameworks and content management systems
2. Utility libraries that are useful when building new plugins or integrating Persona into a site from scratch
3. Everything else related to Persona, including libraries for turning your domain into a Persona Identity Provider

This is a community-maintained list. If you've created a library or plugin, please add it to this page.
602 Persona Hosted Services Persona
To be truly successful and decentralized, Persona needs support from three different groups:
603 Protocol Overview Persona
Persona is built on the BrowserID protocol. This page describes the BrowserID protocol at a high level.
604 Quick Setup Persona
Adding the Persona login system to your site takes just five steps:
605 Remote Verification API Persona
When a user tries to log into a website, their browser generates a data structure called an assertion, which is essentially a cryptographically signed email address. The browser sends this assertion to the website, which must verify that the assertion is valid before logging the user in.
606 Security considerations Persona
When you add Persona support to your website, Persona takes on as much of the security burden as it can. However, some aspects of security can only be handled by your website. They're listed below.
607 The implementor's guide Persona
The Quick setup guide should be enough to get you started, but when building a full production site you'll probably need features that aren't covered in that guide. In this page we've collected features that are commonly needed by sign-in systems, and explained the best-practice way to implement them with Persona.
608 Adding extra email addresses with Persona Persona
It's a good idea to allow your users to add extra email addresses to their account. This enables users to change their email addresses, and to access their account with you even if they are unable to access their primary email account.
609 Call logout() after a failed login Persona
After your onlogin handler gets called with an assertion, if for any reason you can't use the assertion to log the user in, you must call navigator.id.logout().
610 Call request() only from a click handler Persona
The Persona dialog is currently implemented as a popup window. Modern web browsers typically block popups, unless they are triggered directly by a mouse click or a key press. This means that your call to navigator.id.request() or navigator.id.get() must be made directly from a click or keypress handler. If it's made in response to some other event, the popup won't be shown and the user won't be able to sign in.
611 Enabling users to change their email address Persona
Because in Persona usernames are email addresses, it's not obvious how you can let your users change their email address. We're working on improving the flow for this and at the moment it is a little awkward, but it is possible if you follow these steps:
612 Problems integrating with CRSF protection Persona
If you implement a particular type of protection against CSRF (Cross-Site Request Forgery) login attacks, you will experience a problem when a user has multiple pages open on your site, and then tries to log in using one of them. This document explains what the problem is, and how to resolve it.
613 Supporting users without JavaScript Persona
Persona currently requires JavaScript. If you need to support users who don't have JavaScript enabled, you'll have to implement an alternative login scheme for these users, and disable the "Sign in with Persona" button, enabling it in the JavaScript code that connects the sign-in button to navigator.id.request().
614 Testing Persona, checkmate
If you're making a production system you will need to write integration tests that simulate logging a user in and out of your site using Persona.
615 The navigator.id API
With Persona, a website asks the user to provide an "assertion", which is a digitally signed email address. By verifying the signature, the site can be assured that the user really does control the address in question. The site can then use this email address as an identifier for that user.
616 User Interface guidelines Persona
Presenting sign-in options to users without confusing them can be difficult, especially if your site offers multiple sign-in options. This article aims to provide guidance about the best way to present Persona sign-in to your users. It covers four different possible approaches, depending on the different sign-in options the website supports:
617 Why Persona for Mozilla? Featured, Intro, Persona
Persona utilizes a safe, two-click system built on top of public-key cryptography for logging in to websites. The user's browser generates a cryptographic affirmation of identity that expires after a few minutes and is only valid on one site. By avoiding passwords, users do not need to worry about remembering several distinct passwords and need no longer be concerned with unsecure access to their password. This quick and easy sign-in process eliminates the current inefficiencies of traditional account registration and allows users to quickly establish accounts on websites.
618 Plug-n-Hack Security, plugnhack
Plug-n-Hack (PnH) is a proposed standard from the Mozilla security team for defining how security tools can interact with browsers in a more useful and usable way.
619 Plug-n-Hack Get Involved Security, plugnhack
While this project has been started by the Mozilla Security Team and has been validated with Firefox and OWASP ZAP, this is an open project and we welcome involvement from anyone, especially people working on other browsers and security tools.
620 Plug-n-Hack Phase1 Security, plugnhack
Plug-n-Hack (PnH) phase 1 allows easier integration and defines how security tools can advertise their capabilities to browsers.
621 Plug-n-Hack Phase2 Security, plugnhack
The next phase of Plug-n-Hack (PnH) is still being planned but is intended to allow browsers to advertise their capabilities to security tools.
622 Plug-n-Hack Tools Supported Security, plugnhack
623 Plugin Architecture Add-ons, Developing Mozilla, NeedsTechnicalReview, NeedsUpdate, Plugins
This page contains some notes on how plugins work internally in Gecko. It is mainly of interest to Gecko developers.
624 Porting NSPR to Unix Platforms NSPR
Last modified 16 July 1998
625 Priority Content
Update: I've removed documents from this list that have been migrated into the wiki. The list of completed documents is available through the DevEdge page.
626 Prism prism
Prism is a simple XULRunner-based browser that hosts web applications without the normal web browser user interface. Prism is based on a concept called Site-Specific Browsers (SSB). An SSB is designed to work exclusively with a single web application. It doesn’t have the menus, toolbars and other accoutrements of a traditional web browser. An SSB also offers tighter integration with the operating system and desktop than a typical web application running through a web browser. Applications running in an SSB are therefore able to benefit from many of the advantages of the desktop and of the web at the same time.
627 BlogPosts prism
Just Browsing: Mozilla Prism Update
ThansCorner: Mozilla Prism - Webrunner with Pazzaz
Mozilla Prism - A Revolution in Web Apps
ThansCorner: Mozilla WebRunner 0.7
Site Specific Browsers
WebRunner
Using WebRunner
WebRunner + Gears = Offline Desktop Reader
WebRunner 0.5
WebRunner 0.5 - Mac Support
WebRunner 0.5 - Linux Install
WebRunner, Google Reader, and Google Notebook
Distraction Free GTD - 32+ web app files for online todo lists
Mozilla WebRunner: a one-window, tabless browser with no URL bar
WebRunner becomes Prism - A Mozilla Labs Project
Mozilla Labs: Prism
Alex Faaborg: Prism
Mozilla Prism: Bringing Web Apps to the Desktop
Everyone should use Site Specific Browsers
Mozilla Prism Portable (Spanish)
Prism, l'avenir des applications Web selon Mozilla (French)
Mozilla Prism : bundle custom Google Reader + Talk (French)
Just Browsing: Site-Specific Browsers
628 Build
Building Prism is similar to building McCoy, but there are some differences which is why a separate build documentation article. To build prism, you must first build the xulrunner tree, and then build prism.
629 BundleLibrary prism
No summary!
630 Bundles prism
In addition to passing simple command line parameters, Prism can use a zipped bundle package to install a webapp. The bundle can hold additional resources currently limited to:
631 Configuration prism
A webapp profile is a simple, INI-style text file that specifies some parameters about a webapp. The profile can be used to launch the webapp in Prism. The parameters also control some of the features of the Prism host window. Here is the list of parameters:
632 Extensions
Prism has support for extensions. Extensions are built using the same methods as any Mozilla-based extension. Since Prism is a totally separate host application, there are some Prism-specific issues that you need to handle when creating your extension. Most notably, the Prism application ID and the differences in the user interface (UI). Extensions typically overlay the host application's UI to add toolbar buttons, menus and other features. One of Prism's features is an extreme lack of UI elements, which means that trying to use the same overlays in Firefox and Prism is really not possible.
633 FAQ prism
Prism is an application that integrates web applications into the desktop environment. It lets users start web applications from their desktop, start menu, and dock, and it opens those applications in their own window separate from a web browser and without the browser interface (back and forward buttons, location bar, etc.).
634 HostWindow prism
Prism hosts web applications in a simple, minimal window. The window does have some UI components (as shown in the screenshot below). Prism can be configured to show or hide several of the UI components.
635 Installer prism
The installer should configure the OS to associate *.webapp files with Prism. This means that when you double-click or launch a *.webapp file, Prism is launched and automatically opens the web application.
636 Scripting prism
Prism allows for some client-side web application customization. The web application bundle is allowed to hold a JavaScript file named webapp.js (called the webapp script). This file will be loaded into the Prism chrome window very much like a Firefox extension is loaded into the browser chrome window. It can contain the following functions:
637 Styling prism
Prism allows for some client-side web application styling. The web application bundle is allowed to hold a CSS file named webapp.css (called the webapp style). This file will be loaded into the web application content stylesheet and can override the web application's native styles.
638 Proxy UI
(Recently Added - some support for reading OS and account settings.)
639 PyDOM
This is the documentation for the binding of Python and the Mozilla DOM. This allows you to use Python code (almost) anywhere you can use JavaScript.
640 RDF API
No summary!
641 RDF Datasource How-To RDF
No summary!
642 Reading textual data Add-ons, Extensions, Internationalization, Unicode
This article describes how to read textual data from streams, files and sockets.
643 Remote XUL XUL
How to use XUL delivered from a webserver, not as part of chrome.
644 Remote debugging
When a bug is reproducible by a community member, but not on a developer's computer, a last-resort strategy is to debug it on the community member's computer. The crash victim should at least know how to run a debugger, if not how to use it, and should have a debug build of Firefox handy.
645 Rsyncing the CVS Repository Developing Mozilla
The mozilla.org CVS repository can be downloaded via rsync. This is useful for faster diffs or for attempting to import it into another version control system.
646 Running Windows Debug Builds Downloaded From Tinderbox
If you run the windows debug builds you will often get "This application has failed to start because the application configuration is incorrect..." This is because the debug builds need the msvc80 crt debug dlls. You can see this by looking in at firefox.exe with http://www.dependencywalker.com/.
647 SXSW 2007 presentations Presentations
Presentations about the Mozilla project given at the SXSW 2007 event in Austin, Texas.
648 Safe Browsing
This documentation now lives on the main Mozilla Wiki, see https://wiki.mozilla.org/Safe_Browsing.
649 Safe Browsing: Design Documentation
This documentation now lives on the main Mozilla Wiki, see https://wiki.mozilla.org/Phishing_Protection:_Design_Documentation.
650 Safely loading URIs Add-ons, Extensions, Security
Not all URI loads are safe. For example, loading some file: URIs can hang the browser or even crash the operating system in some cases. Some other schemes are used internally by Mozilla modules to communicate with each other. Finally, some URIs (e.g. chrome: give the loaded page expanded privileges. If a web page gets access to a window with such expanded privileges, it may be able to abuse it to gain access to those privileges itself.
651 Same origin policy for XBL Same-origin policy, Security, XBL
The same origin policy used for XBL documents is different from the policy used for other content. This article provides a description of how the same origin policy for XBL works.
652 Space Manager Detailed Design Gecko
The Space Manager and related classes and structures are an important of the Gecko Layout system, specifically Block Layout. See the High Level Design document for an overview of the Space Manager, and as an introduction to the classes, structures and algorithms container in this, the Detailed Design Document.
653 Space Manager High Level Design Gecko
The Space Manager and associated classes and structures are used by Block and Line layout to manage rectangular regions that are occupied and available, for correct handling of floated elements and the elements that flow around them. When elements are floated to the left or right in a layout, they take up space and influence where other elements can be placed. The Space Manager is responsible for keeping track of where space is taken up and where it is available. This information is used by block layout to correctly compute where other floated elements should be placed, and how much space is available to normal in-flow elements that flow around the floated bits.
654 Standalone XPCOM Outdated_articles, XPCOM
Standalone XPCOM is a tree configuration that builds a minimal set of libraries (shared mostly) that can be used to get all features of XPCOM. The contents of this standalone XPCOM in general are:
655 Standard Makefile Header
No summary!
656 Static Analysis for Windows Code under Linux
This document will describe how to run Mozilla static check for Windows code under Linux platform by creating a cross-compiler with Dehydra support for Mingw.
657 Stress testing
Consume.exe from the Windows Server 2003 Resource Kit Tools can consume various resources: physical memory, CPU time, page file, disk space and even the kernel pool. Although for Win2003, it should install into WinXP fine (Win2000 compatibility is unknown). The only downside is you can't specify how much of the resource to use, only which one to consume. Also be warned: always remember the -time option, or you may be hitting that physical reset button sooner than you would have liked!
658 String Quick Reference XPCOM
What: Use abstract classes instead of concrete classes when passing strings across function boundaries
659 String Rosetta Stone
FindInReadable(const nsAString& pattern, nsAString::const_iterator start, nsAString::const_iterator end, nsStringComparator& aComparator = nsDefaultStringComparator())
660 Structure of an installable bundle Add-ons, Extensions, Search plugins, Themes, Toolkit API, XULRunner
XULRunner applications, extensions, and themes all share a common directory structure, and in some cases the same bundle can be used as a standalone XULRunner application as well as an installable application extension.
661 Supporting per-window private browsing
Firefox 20 introduced per-window private browsing mode, in which private user data is stored and accessed concurrently with public user data from another window.
662 Supporting private browsing mode Private browsing
Firefox 3.5 introduced private browsing mode, in which potentially private information is not recorded. This includes cookies, history information, download information, and so forth.
663 Table Cellmap Gecko
The table layout use the cellmap for two purposes:
664 Table Cellmap - Border Collapse
This document describes the additional information that is stored for border collapse tables in the cellmap.
665 Table Layout Regression Tests Gecko, Outdated_articles
Changes in layout, parser and content code can have unintended side effects, also known as regressions. It is good style to check for these unwanted regressions and fixing them before checkin rather than causing Bugzilla avalanches.
666 Table Layout Strategy Gecko
The table layout algorithm is based on two W3C recommendations: HTML 4.01 (Chapter 11) and CSS2.1 (Chapter 17).In CSS2 a distinction between fixed and auto layout of tables has been introduced. The auto-layout mechanism is implemented in BasicTableLayoutStrategy.cpp the fixed-layout in FixedTableLayoutStrategy.cpp. All these files are in the layout/html/table/src subdirectory.
667 Tamarin JavaScript, Landing, Tamarin
No summary!
668 ABCasm
ABCasm - an ABC assembler
669 Tamarin Acceptance Testing
In order to ensure that changes to the Tamarin code base are high quality before submitting, all developers are required to complete the following steps.
670 Abc Assembler Tests
It is possible to write tests using the abc assembler.  The assembler code can be found in /utils/abcasm.  Tests can be found in /test/acceptance/abcasm and end with the .abs extension.  The tests are run using the same runtests.py script that is used for the actionscript tests.
671 Actionscript Acceptance Tests
The majority of the acceptance tests are written in actionscript and located in test/acceptance.
672 Tamarin Acceptance Test Template
This is the test template for Tamarin acceptance tests (placed in test/acceptance/feature_name):
673 Actionscript Performance Tests
Performance tests for tamarin are located in the test/performance directory.  Similar to the acceptance tests set the environment variables AVM, ASC, BUILTINABC.  The runtests.py test harness works by parsing the abc stdout for lines like: 'metric time 566'.  The testconfig.txt file defines groups of tests to run (e.g. sunspider, scimark, language).  By default the time for each test is output.  Use the --memory flag to capture the maximum private bytes memory (high water mark) for a test.  By default each test is run a single time.  To run each test multiple times use the --iterations flag.  When the number of iterations is greater than 2 all times are displayed in [], faster time is displayed in the output column, and the 95% confidence interval is calculated.  The 95% confidence interval is the calculated percentage of the mean value to fall within 95% of the measured results.  For example if the mean is 100 and the 95% confidence interval is 2%, 95% of the expected values should fall between 98 and 102.  To compare two vms against each other export AVM2=<path 2nd="" to="" vm=""> or use --avm2=<path 2nd="" to="" vm="">.   The percentage difference is calculated between the two vms. See the --help usage for more details about performance tests.</path></path>
674 Cmdline tests
The cmdline testsuite is located in test/cmdline.  The testsuite allows more flexibility by coding scripts in python allowing any executable to run, sending commands to stdin, and asserting output using regular expressions. See test/cmdline/README document for more information.   Two use cases for the cmdline testsuite:
675 Running Tamarin acceptance tests
The Tamarin acceptance tests can be used to verify your installation and or local changes that you have made to the source. To run acceptance tests on the android shell see the "Testing the Android Shell" heading below. Running the Tamarin test suite requires the following steps:
676 Running Tamarin performance tests
The tamarin performance tests can be used to measure performance changes made to tamarin. To run performance tests on the android shell see 'Testing the Android Shell' below. Running the performance tests requires the following steps:
677 Tamarin Build System Documentation
No summary!
678 Tamarin Releases
This page tracks Tamarin source code releases, past, present and future.
679 Tamarin-central rev 703:2cee46be9ce0
Tamarin-Central rev 703:2cee46be9ce0 was declared stable on 12/02/08.  The announcement sent to tamarin-devel can be read here.
680 Tamarin Roadmap
The Tamarin roadmap is intended to provide visibility into planned features and release dates. The roadmap is a living document representing current best thinking and is subject to change. Comments or questions are welcome and encouraged via the tamarin-devel mailing list.
681 Tamarin build documentation Build documentation, Developing Mozilla, Tamarin
The following instructions are for obtaining and building the Tamarin Central source code. For instructions on Tamarin Tracing, please see Tamarin Tracing Build Documentation.
682 Tamarin mercurial commit hook
It is highly recommended that all developers enable the mercurial commit hook for tamarin.  The hook is located in the tamarin-redux repository in the file utils/hooks/tamarin-commit-hook.py
683 The Download Manager schema Firefox 3
The Download Manager uses an SQLite table to keep track of downloads in progress as well as queued and past downloads.
684 The life of an HTML HTTP request Developing Mozilla, DocShell, Guide, Necko, NeedsUpdate
Image:url_load.gif
685 The new nsString class implementation (1999) Outdated_articles, XPCOM
This document is intended to briefly describe the new nsString class architecture, and discuss the implications on memory management, optimizations, internationalization and usage patterns.
686 TraceVis
TraceVis is a performance visualization system for TraceMonkey. If TraceMonkey is built with TraceVis, and run with TraceVis enabled, then TraceMonkey will output a log of all its activity transitions. The log can be postprocessed into a visualization that can be used to rapidly diagnose many tracing-related performance issues.
687 Transforming XML with XSLT:Mozilla XSLT
No summary!
688 Transforming XML with XSLT:The Netscape XSLT
No summary!
689 Treehydra Treehydra
Try the gcc python plugin instead: https://fedorahosted.org/gcc-python-plugin/.
690 Treehydra Build Instructions Dehydra
Follow Dehydra build instructions. This automatically builds Treehydra for you.
691 Treehydra Manual
Treehydra is meant to be used for analyses that need more detail than Dehydra's flattened ASTs. Instead of representing code in "easy" form like Dehydra, Treehydra relies on GIMPLE, the GCC Internals "middle-end" intermediate representation. Treehydra simply reflects the GCC Internals structures into JavaScript.
692 Tuning Pageload Developing Mozilla
Tuning pageload can be beneficial if you know what you're doing. Firefox (and all Mozilla Products/Projects which do page-loading) ship with what are considered the "best" settings for the most cases. This document explains which preferences to tweak to affect your pageload time. You use the URL about:config or the file prefs.js in your profile to change these.
693 URIScheme Necko, NeedsUpdate, URI, URL
List of Mozilla supported URI schemes
694 URIs and URLs Guide, Mozilla, Necko, NeedsUpdate
Handling network and locally retrievable resources is a central part of Necko. Resources are identified by URI "Uniform Resource Identifier" (Taken from RFC 2396):
695 Uriloader Uriloader
Uriloader: Responsible for the dispatch of content to content handlers as it comes in from the network.
696 Using Monotone With Mozilla CVS Build documentation, Developing Mozilla
No summary!
697 Using SVK With Mozilla CVS Developing Mozilla
When working with Mozilla, you tend to accumulate patches which need to be reviewed, super-reviewed, and/or approved before they can be committed to the trunk. When you have only a few uncommitted patches, you can get by using cvs diff, and just editing the output to remove other patches before submitting. However, this approach quickly becomes unscalable, especially when you have different fixes in the same tree. Using a distributed versioning system like SVK takes out much of the hassle of managing your patches.
698 Using addresses of stack variables with NSPR threads on win16 NSPR, Outdated_articles
This is a cautionary note that may be old information for some of you. However, since it affects the portability of code, it was deemed prudent to include a short memo describing the issue.
699 Using cross commit Tools
No summary!
700 Using gdb on wimpy computers
If your computer has less than 256 MB of memory, your computer will become unhappy as GDB loads Mozilla's shared libraries. The solution to this is to delay loading shared libraries until they are actually needed. However, you need to make sure that the base libraries like libc and pthreads are loaded before you tell GDB to stop loading shared libraries. If you don't allow those libraries to be loaded then GDB will not be able to properly debug threads on Linux. Mozilla uses pthreads for its networking library so you need to be able to work in a threaded environment. The best way to do this is to set a breakpoint in main, let the program run until main and then turn off automatic library loading. From there you can allow the program to continue running. Here's an example:
701 Venkman Extensions, Extensions:Tools, JavaScript, JavaScript:Tools, Tools, Venkman, Web Development, Web Development:Tools
Venkman is the code name for Mozilla's JavaScript Debugger. It aims to provide a powerful JavaScript debugging environment for Mozilla based browsers namely Firefox, Netscape 7.x/9.x and SeaMonkey. Note that it is not included in the Gecko-based browsers such as K-Meleon, Galeon and Netscape 8.x. Venkman has been provided as part of the Mozilla install distribution since October 2001, as well as an extension package in XPI format.
702 Using Breakpoints in Venkman Tools, Venkman
This article continues a series of articles on Venkman that began with Venkman Introduction.
703 Venkman Internals Developing Mozilla, Tools, Venkman
Start with Venkman Information.
704 Venkman Introduction Tools, Venkman
A powerful new tool is available for web developers for use in many Mozilla-based products, including Firefox, Mozilla Suite and Netscape 7.x. The JavaScript debugger, also called Venkman, has been a part of the Mozilla browser and the community of web and script developers there for some time. This article provides an overview and some practical examples of using the JavaScript debugger in web applications and web page scripting. This introduction is the first in a series of articles on Venkman and JavaScript debugging. Even if you are already using Venkman, the features, procedures, and tips described here will make you a more confident web developer and debugger.
705 Video presentations Presentations
Mozilla is actively working to produce video presentations that can help you learn how the Mozilla codebase works and how to take advantage of its technology in your own applications and extensions. This article is a jumping-off point to help you find those presentations.
706 When To Use ifdefs Developing Mozilla
The mozilla codebase is used for many different projects and products, including Firefox, Thunderbird, XULRunner, and many others. Sometimes the same basic code is used for multiple projects, but there are small differences needed. "ifdefs", or conditional instructions, are used to build different code
707 Why Embed Gecko Embedding Mozilla
Gecko - the Smart Embedding Choice
708 Windows Build Prerequisites (1.9.0 and 1.9.1 branches)
This document is a guide to the build prerequisites for building the Mozilla 1.9.0 (Firefox 3.0) and 1.9.1 (Firefox 3.5) codebases. For building Mozilla 1.9.2 (Firefox 3.6) or greater, please see Windows Build Prerequisites.
709 Working around the Firefox 1.0.3 DHTML regression DHTML
Please note that the following issues have been fixed for the Firefox 1.0.4 release, and this document applies strictly to the 1.0.3 version of the browser.
710 Writing textual data Add-ons, Extensions, Internationalization, Unicode
This article describes how to write textual data to streams, files and sockets in an internationalization-aware way.
711 XML in Mozilla NeedsHelp, NeedsUpdate, XML
Mozilla has a relatively good support for XML. Several World Wide Web Consortium (W3C) Recommendations and drafts from the XML family of specifications are supported, as well as other related technologies.
712 XPInstall XPInstall, XPInstall_API_reference
No summary!
713 Creating XPI Installer Modules XPInstall
Mozilla has introduced major changes to the way that themes and all the other parts of the UI are packaged. This new packaging scheme is called XPI (pronounced "zippy"), and interacts with XPInstall. A XPI file typically contains the resources to be installed (in this case the barley.jar we want to have installed in the Mozilla/bin/chrome/ directory) and an install script that guides the installation process.
714 Install Wizards (aka: Stub Installers) XPInstall
No summary!
715 Mac stub installer XPInstall
No summary!
716 Unix stub installer XPInstall
No summary!
717 Windows stub installer XPInstall
No summary!
718 Learn XPI Installer Scripting by Example XPInstall, XPInstall_API_reference
This article uses the installer script from browser.xpi install package as the basis for discussing XPI installations in general. This installer script is relatively short, but it exercises most of the important features of the XPInstall API, and it can easily be used as a template for other more general software installations. In this article, we use the unix install file, but the installers for all the platforms are quite similar, and you can easily take what you learn here and apply it to installations on any platform that mozilla supports.
719 Installer Script
No summary!
720 Using XPInstall to Install Plugins Add-ons, Plugins, XPInstall, XPInstall_API_reference
No summary!
721 Install script template Add-ons, Plugins, XPInstall
No summary!
722 XPInstall API reference XPInstall, XPInstall_API_reference
See complete list
723 Examples
Trigger Scripts and Install Scripts describes typical kinds of script that use the XPInstall API.
724 File.macAlias
In this example, a mac alias is created for software (AppleCD Audio Player) that is installed locally.
725 File.windowsShortcut
In this example, the windowsShortcut method is used to add a shortcut in the Program directory ("Program" is a keyword for the directory in which the program itself is installed, for example, C:\Program Files\Netscape\Netscape 6\" on Windows) to Windows software (misc.exe) that is installed in the "Windows" directory.
726 Install.addDirectory
The Install object's addDirectory method queues an entire directory for installation once performInstall is called.
727 Install.addFile
The Install object's addFile method is the standard way to queue files for installation.
728 InstallTrigger.installChrome
Trigger scripts are typically invoked by JavaScript event handlers on hyperlinks. When a user clicks the link "Install the New Blue theme" in the example below, XPInstall downloads, registers, and installs the theme contained in newblue.xpi to the user's profile directory.
729 InstallTrigger.startSoftwareUpdate
This is a very simple example of the InstallTrigger object's principal method, startSoftwareUpdate, which takes a string representing the path to the XPI and installs that XPI on the local machine.
730 Trigger Scripts and Install Scripts
Trigger scripts are simple installations that can be initiated from event handlers and other JavaScript code on a web page.
731 Windows Install
This example shows the installation of a XPI in which user profile information is contained.
732 File Object
Use the File object to manipulate local files and directories during the installation process.
733 Methods
No summary!
734 Install Object XPInstall_API_reference
Use the Install object to manage the downloading and installation of software with the XPI Installation Manager.
735 Methods
No summary!
736 Properties
No summary!
737 InstallVersion Object
You use InstallVersion objects to contain version information for software.
738 Methods
No summary!
739 Properties
No summary!
740 Return Codes
The methods described in this chapter can return any of the following return codes. In Mozilla/SeaMonkey, these constants are defined as part of the xpinstall object (formerly the SoftwareUpdate object in Netscape Communicator 4.5).
741 WinProfile Object
(Windows only) Windows developers use this object to manipulate the content of a Windows .ini file.
742 Methods
No summary!
743 WinReg Object
(Windows only)
744 Methods
The WinRegValue constructor creates a WinRegValue object.
745 WinRegValue
(Windows only)
746 XPJS Components Proposal Outdated_articles
Draft 1.0
747 XRE
No summary!
748 XTech 2005 Presentations Presentations
No summary!
749 Directions of the Mozilla RDF engine Presentations, RDF
This presentation showed new developments in the Mozilla RDF engine. These include plans to expose the RDF API to public web content, as well as performance and correctness improvements.
750 Extending Gecko with XBL and XTF Presentations, XBL, XTF
This session explored ways to extend Mozilla/Firefox to handle new XML tags and namespaces via drop-in extensions to the layout engine.
751 Mozilla E4X E4X, JavaScript, Presentations
"ECMAScript for XML" (ECMA-357), a new standard for writing and processing XML directly in JavaScript (ECMA-262, ISO-16262). E4X marries XML and JavaScript syntax, and extends JavaScript to include namespaces, qualified names, and XML elements and lists. E4X also adds new JavaScript operators for filtering XML lists, and for enumerating XML children and descendants. Another E4X feature: the ability to bind a W3C DOM document to a new XML object, reflecting the DOM in E4X terms so that updates to either the DOM or the E4X object hierarchy show up in the other.
752 Rich Web
No summary!
753 SVG And Canvas In Mozilla Presentations, SVG
Today's Web browsers offer somewhat limited graphics capabilities to Web developers. Advances in hardware, especially graphics processors, offer the potential for far richer graphics in interactive applications. To realize this potential in Web applications, browsers must expose rich new graphics APIs to Web content. The Mozilla project will meet this challenge with two major new features to be delivered in Firefox 1.5: integrated SVG and a new canvas HTML element. Work is also underway "under the hood" on a new unified graphics architecture that uses 3D graphics processors to accelerate all rendering. This work provides additional benefits to Web developers such as the ability to apply SVG effects to HTML content.
754 XUL - Mozilla's XML User Interface Language Presentations, XUL
Ben Goodger, lead engineer for Mozilla Firefox talked about XUL, Mozilla's XML User Interface toolkit.
755 XTech 2006 Presentations Presentations
No summary!
756 XUL Explorer Extensions, Extensions:Tools, Tools, XUL, XUL:Tools
XUL Explorer is a XULRunner application that provides an easy way to experiment with XUL. It’s a simple editor that can preview XUL inline or in a separate popup window. It has a list of code snippets (small fragments of XUL or JavaScript) that can be quickly inserted into the editor. The XUL can be loaded from and saved to files. A XUL validator and the Error Console are both available to help debug problems. The help menu provides access to XUL information on MDC. There is even simple “keyword” help lookup for XUL elements.
757 XULRunner NeedsUpdate, XUL, XULRunner
XULRunner is a Mozilla runtime package that can be used to bootstrap XUL+XPCOM applications that are as rich as Firefox and Thunderbird. It provides mechanisms for installing, upgrading, and uninstalling these applications.
758 Application Update Tutorials, XUL, XULRunner
This article will hopefully explain how to update your XulRunner application using the same method that Firefox, Thunderbird, Songbird, and ChatZilla use.
759 Article
No summary!
760 Building XULRunner Build documentation, Developing Mozilla, XUL, XULRunner
No summary!
761 Building XULRunner with Python Accessibility, Build documentation, Developing Mozilla, XUL, XULRunner
No summary!
762 CommandLine Command Line, Guide, NeedsUpdate, XUL, XULRunner
It's fairly easy to retrieve application specific command line arguments in XULRunner when it's not a single instance application. An nsICommandLine object is passed as the first argument of the launched window:
763 Components XUL, XULRunner
Adding components to XULRunner is simple once you understand how XULRunner registers and saves the components.
764 Creating XULRunner Apps with the Mozilla Build System Build documentation, Developing Mozilla, XUL, XULRunner
No summary!
765 Creating a Windows Inno Setup installer for XULRunner applications Deployment, Tutorials, XUL, XULRunner
A XULRunner application has no installer by default; however, these instructions can help you to easily create a Windows installer with Inno Setup. The tutorial here uses the My App example from the article Getting started with XULRunner.
766 Custom app bundles for Mac OS X Guide, Mozilla, XUL, XULRunner
Mac OS X applications are typically packaged as application bundles which are then distributed in .dmg (disk image) files. This tutorial will show you how to package your XULRunner-based application in a way which is consistent with the expectations of Mac OS X users.
767 Debugging a XULRunner Application Browser Debugger, Debug, Preferences, Venkman, XUL, XULRunner
The easiest way to debug a XULRunner application is to get the system to tell you what's wrong! There are two different consoles available and various preferences which will ensure that the information you need to know is displayed on them.
768 Deploying XULRunner Deployment, Guide, Tutorials, XUL, XULRunner
Current XULRunner is a stable developer preview release. This means that while the release is immature in some areas such as embedding, application deployment, and OS integration, it can be used by developers that are releasing standalone XUL applications. This document explains how deployment should be managed for self contained portable applications built on XULRunner.
769 Dialogs in XULRunner XUL, XULRunner
The last article in this series covered some simple XUL for creating windows, menus, and toolbars. This time I'll look at dialogs, including both custom dialogs and standard operating system dialogs. Dialogs are pretty fundamental to a desktop application. Certain types of dialogs are used so frequently that the OS can provide a default implementation. File open and save dialogs are good examples of these. Whenever possible, it is a good idea to reuse these "native" dialogs so users get a consistent experience across applications.
770 Getting started with XULRunner Tutorials, XUL, XULRunner
This article explores the Mozilla platform by building a basic desktop application using XULRunner. Given that Firefox, Thunderbird, and multiple other applications are written using the platform, it's a safe bet that it can be used to build a basic application. There is an article with a more complicated approach to building XULRunner applications at Creating XULRunner Apps with the Mozilla Build System. If you need to change XULRunner itself or integrate it with external binaries you may need to read that article.
771 How to enable locale switching in a XULRunner application Localization
This article is for developers who have localised their XUL application using DTD entity files and want to provide their users with a mechanism to switch the locale in the application itself. Normally the application locale is inherited from the OS environment of the host system, however there are situations when you might want to give users the option to override the default setting and choose a different locale.
772 MacFAQ XUL, XULRunner
(Note this document has NOT been reviewed for accuracy or completeness.)
773 Make your xulrunner app match the system locale XUL, XULRunner
This article is going to assume a lot of knowledge of xpcom and will be written for someone using python, but the ideas should be adaptable. Also, this may not be the proper way to do this and it may not work for you in all cases. Please update if there are more correct ways to do this.
774 Opening a Link in the Default Browser Add-ons, Extensions, XUL, XULRunner
XULRunner applications may have situation where they wish to open a URI in the default browser. This will often be an HTTP or HTTPS URI, but can use any scheme for which an external handler exists. This can be done using the nsIExternalProtocolService interface:
775 Specifying Startup Chrome Window XUL, XULRunner
In order to specify the main chrome window of your XULRunner application, you'll need to add a preferences file to your application directory structure and add a preference named toolkit.defaultChromeURI to that file.
776 Using Crash Reporting in a XULRunner Application Crash_reporting, XUL, XULRunner
No summary!
777 Using LDAP XPCOM with XULRunner XUL, XULRunner
By default, XULRunner is built without LDAP XPCOM support. If you want to use LDAP components in your XUL application, you have two options : compile XULRunner with LDAP support enabled, or add LDAP XPCOM directly to your XUL app (in the components directory).
778 Using Mochitests in a XULRunner Application Guide, Testing, XUL
Technical review completed.
779 Using SOAP in XULRunner 1.9 SOAP, XML Web Services, XULRunner
Since the native SOAP interface was removed from Gecko 1.9, those stuck speaking to SOAP APIs need a new place to turn. After some experimentation, the following seems to be the best way to speak SOAP in XULRunner.
780 What XULRunner Provides FAQ, XUL, XULRunner
The goal of XULRunner is to provide a solution for deploying XUL applications (primarily Firefox and Thunderbird), as well as providing an embedding mechanism. The following features are either already implemented or planned:
781 Windows and menus in XULRunner XUL, XULRunner
Our quest to build a basic desktop application using XULRunner continues. Last time I installed XULRunner and built a very simple, bare-bones test application. This time I want to add some of the things common to a desktop application user interface:
782 XUL Application Packaging Deployment, XUL, XULRunner
XULRunner application packages are standard toolkit bundles (like a Firefox extension), with one additional manifest file (application.ini) which helps describe the application. XUL app packages are typically ZIPped into an archive with the extension .xulapp or .xpi. They can be installed to XULRunner with a command line flag "--install-app" if XULRunner is registered on the system. See Command Line Options for more details.
783 XULRunner 1.8.0.1 Release Notes Release Notes, XUL, XULRunner
XULRunner 1.8.0.1 is the first stable developer preview release of XULRunner. It provides facilities for launching standalone XUL applications and embedding APIs which can be used to render web pages within native and Java applications.
784 XULRunner 1.8.0.4 Release Notes Command Line, FAQ, Release Notes, XUL, XULRunner
XULRunner 1.8.0.4 is a stable developer preview of the Mozilla XULRunner application framework. It replaces version 1.8.0.1; all users should upgrade. It provides facilities for launching standalone XUL applications and embedding APIs which can be used to render web pages within native and Java applications.
785 XULRunner 1.9 Release Notes Release Notes, XUL, XULRunner
XULRunner 1.9 is a stable release of the Mozilla XULRunner application framework. It replaces version 1.8.0.4; all users should upgrade. It provides facilities for launching standalone XUL applications and embedding APIs which can be used to render web pages within native and Java applications. XULRunner 1.9 is built from the same source code snapshot as Firefox 3.
786 XULRunner 1.9.1 Release Notes Release Notes, XUL, XULRunner
XULRunner 1.9.1 is a stable release of the Mozilla XULRunner application framework. It provides facilities for launching standalone XUL applications and embedding APIs which can be used to render web pages within native and Java applications. XULRunner 1.9.1.x is built from the same source code snapshot as Firefox 3.5.x.
787 XULRunner 1.9.2 Release Notes
XULRunner 1.9.2 is a stable release of the Mozilla XULRunner application framework. It provides facilities for launching standalone XUL applications and embedding APIs which can be used to render web pages within native and Java applications. XULRunner 1.9.2.x is built from the same source code snapshot as Firefox 3.6.x.
788 XULRunner 2.0 Release Notes
XULRunner 2.0 is a stable release of the Mozilla XULRunner application framework. It provides facilities for launching standalone XUL applications and embedding APIs which can be used to render web pages within native and Java applications. XULRunner 2.0.x is built from the same source code snapshot as Firefox 4.0.x.
789 XULRunner FAQ FAQ, XUL, XULRunner
This page is intended to answer frequently asked questions and correct common misconceptions about XULRunner.
790 XULRunner Hall of Fame Demos, XUL, XULRunner, enterprise
See also Featured Mozilla-based applications, many of which use XULRunner.
791 XULRunner tips Chrome URL, Command Line, Extension Manager, Extensions, FAQ, Password Manager, Preferences, Tips, XUL, XULRunner, branding
XULRunner Frequently Asked Questions. Work in progress.
792 XULRunner/Old Releases XUL, XULRunner
No summary!
793 toolkit.defaultChromeFeatures Preferences, XULRunner
Type: String
Specified by: default prefs of XULRunner applications
Default: "chrome,dialog=no,all"
Example: pref("toolkit.defaultChromeFeatures", "chrome,resizable=no,dialog=no");
794 toolkit.defaultChromeURI Preferences, XULRunner
Type: String
Specified by: default prefs of XULRunner applications
Default: none
Example: pref("toolkit.defaultChromeURI", "chrome://myapp/content/");
795 toolkit.singletonWindowType Preferences, XULRunner
Preference
796 xulauncher
No summary!
797 ant script to assemble an extension Extensions, Extensions:Tools, Tools
This ant script helps to package an extension
798 application/http-index-format specification Necko
The application/http-index-format file format is an attempt to provide a generic, extensible file listing format that is principly machine readable.
799 calICalendarView Interfaces, Interfaces:Scriptable, XPCOM, XPCOM API Reference
An object implementing calICalendarView is generally intended to serve as a way of manipulating a set of DOM nodes corresonding to a visual representation of calIEvent and calITodo objects. Because of this close association between methods and attributes on the one hand, and content on the other, calICalendarView implementations are particularly well suited to XBL. There is, however, no practical obstacle to the interface being implemented by any javascript object associated with a group of DOM nodes, even non-anonymous XUL nodes.
800 calICalendarViewController Interfaces, Interfaces:Scriptable, XPCOM, XPCOM API Reference
A calICalendarViewController provides a way for a calICalendarView to create, modify, and delete items. Implementing a calICalendarViewController allows for these actions to be performed in a manner consistent with the rest of the application in which the calICalendarView is included.
801 calIFileType Interfaces
The calIFileType interface provides information about a specific file type.
802 mozilla.dev.platform FAQ
FAQ for questions asked on mozilla.dev.platform
803 reftest opportunities files Automated testing, Developing Mozilla
These are files in the Mozilla source that may be usable for reftest. It is not always clear why particular files were checked in, but one presumes that something needed to be checked. Many of these were checked with the Layout Regression test tool, which has been described as difficult to use and it apparently reported a lot of regressions that were not errors.
804 symsrv_convert
Make sure you have a symsrv.dll and symsrv.yes in the directory where symsrv_convert is looking. For me this was C:/Windows/SysWOW64/
805 xbDesignMode.js
No summary!
806 Archived open Web documentation Archive, Archived, Web
The documentation listed below is archived, obsolete material about open Web topics.
807 Browser Detection and Cross Browser Support
Improper browser detection can lead to web maintenance nightmares. Rethinking the basics of when and how to detect user agents is crucial to creating maintainable, cross browser web content. This article reviews several approaches to browser detection, their usefulness in specific circumstances to arrive at a common sense approach to browser detection.
808 Browser Feature Detection Compatibility, Cross-browser_Development, DOM, Gecko, Obsolete, Web Development
Summary: An experimental approach to discovering degree of support for Standards
809 Displaying notifications (deprecated) DOM, Mobile, Notifications
Firefox offers support for "desktop notifications"; these are notifications that are displayed to the user outside the context of the web content, using the standard notification system provided by the operating system.
810 E4X Obsolete
ECMAScript for XML (E4X) is a programming language extension that adds native XML support to JavaScript. It does this by providing access to the XML document in a form that feels natural for ECMAScript programmers. The goal is to provide an alternative, simpler syntax for accessing XML documents than via DOM interfaces. A valid alternative to E4X is a non-native JXON algorithm.
811 E4X for templating E4X
E4X can be used for creating templates for dynamic content.
812 Processing XML with E4X Obsolete
First introduced in JavaScript 1.6, E4X introduces a native XML object to the JavaScript language, and adds syntax for embedding literal XML documents in JavaScript code.
813 E4X Tutorial E4X, JavaScript, XML
This tutorial walks you through the basic syntax of E4X (ECMAScript for XML). With E4X, programmers can manipulate an XML document with a syntax more familiar to JavaScript programming.
814 Accessing XML children
Normal JavaScript Objects use the . operator or [] notation to set properties.
815 Descendants and Filters
In many cases, the node that you're interested in is not the direct child of the top XML element. Instead, it may be nested several levels down. You can access nodes at any depth using the .. operator, or by using the descendants property. For instance
816 Introduction E4X, JavaScript, XML
With E4X enabled, basic XML elements are valid syntax for variables. For instance
817 Namespaces
Oftentimes, XML documents will contain elements from a variety of namespaces. You can declare the default namespace for your E4X objects by placing the statement:
818 The global XML object
E4X-capable JavaScript engines put a new property on the global object. The XML object has several properties that allow you to customize parsing and serialization of E4X. XML elements will remember the settings of the XML object from the time of their creation.
819 Iterator Deprecated, JavaScript, Legacy Iterator, Reference
The Iterator function returns an object which implements legacy iterator protocol and iterates over enumerable properties of an object.
820 LiveConnect Java, LiveConnect
(Please update or remove as needed.)
821 LiveConnect Overview Advanced, Java, JavaScript, LiveConnect
This chapter describes using LiveConnect technology to let Java and JavaScript code communicate with each other. The chapter assumes you are familiar with Java programming.
822 LiveConnect Reference
This section documents the Java classes used for LiveConnect, along with their constructors and methods.
823 JSException
The public class JSException extends RuntimeException
824 JSObject
The public final class netscape.javascript.JSObject extends Object.
825 MSX Emulator (jsMSX) Canvas_examples, Examples, HTML:Canvas
No summary!
826 Old Proxy API Obsolete
Proxies are objects for which the programmer has to define the semantics in JavaScript. The default object semantics are implemented in the JavaScript engine, often written in lower-level languages like C++. Proxies let the programmer define most of the behavior of an object in JavaScript. They are said to provide a meta-programming API.
827 ParallelArray JavaScript, Obsolete, ParallelArray
The goal of ParallelArray was to enable data-parallelism in web applications. The higher-order functions available on ParallelArray attempted to execute in parallel, though they may fall back to sequential execution if necessary. To ensure that your code executes in parallel, it is suggested that the functions should be limited to the parallelizable subset of JS that Firefox supports.
828 Properly Using CSS and JavaScript in XHTML Documents CSS, JavaScript, Web Development, XHTML
XHTML™ 1.0 The Extensible HyperText Markup Language (Second Edition) defines XHTML to be a reformulation of HTML 4 as an XML 1.0 application.
829 Examples CSS, JavaScript, Web Development, XHTML
This page contains the source code of the examples related to the "Properly Using CSS and JavaScript in XHTML Documents" article.
830 Reference
The guide section links to an interesting document discussing how to create and use private variables in objects, which is great if you want to protect the various properties within an object from being poked at accidentally. I also just read a document on proper inheritance using apply(). Well if you combine the two, you can have inherited private variables:
831 Scope Cheatsheet JavaScript, hoisting, scope
JavaScript with Mozilla extensions has both function-scoped vars and block-scoped lets. Along with hoisting and dynamic behavior, scope in JavaScript is sometimes surprising.
832 Server-Side JavaScript
Here's a radical idea: Use one language to write entire Web apps -- the same language which billions of web pages already use, every day.
833 Back to the Server: Server-Side JavaScript On The Rise
by Davey Waterson, JavaScript Architect, Aptana
834 Sharp variables in JavaScript JavaScript
A sharp variable is a syntax in object initializers that allows serialization of objects that have cyclic references or multiple references to the same object.
835 Standards-Compliant Authoring Tools HTML:Tools, Tools, XHTML, XHTML:Tools
Creating cross-browser code upfront will save you lots of time quality testing your web content. The following authoring tools adhere to the W3 standards. If you're using older versions of tools that rely on old browser bugs or generate browser-specific code, it may be time to upgrade:
836 StopIteration Deprecated, JavaScript, Legacy Iterator, Reference, StopIteration
The StopIteration object was used to tell the end of the iteration in the legacy iterator protocol. Do not use this ancient feature.
837 Styling the Amazing Netscape Fish Cam Page CSS
No summary!
838 Using JavaScript Generators in Firefox
Generators can be used to simplify asynchronous code in Firefox by opting in to using JavaScript version 1.7 or later. You can opt in in HTML as follows:
839 Window.importDialog() API, Archive, Archived, DOM, DOM Reference, Method, Non-standard, Obsolete, Reference, Référence(2), WebAPI
Because opening windows on mobile isn't necessarily appropriate, the Firefox Mobile team designed the importDialog() method to replace window.openDialog(). Instead of opening a new window, it merges the specified XUL dialog into the main window.
840 Writing JavaScript for XHTML JavaScript, XHTML, XML
Technical review completed. Editorial review completed.
841 XForms Archive, Archived, Obsolete, XForms
XForms were envisioned as the future of online forms as envisioned by the W3C. Drawing on other W3C standards like XML Schema, XPath, and XML Events, XForms tried to address some of the limitations of the current HTML forms model. However, XForms never gained traction and is now considered obsolete.
842 Building Mozilla XForms XForms
Things to know first:
843 Community XForms
No summary!
844 Developing Mozilla XForms
Always start with a debug build of the xforms and the schema-validation extensions. See Building Mozilla XForms for a .mozconfig for debug builds. You should create a new, clean profile for debugging. Then start Firefox out of the build directory:
845 Implementation Status
The extension has some limitations and custom extension to the XForms 1.1 specification. These can be found on the Mozilla XForms Specials page.
846 Mozilla XForms Specials XForms
No summary!
847 Mozilla XForms User Interface XForms
This article is a quick reference of the XForms user interface elements. Mainly this is aimed to document how XForms elements will be presented in Mozilla since the XForms specifications give only a hint of how controls might be rendered.
848 XForms Alert Element XForms
No summary!
849 XForms Group Element XForms
The group element is used as a container for defining a hierarchy of form controls. Groups can be nested to create complex hierarchies.
850 XForms Help Element XForms
No summary!
851 XForms Hint Element XForms
No summary!
852 XForms Input Element XForms
No summary!
853 XForms Label Element XForms
No summary!
854 XForms Message Element XForms
No summary!
855 XForms Output Element XForms
No summary!
856 XForms Range Element XForms
No summary!
857 XForms Repeat Element XForms
No summary!
858 XForms Secret Element XForms
No summary!
859 XForms Select Element XForms
No summary!
860 XForms Select1 Element XForms
No summary!
861 XForms Submit Element XForms
This form control initiates a submission. The result of which is all or part of an instance document being sent to a target destination, which could be local or remote (see the spec). Upon receiving a DOMActivate event, this form control dispatches a xforms-submit event to the submission element (see the spec) specified in its submission attibute.
862 XForms Switch Module XForms
XForms Switch Module define a switch construct that allows the creation of user interfaces where the user interface can be varied based on user actions and events. The module defines for this switch, case and toggle elements.
863 XForms Textarea Element XForms
No summary!
864 XForms Trigger Element XForms
Allows the user to initiate actions (see the spec). Actions are described by the XForms Action Module (see the spec).
865 XForms Upload Element XForms
No summary!
866 Other Resources XForms
No summary!
867 Requests For Enhancement XForms
No summary!
868 RFE to the Custom Controls XForms
No summary!
869 RFE to the Custom Controls Interfaces XForms
No summary!
870 RFE to the XForms API XForms
No summary!
871 Troubleshooting XForms Forms XForms
No summary!
872 Using XForms and PHP XForms
No summary!
873 XForms API Reference XForms
The XForms interfaces has the following naming convention:
874 XForms Config Variables XForms
No summary!
875 XForms Custom Controls XForms
You are in the right place if you would like to create your own custom renderings of the XForms controls like input, output, trigger, etc. We will also show you how to create custom controls that work with the XForms model and are automatically updated just like XForms controls. The purpose of this article is to give you enough background information so that you'll be able to get a good start. To really grasp the following information, a good understanding of XForms, XBL, JavaScript and CSS is needed. XPCOM knowledge will certainly not hurt. But even if you are only comfortable with a couple of these technologies, we hope that the possibilities outlined below will inspire you to learn more where you need to.
876 XForms Custom Controls Examples XForms
No summary!
877 XForms Styling XForms
No summary!
878 background-size
Should not the "Browser compatibility" table also list Google Chrome and Konqueror? Chome is not mentioned at all, but is becoming increasingly popular. Konqueror is listed below the table, which seems inconsistent. Znerd 04 August 2009
879 forEach
Ok, in the end I didn't remove the old code as it isn't hosted anywhere (I thought the github reference contained the code) but inserted a faster implementation above while retaining the rest of the document.
880 B2G OS B2G, B2G OS, Basic, Beginner, Gaia, Gecko, Gonk, Mozilla, Overview, b2g smartphone os, getting started with b2gos, web based os from mozilla, web os gecko
B2G OS is a complete, standalone operating system for the open web. It is an open source project developed by the Mozilla community and forms the basis of Firefox OS products.
881 Automated Testing of B2G OS Automated QA Testing, Automated testing, QA, Testing
This page offers articles that provide information about various aspects of testing B2G OS, including running different tests, automation, and result reporting and tracking.
882 Cppunit Tests automated, cppunit, tests
Cppunit tests are headless Gecko C++ unit tests. You can run Cppunit tests on B2G; in this article we will look at how to do so. Currently, these are mainly tested on the emulator, but theoretically , it should run on devices as well.
883 Endurance tests Automation, Endurance, Firefox OS, Gaia, UI, test
The Gaia-UI Endurance tests are a suite of Firefox OS tests built on top of the Gaiatest (Gaia UI Tests) Framework. The tests run on real Firefox OS devices, and use Marionette to drive the device's UI.
884 Firefox OS mochitests Automated testing, Firefox OS, Gaia, Mobile, Testing, Tutorial
Mochitest is an automated testing framework built on top of the MochiKit JavaScript libraries that provides functional and API tests for Firefox OS. The Mochitests framework's tests report success or failure to the test harness using JavaScript function calls. The following sections take you through the steps needed to run Mochitests on Firefox OS via both B2G Desktop and device/emulator builds.
885 Firefox OS reftests Automated testing, Firefox OS, Guide, Mobile, Testing
Reference tests (or reftests) are basically tests that compare two separate renderings of web app UI features (HTML elements, for example) to see if they are the same, or not. This article provides you with all you need to know to run Mozilla's suite of reftests on B2G. To find out more about reftests themselves, read Creating reftest-based unit tests.
886 Gaia Integration tests Automation, Firefox OS, Gaia, Integration, tests
This document covers running and writing integration tests for Gaia apps — written in JavaScript and run via Marionette — and provides a detailed explanation of how the integration tests are run.
887 Gaia UI Tests Introduction Build documentation, Firefox OS, Gaia, Guide, Mobile, Testing, gaia-ui-test, gaiatest
Gaia-ui-tests uses Gaiatest, a Python package based around Marionette. Gaiatest is designed to wrap HTML locators, Marionette calls and API calls together for interoperable communication and functionality. Marionette is based on the W3C standard developed for the Selenium WebDriver a programming interface for browser automation. If you have used WebDriver and page/app objects before then you will find using Marionette and gaiatest easy.
888 Gaia UI Tests: Running Tests Automation, Firefox OS, Gaia, Guide, Testing, gaia-ui-test, gaiatest
This article provides a detailed rundown of how to run the actual gaia-ui-tests suite that resides inside Gaia itself, on B2G Desktop, and real Firefox OS devices. The Gaia project uses Treeherder to do per-commit continuous integration and pull request tests.
889 Part 1: Getting started with Marionette and Firefox OS Automation, Firefox OS, Gaia, Python, gaia-ui-test, tests
This tutorial series aims to get you onboard with writing and running automated UI tests for Firefox OS using Marionette, an automation package that runs on your computer. Marionette issues commands to run tests on Gecko-based platforms. This particular article will run you through the set up you need to do to before you can start running tests.
890 Part 2: Basic interactions with Firefox OS using Marionette Automation, Firefox OS, Gaia, Python, gaia-ui-tests, tests
In part 2 of our tutorial we’ll get started with some simple Marionette commands that allow us to remotely control Firefox OS. While this doesn't cover writing a full test, it teaches you the basic code features that you will use while writing a test. In part 3, we’ll progress onto evolving this code into a real test.
891 Part 3: Upgrading our code into a reusable test
We learnt in Part 2 that we can easily control Firefox OS using Marionette client commands, but typing them into a Python console is as slow and tedious. The key advantage of test automation is that it can run autonomously. We will learn how to do that in this part, as we put all of our code commands into a Python file that can then be run all in one go.
892 Part 4: Re-using commands to set up Firefox OS Automation, Firefox OS, Gaia, Python, Testing, gaia-ui-tests
In Parts 2 and 3 we got a working test, but if we wanted to reset its state (for example killing open apps) before running the test, we'd have to do this manually. That’s a bit tedious, so again we should automate it! In this part, we’ll look how to do this and more by breaking out bits of code into separate Python methods that we can re-use.
893 Part 5: Introducing a test runner Automation, Firefox OS, Gaia, Python, gaia-ui-tests, tests
Everything is going well so far, but we are still only dealing with one test. When testing a large real-world web app there may be tens or hundreds of test cases, and we certainly don't want to run each one manually. In such as scenario we need to use a test runner to find and execute the tests for us, and in this article we'll explore just that.
894 Part 6: Using tuples, and Marionette's By class Automation, Firefox OS, Gaia, Python, Testing, gaia-ui-tests
In our code so far, we have used many locators to find specific elements, whether they are apps (iFrames) or specific parts of apps. Up to now we have been writing locators directly inline and duplicating code, as a result. To improve the situation further, it is a good practice to abstract these locators out into Python tuple variables so they can be reused. In this article we'll show you how.
895 Part 7: Writing your own tests Automation, Firefox OS, Gaia, Python, gaia-ui-tests, tests
So far we've given you most of the tools and information you need to start writing your own automated tests on Firefox OS, along with enough steps to follow to get you up and running quickly. In this part we are going to go pretty hands off, providing you with some resources and ideas, and then encouraging you to make your own way. Here we will start moving you towards writing your own tests — enjoy!
896 Part 8: Using a base class Automation, Firefox OS, Gaia, Python, gaia-ui-tests, tests
Now you have multiple tests you are probably feeling pretty good about your progress. However there are other ways to improve code efficiency further — you may notice that you've so far had to include a setUp() and a tearDown() method in each test file, going by the current constructs we've seen in this series. If you have several dozen tests then that’s a lot of code duplication! In this article we'll look at how to put the setUp()/tearDown() code common to all tests into a TestBase class, which can then be imported into each individual test file.
897 Part 9: Reducing duplication with app objects Automation, Firefox OS, Gaia, Python, app objects, gaia-ui-tests, tests
In automated testing we often use app objects to abstract code. This reduces duplication of code and locators. If we need to change a common section of code we can change it only in a single app object, rather than having to change it in 10 or 20 test files. This article provides the basics of how to use app objects.
898 Gaia performance tests Apps, Automated testing, Firefox OS, Performance, QA, Testing
This article provides information about running performance tests on Gaia, as well as how to create new tests.
899 Gaia unit tests Automation, Build documentation, Firefox OS, Gaia, Mobile, NeedsContent, tests, unit tests
You can run the unit tests on B2G desktop, Firefox Nightly or Mulet. You also need the latest Gaia repo. For most of the functionality, you must also have Node.js and NPM installed.
900 MTBF tests Automated testing, Gaia, MTBF, gaiatest
Mean time between failures (MTBF) is the predicted elapsed time between inherent failures of a system during operation. MTBF can be calculated as the arithmetic mean (average) time between failures of a system. The MTBF is typically part of a model that assumes the failed system is immediately repaired (mean time to repair, or MTTR), as a part of a renewal process. This is in contrast to the mean time to failure (MTTF), which measures average time to failures with the modeling assumption that the failed system is not repaired (infinite repair time).
901 Marionette for Interactive Python Firefox OS, Guide
This tutorial assumes you've set up Marionette for B2G.
902 Test Execution Chart
The test execution chart shows which harnesses are supported on which platforms, and which platforms are currently being used for continuous-integration.
903 The Mozilla integrated tools package B2G, Firefox OS, Flash, Marionette, MozITP, Testing, Tools, taskcluster
The Mozilla integrated tools package (MozITP) is a one-stop shop for setting up Firefox OS-related tools, which can handle automatic Testing on Mulet or a real device, flashing TaskCluster images, flashing with the B2G installer add-on, and running the TV and phone versions of Mulet. This article details how the toools package works, and how it can be installed.
904 Viewing CI test results Automation, Jenkins, Treeherder, tests
Whenever a pull request is created against mozilla-b2g's gaia repository, Mozilla picks up that branch and runs the Gaia suite of tests against it. This is very similar to how Travis works.
905 Writing Gaia Unit Tests Firefox OS, Gaia, Guide, Testing, unit tests
The unit test runner is mocha using the TDD interface. Mocha doesn't ship with an assertion library (there is no ok or assert_equals), so we use chai to provide assertions.
906 XPCShell Firefox OS, Gaia, Guide, XPCOM, XPCShell, automated, tests
XPCShell tests are headless tests of Gecko XPCOM APIs. You can run XPCShell tests on B2G; in this article we will look at how to do so. Currently, these are mainly tested on the emulator, but should in theory run on devices as well.
907 B2G OS APIs API, B2G API, b2g os api's
List of B2G OS APIs
908 Audio Channels API API, Audio, AudioChannels, B2G, Firefox OS, Reference
The AudioChannels API is a Firefox OS-only feature allowing you to place your app audio content into a hierarchy of importance, which dictates when the audio will be paused and resumed in response to other audio playing and actions occurring and allows you to control the volume of different types of audio independently from one another.
909 Using the AudioChannels API API, Audio, Audio Channels API, Firefox OS, Guide, Non-standard
The different audio channels are as follows:
910 AudioChannelManager API, Audio, AudioChannelManager, AudioChannels, Firefox OS, Interface, Non-standard, Reference
The AudioChannelManager interface of the AudioChannels API includes features for managing your device's audio channels, including setting what channel's volume to affect when the volume buttons are pressed inside a particular app.
911 AudioChannelManager.headphones API, Audio, AudioChannelManager, AudioChannels, Firefox OS, Non-standard, Property, Reference, headphones
The headphones read-only property of the AudioChannelManager interface returns a Boolean that indicates whether headphones are plugged into the device. A true value means that headphone are plugged in; false means they aren't.
912 AudioChannelManager.onheadphoneschange API, Audio, AudioChannelManager, AudioChannels, Firefox OS, Non-standard, Property, Reference, onheadphoneschange
The onheadphoneschange event handler of the AudioChannelManager interface fires when the device's headphones are plugged in or unplugged.
913 AudioChannelManager.telephonySpeaker API, Audio, AudioChannelManager, AudioChannels, Firefox OS, Non-standard, Property, Reference, telephonySpeaker
The telephonySpeaker property of the AudioChannelManager interface returns a Boolean that allows you to set whether the "telephony" audio channel should be played out of the device's speakers.
914 AudioChannelManager.volumeControlChannel API, Audio, AudioChannelManager, AudioChannels, Firefox OS, Non-standard, Property, Reference, volumeControlChannel
The volumeControlChannel property of the AudioChannelManager interface returns a DOMString that allows you to set which audio channel should have its volume changed when you press the device's hardware volume controls.
915 BluetoothAdapter (Firefox OS) API, B2G, BluetoothAdapter, Firefox OS, Interface, Non-standard, Reference, Référence(2), Web Bluetooth, WebAPI
The BluetoothAdapter interface of the Web Bluetooth API is used to handle all the operations requested by Bluetooth networks. A Bluetooth adapter is the physical interface which is used to interact with local Bluetooth device.
916 BluetoothAdapter.address API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The address property value provides the address of the device's adapter on the Bluetooth micro-network.
917 BluetoothAdapter.answerWaitingCall() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The answerWaitingCall method is used to allow HFP devices to answer a pending incoming call on a CDMA network.
918 BluetoothAdapter.class API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The class property value provides the Bluetooth "Class of Device" number of the device's adapter. This number provides much information about the device's capabilities. See the Bluetooth specification 4.0, section 6.26 for further information about the meaning of that number.
919 BluetoothAdapter.confirmReceivingFile() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The confirmReceivingFile method is used to accept or reject the incoming file transfer request received from the remote device.
920 BluetoothAdapter.connect() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The connect method is used to connect the device's adapter to a specific service of a remote device.
921 BluetoothAdapter.connectSco() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The connectSco method is used to allow the device to enable the SCO connection to broadcast and listen to audio to/from the remote devices it is connected to.
922 BluetoothAdapter.devices API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The devices property gives direct access to all the Bluetooth devices discovered in the area surrounding the device's adapter.
923 BluetoothAdapter.disconnect() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The disconnect method is used to disconnect the device's adapter from a specific service of a remote device.
924 BluetoothAdapter.disconnectSco() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The disconnectSco method is used to allow the device to disable the SCO connection with the remote devices it is connected to.
925 BluetoothAdapter.discoverable API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The discoverable property indicates if the device is discoverable (true) or not (false) by other Bluetooth devices.
926 BluetoothAdapter.discoverableTimeout API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The discoverableTimeout property indicates how long (in seconds) the device remains discoverable.
927 BluetoothAdapter.discovering API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The discovering property indicates if the device is in the process of discovering (true) or not (false) surrounding Bluetooth devices.
928 BluetoothAdapter.getConnectedDevices() API, B2G, Firefox OS, Method, Non-standard, Reference, Référence(2), Web Bluetooth, WebAPI
The getConnectedDevices method is used to retrieve the full list of all devices connected with a specific service of local adapter.
929 BluetoothAdapter.getPairedDevices() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The getPairedDevices method is used to retrieve the full list of all devices paired with the device's adapter.
930 BluetoothAdapter.ignoreWaitingCall() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The ignoreWaitingCall method is used to allow HFP devices to dismiss a pending incoming call on a CDMA network.
931 BluetoothAdapter.isConnected() API, B2G, Firefox OS, Method, Non-standard, Reference, Web Bluetooth, WebAPI
The isConnected method is used to check if a device with a given Bluetooth profile is connected.
932 BluetoothAdapter.isScoConnected() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The isScoConnected method is used to allow to know if there is a SCO connection between local and the remote Bluetooth device.
933 BluetoothAdapter.name API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The name property provides the human readable name of the device's adapter.
934 BluetoothAdapter.ona2dpstatuschanged API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
Specifies an event listener to receive a2dpstatuschanged events. Those events occur when an A2DP connection status changes.
935 BluetoothAdapter.ondevicefound API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
Specifies an event listener to receive devicefound events. Those events occur when a Bluetooth device is discovered in the surrounding area.
936 BluetoothAdapter.onhfpstatuschanged API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
Specifies an event listener to receive hfpstatuschanged events. Those events occur when an HFP connection status changes.
937 BluetoothAdapter.onpairedstatuschanged API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
Specifies an event listener to receive pairedstatuschanged events. Those events occur when a pairing process is completed.
938 BluetoothAdapter.onrequestmediaplaystatus API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
Specifies an event listener to receive requestmediaplaystatus events. Those events occur when a remote Bluetooth device queries the current media play status.
939 BluetoothAdapter.onscostatuschanged API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
Specifies an event listener to receive scostatuschanged events. Those events occur when a SCO connection status changes.
940 BluetoothAdapter.pair() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The pair method is used to start pairing a remote device with the device's adapter.
941 BluetoothAdapter.sendFile() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The sendFile method is used to start sending a file to a given remote device.
942 BluetoothAdapter.sendMediaMetaData() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The sendMediaMetaData method is used to send metadata about media to remote devices connected with the AVRCP 1.3 profile.
943 BluetoothAdapter.sendMediaPlayStatus() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The sendMediaPlayStatus method is used to send the play status of the device to remote devices connected with the AVRCP 1.3 profile.
944 BluetoothAdapter.setDiscoverable() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The setDiscoverable method is used to change the value of the discoverable property for the device's adapter.
945 BluetoothAdapter.setDiscoverableTimeout() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The setDiscoverableTimeout method is used to change the value of the discoverableTimeout property for the device's adapter.
946 BluetoothAdapter.setName() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The setName method is used to change the value of the name property for the device's adapter.
947 BluetoothAdapter.setPairingConfirmation() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The setPairingConfirmation method is used to send back the pairing confirmation when the device's adapter tries to pair itself with a remote device.
948 BluetoothAdapter.setPasskey() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The setPasskey method is used to send back the requested Passkey code when the device's adapter tries to pair itself with a remote device.
949 BluetoothAdapter.setPinCode() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The setPinCode method is used to send back the requested PIN code when the device's adapter tries to pair itself with a remote device.
950 BluetoothAdapter.startDiscovery() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The startDiscovery method is used to have the device's adapter start seeking for remote devices.
951 BluetoothAdapter.stopDiscovery() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The stopDiscovery method is used to have the device's adapter stop seeking for remote devices.
952 BluetoothAdapter.stopSendingFile() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The stopSendingFile method is used to abort sending a file to a given remote device.
953 BluetoothAdapter.toggleCalls() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The toggleCalls method is used to allow HFP devices to switch from one call to another on a CDMA network.
954 BluetoothAdapter.unpair() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The unpair method is used to remove the paired device from the paired device list of the device's adapter.
955 BluetoothAdapter.uuids API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The uuids property provides the list of all Bluetooth services' UUIDs the device's adapter is able to provide. See the Bluetooth specification assigned numbers part for an exhaustive list of possible services' UUIDs.
956 BluetoothAdapterEvent (Firefox OS) API, B2G, Bluetooth, BluetoothAdapterEvent, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth, events
The BluetoothAdapterEvent interface of the Web Bluetooth API provides access to a BluetoothAdapter object and its address as the parameter of a adapteradded or adapterremoved event handler (see BluetoothManager.onadapteradded and BluetoothManager.onadapterremoved), when fired.
957 BluetoothAttributeEvent (Firefox OS) API, B2G, Bluetooth, BluetoothAttributeEvent, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothAttributeEvent interface of the Web Bluetooth API provides access to changed attributes and their new values as the parameter of attributechanged event handlers (including BluetoothManager.onattributechanged, BluetoothAdapter.onattributechanged, and BluetoothDevice.onattributechanged), when fired.
958 BluetoothClassOfDevice (Firefox OS) API, B2G, Bluetooth, BluetoothClassOfDevice, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothClassOfDevice interface of the Web Bluetooth API provides identifying/classification information about a given remote Bluetooth device, available at discovery stage.
959 BluetoothDevice (Firefox OS) API, BluetoothDevice, Certified, Firefox OS, Interface, Non-standard, Reference, Référence(2), Web Bluetooth
The BluetoothDevice interface of the Web Bluetooth API provides information regarding a given Bluetooth device.
960 BluetoothDevice.address API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The address property value provides the address of the device on the Bluetooth micro-network.
961 BluetoothDevice.class API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The class property value provides the Bluetooth "Class of Device" number of the device. This number provides much information about the device's capabilities. See the Bluetooth specification 4.0, section 6.26 for further information about the meaning of that number.
962 BluetoothDevice.connected API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The connected property indicates if the device is connected to the current device's adapter (true) or not (false).
963 BluetoothDevice.icon API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The icon property is a string indicating which kind of icon could be used to represent the device.
964 BluetoothDevice.name API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The name property provides the human readable name of the device.
965 BluetoothDevice.paired API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The paired property indicates if the device is paired to the current device's adapter (true) or not (false).
966 BluetoothDevice.services API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The services property provides a list of Bluetooth services the device is able to provide. For a full list of possible Bluetooth services see the Bluetooth specification.
967 BluetoothDevice.uuids API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The uuids property provides the list of UUIDs of each Bluetooth service the device is able to provide. For a full list of possible Bluetooth services see the Bluetooth specification.
968 BluetoothDeviceEvent (Firefox OS) API, B2G, Bluetooth, BluetoothDeviceEvent, Certified, Firefox OS, Interface, Non-standard, Reference, Référence(2), Web Bluetooth, WebAPI
The BluetoothDeviceEvent interface of the Web Bluetooth API provides access to a found/paired device (BluetoothDevice) object or the address or an unpaired device as the parameter of a devicefounddevicepaired or deviceunpaired event handler (see BluetoothDiscoveryHandle.ondevicefound, BluetoothAdapter.ondevicepaired, and BluetoothAdapter.ondeviceunpaired), when fired.
969 BluetoothDeviceEvent.device API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The device property gives access to the device bound to the event.
970 BluetoothDiscoveryHandle (Firefox OS) API, B2G, Bluetooth, BluetoothDiscoveryHandle, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothDiscoveryHandle interface of the Web Bluetooth API is used to notify the current application about the discovery of a remote bluetooth device.
971 BluetoothGatt (Firefox OS) API, B2G, Bluetooth, BluetoothGatt, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothGatt interface of the Web Bluetooth API handles initial communications and connections with Gatt services.
972 BluetoothGattCharacteristic (Firefox OS) API, B2G, Bluetooth, BluetoothGattCharacteristic, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothGattCharacteristic interface of the Web Bluetooth API represents a GATT service characteristic, which includes characteristic definition, value, properties and configuration info, and a list of descriptors that provide related information.
973 BluetoothGattCharacteristicEvent (Firefox OS) API, B2G, Bluetooth, BluetoothGattCharacteristicEvent, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothGattCharacteristicEvent interface of the Web Bluetooth API provides access to an updated BluetoothGattCharacteristic object as the parameter of the BluetoothGatt.oncharacteristicchanged, handler, when the characteristicchanged event is fired.
974 BluetoothGattDescriptor (Firefox OS) API, B2G, Bluetooth, BluetoothGattDescriptor, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothGattDescriptor interface of the Web Bluetooth API represents a GATT descriptor, which contains related information about a characteristic value.
975 BluetoothGattServer (Firefox OS) API, B2G, Bluetooth, BluetoothGattServer, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothGattServer interface of the Web Bluetooth API provides Bluetooth GATT server functionality to allow creation of Bluetooth Smart/LE services and characteristics.
976 BluetoothGattService (Firefox OS) API, B2G, Bluetooth, BluetoothGattService, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothGattService interface of the Web Bluetooth API represents a service provided by a GATT server, including the service definition, a list of referenced services, and a list of the characteristics of this service.
977 BluetoothLeDeviceEvent (Firefox OS) API, B2G, Bluetooth, BluetoothLeDeviceEvent, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothLeDeviceEvent interface of the Web Bluetooth API provides access to an LE device BluetoothDevice object and its RSSI value and advertisement record, as the parameter of a devicefound event handler (see BluetoothDiscoveryHandle.ondevicefound), when fired.
978 BluetoothManager (Firefox OS) API, B2G, BluetoothManager, Certified, DOM, Firefox OS, Interface, Non-standard, Reference, Référence(2), Web Bluetooth, WebAPI
The BluetoothManager interface of the Web Bluetooth API allows to access all Bluetooth adapters available on the device. Adapters are the connection interface to connect a Bluetooth device to that device.
979 BluetoothManager.enabled API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
The enabled property value indicates whether the Bluetooth is turned on (true) or off (false).
980 BluetoothManager.getDefaultAdapter() API, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The getDefaultAdapter method is used to retrieve the default adapter used to connect the device to third-party Bluetooth devices.
981 BluetoothManager.isConnected() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Bluetooth, WebAPI
The isConnected method is used to check if a device with a given Bluetooth profile is connected.
982 BluetoothManager.onadapteradded API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
Specifies an event listener to receive adapteradded events. Those events occur when a Bluetooth adapter is enabled on the device. Each time this event occurs, the BluetoothManager.getDefaultAdapter() method will be able to access the last enabled adapter.
983 BluetoothManager.ondisabled API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
Specifies an event listener to receive disabled events. Those events occur when the device's Bluetooth is turned off.
984 BluetoothManager.onenabled API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Bluetooth, WebAPI
Specifies an event listener to receive enabled events. Those events occur when the device's Bluetooth is turned on.
985 BluetoothPairingEvent (Firefox OS) API, B2G, Bluetooth, BluetoothPairingEvent, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothPairingEvent interface of the Web Bluetooth API provides access to a device's name and the BluetoothPairingHandle object required for pairing devices as the parameter of pairing-related handlers (for example including BluetoothPairingListener.ondisplaypasskeyreq and BluetoothPairingListener.onenterpincodereq), when fired.
986 BluetoothPairingHandle (Firefox OS) API, B2G, Bluetooth, BluetoothPairingHandle, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothPairingHandle interface of the Web Bluetooth API contains the functionality required for completing a device pairing operation, including passkeys, and mechanisms to reply to user-entered pin codes and confirm passkeys.
987 BluetoothPairingListener (Firefox OS) API, B2G, BluePairingListener, Bluetooth, Certified, Firefox OS, Interface, Non-standard, Reference, Web Bluetooth
The BluetoothPairingListener interface of the Web Bluetooth API defines event handlers triggered for different pairing operations.
988 CallEvent API, B2G, CallEvent, Event, Firefox OS, Interface, Mobile, Non-standard, Reference, Référence(2), Telephony, WebAPI, events
The CallEvent interface of the Web Telephony API represents events related to telephone calls.
989 CallEvent.call API, B2G, Call, CallEvent, Event, Firefox OS, Mobile, Non-standard, Property, Reference, Référence(2), Telephony, WebAPI
The call read-only property of the CallEvent interface returns a TelephonyCall object indicating the call from which the event originated.
990 Camera API API, Firefox OS, Graphics, Reference, Référence(2), WebAPI, camera
The Camera API allows applications to manage the camera of the device. It allows them to take photographs, record videos, and get information like the focus, the zoom, the white balance, the flash, … It is a priviledged API and can only be used by certified applications.
991 Introduction to the Camera API Camera API, DOM, Gecko DOM Reference, Intermediate, Media, NeedsUpdate, Web API, camera
Through the Camera API, it is possible to take pictures with your device's camera and upload them into the current web page.
992 CameraCapabilities API, B2G, Certified Only, DOM, DOM Reference, Firefox OS, Graphics, JavaScript, Non-standard, Reference, Référence(2), WebAPI, camera
The CameraControl.capabilities property returns a CameraCapabilities object, which describes all the camera's capabilities.
993 CameraCapabilities.effects API, B2G, DOM Reference, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The effects property value is an Array identifying the effects (such as normal, sepia, mono, etc.) that the camera supports.
994 CameraCapabilities.fileFormats API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The fileFormats property is an Array identifying the file formats supported by the camera, such as jpeg, rgb565, etc.
995 CameraCapabilities.flashModes API, B2G, DOM, DOM Reference, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The flashModes property is an Array of strings identifying each of the flash modes supported by the camera. Possible values are auto, off, on or torch.
996 CameraCapabilities.focusModes API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The focusModes property is an Array of strings identifying each of the focus modes supported by the camera such as auto, fixed, macro, etc.
997 CameraCapabilities.maxExposureCompensation API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The maxExposureCompensation property is a number that defines the maximum supported exposure compensation value.
998 CameraCapabilities.maxFocusAreas API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The maxFocusAreas property is a number that defines the maximum number of focus areas supported by the camera.
999 CameraCapabilities.maxMeteringAreas API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The maxMeteringAreas property is a number that defines the maximum number of metering areas supported by the camera.
1000 CameraCapabilities.minExposureCompensation API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The minExposureCompensation property is a number that defines the minimum supported exposure compensation value.
1001 CameraCapabilities.pictureSizes API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The pictureSizes property is an Array of objects containing the height and width properties supported for picture taking.
1002 CameraCapabilities.previewSizes API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The previewSizes property is an Array of objects containing the height and width properties supported for the video preview stream.
1003 CameraCapabilities.recorderProfiles API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The recorderProfiles property is an object with attributes for each of the supported recorder profiles, e.g., recorderProfiles.cif, recorderProfiles.qvga.
1004 CameraCapabilities.sceneModes API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The sceneModes property is an Array identifying each of the scene modes supported by the camera such as auto, night, beach, etc.
1005 CameraCapabilities.stepExposureCompensation API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The stepExposureCompensation property is a number that defines the exposure compensation minimum step size.
1006 CameraCapabilities.videoSizes API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The videoSizes property is an Array of objects containing the height and width properties supported for video recording.
1007 CameraCapabilities.whiteBalanceModes API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The whiteBalanceModes property is an Array of strings identifiers for each white balance mode supported by the camera such as auto, fluorecent, etc.
1008 CameraCapabilities.zoomRatios API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The zoomRatios property is an Array of numbers representing all the supported zoom ratios. If the camera has no zoom capabilities, the value is null.
1009 CameraControl API, DOM, DOM Reference, Firefox OS, Graphics, JavaScript, Reference, Référence(2), WebAPI
When you use the CameraManager.getCamera() method to get a reference to a camera, you specify a callback function to be invoked on success. That function receives as a parameter a CameraControl object. You can use its methods and properties to manage and make use of the camera.
1010 CameraControl.autoFocus() API, B2G, Firefox OS, Graphics, JavaScript, Method, Non Standard, Reference, Référence(2), WebAPI, camera
This method attempts to focus the camera. If the camera is able to attempt to focus, a success callback is issued, regardless of whether or not the focusing attempt succeeds. If unable to attempt to focus, an error callback is performed instead.
1011 CameraControl.capabilities API, B2G, DOM, DOM Reference, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The capabilities property return a CameraCapabilities object, which describes the capabilities of the camera.
1012 CameraControl.effect API, B2G, DOM, DOM Reference, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The effect property is a string defining the effect to be used by the camera. When set, its value must be one of the values available in CameraCapabilities.effects.
1013 CameraControl.exposureCompensation API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The exposureCompensation property value is a number used to compensate the camera exposure.
1014 CameraControl.flashMode API, B2G, Firefox OS, Flash, Graphics, JavaScript, Non-standard, Property, Reference, Référence(2), WebAPI, camera
The flashMode property value is a string that defines how the flash, if any, is to be used. When set, its new value must be chosen from the list of options specified by  CameraCapabilities.flashModes.
1015 CameraControl.focalLength API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The focalLength property value is a read-only property that returns a number that expresses the camera's focal length in millimeters.
1016 CameraControl.focusAreas API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The focusAreas property is an Array of one or more Area objects that define where the camera will perform auto-focusing.

When set, if the array contains more objects than the number defined in CameraCapabilities.maxFocusAreas, extra objects will be ignored.

If set to null, the camera will determine the auto-focus areas by itself.
1017 CameraControl.focusDistanceFar API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The focusDistanceFar property value is a distance in meters used with CameraControl.focusDistanceNear to define the image's depth of field. The value for this property may be Infinity.
1018 CameraControl.focusDistanceNear API, B2G, DOM, DOM Reference, Firefox OS, Graphics, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The focusDistanceNear property value is a distance in meters used with CameraControl.focusDistanceFar to define the image's depth of field.
1019 CameraControl.focusDistanceOptimum API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The focusDistanceOptimum property value is the distance in meters where the subject appears sharpest.
1020 CameraControl.focusMode API, B2G, DOM, DOM Reference, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The focusMode property value is a string that defines which kind of focus mode the camera should use. When set, its new value must be chosen from the list of options specified by  CameraCapabilities.focusModes.
1021 CameraControl.getPreviewStream() API, DOM, DOM Reference, Firefox OS, Graphics, Method, Non Standard, Reference, Référence(2), WebAPI
This method is used to configure and access a MediaStream from the camera. The resulting stream is ready for you to use to capture still photos.
1022 CameraControl.getPreviewStreamVideoMode() API, B2G, DOM, DOM Reference, Firefox OS, Graphics, Method, Non Standard, Reference, Référence(2), WebAPI, camera
This method is used to configure and access a MediaStream from the camera. You use the resulting MediaStream object to record video.
1023 CameraControl.meteringAreas API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The meteringAreas property is an Array of one or more Area objects that define where the camera will perform light metering.

If the array contains more objects than the number defined inside CameraCapabilities.maxMeteringAreas, extra objects will be ignored.

If set to null, the camera will determine the light metering areas by itself.
1024 CameraControl.onClosed API, B2G, DOM, DOM Reference, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The onClosed property is used to set an event handler that will track when a new CameraControl object in the same app takes over the camera.
1025 CameraControl.onRecorderStateChange API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The onRecorderStateChange property is used to set an event handler to listen to the recorder state change. This can happen either because the recording process encountered an error, or because one of the recording limits set with CameraControl.startRecording() was reached.
1026 CameraControl.onShutter API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The onShutter property is used to set an event handler for the camera's "shutter" event, to trigger a shutter sound and/or a visual shutter indicator.
1027 CameraControl.pauseRecording() API, B2G, DOM, Firefox OS, Graphics, Method, Non-standard, Reference, camera
The pauseRecording() method of the CameraControl interface is used to pause the recording of a video file on a Firefox OS device.
1028 CameraControl.release() API, B2G, DOM, DOM Reference, Firefox OS, Graphics, Method, Non Standard, Reference, Référence(2), WebAPI, camera
Releases the camera so that other applications can use it. You should call this whenever the camera is not actively being used by your application.
1029 CameraControl.resumePreview() API, B2G, DOM, DOM Reference, Firefox OS, Graphics, Method, Non Standard, Reference, Référence(2), WebAPI, camera
This method is used to resume the preview stream.
1030 CameraControl.resumeRecording() API, B2G, DOM, Firefox OS, Graphics, Method, Non-standard, Reference, camera
The resumeRecording() method of the CameraControl interface is used to resume the recording of a video stream that has previously been paused.
1031 CameraControl.sceneMode API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The sceneMode property value is a string that defines the quality of exposure to use while taking pictures. When set, its new value must be chosen from the list of options specified by  CameraCapabilities.sceneModes.
1032 CameraControl.setConfiguration() API, DOM, DOM Reference, Firefox OS, Graphics, Method, Non Standard, Reference
Editorial review completed.
1033 CameraControl.setExposureCompensation() API, B2G, DOM, DOM Reference, Firefox OS, Graphics, Method, Non Standard, Reference, Référence(2), WebAPI, camera
This method is used to change the exposure compensation value.
1034 CameraControl.startRecording() API, B2G, DOM, DOM Reference, Firefox OS, Graphics, Method, Non Standard, Reference, Référence(2), WebAPI, camera
This method is used to start recording a video file on the device; the video is stored as a 3gp file.
1035 CameraControl.stopRecording() API, B2G, DOM, DOM Reference, Firefox OS, Graphics, Method, Non Standard, Reference, Référence(2), WebAPI, camera
Stops recording video on the device; you should call this at some point after calling CameraControl.startRecording().
1036 CameraControl.takePicture() API, B2G, DOM, DOM Reference, Firefox OS, Graphics, Method, Non Standard, Reference, Référence(2), WebAPI, camera
Captures a still image from the camera and passes it as a Blob to a success callback handler, which can manipulate the image as you wish (for example, by manipulating its pixel data or storing it).
1037 CameraControl.whiteBalanceMode API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The whiteBalanceMode property value is a string that defines the white balance mode to use. When set, its new value must be chosen from the list of options specified by  CameraCapabilities.whiteBalanceModes.
1038 CameraControl.zoom API, B2G, Firefox OS, Graphics, JavaScript, Non Standard, Property, Reference, Référence(2), WebAPI, camera
The zoom property value is a number that defines the zoom factor that is to be used when taking photographs. When set, its new value must be chosen from the list of options specified by  CameraCapabilities.zoomRatios. If the new value is not one of those possible values, the new value is rounded to the nearest supported value.
1039 CameraManager API, B2G, Certified Only, DOM, DOM Reference, Firefox OS, Graphics, JavaScript, Non-standard, Reference, Référence(2), WebAPI, camera
The CameraManager interface provides access to any cameras available on the device being used.
1040 CameraManager.getCamera() API, Firefox OS, Graphics, JavaScript, Method, Non Standard, Reference, Référence(2), WebAPI
This method is used to access to one of the cameras available on the device based on its identifier. You can get a list of the available cameras by calling the CameraManager.getListOfCameras() method.
1041 CameraManager.getListOfCameras() API, B2G, Firefox OS, Graphics, JavaScript, Method, Non Standard, Reference, Référence(2), WebAPI, camera
This method is used to get an Array of identifiers of all the cameras available on the device.
1042 ContactManager API, B2G, Contact, Firefox OS, Non Standard, Reference, Référence(2), WebAPI
The ContactManager interface is used to access and manage the contact available on the device.
1043 ContactManager.clear() API, B2G, Contact, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The clear method is used to remove ALL the contacts from the device's contact database.
1044 ContactManager.find() API, B2G, Contact, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The find method is used to retrieve a limited list of contacts from the device's contact database. This method is best suited to access a small data set, where getAll() is better suited for a large data set.
1045 ContactManager.getAll() API, B2G, Contact, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The getAll method is used to access a sorted list of contact from the device's contact database. This method is best suited to access a large data set, where find() is better suited for a small data set.
1046 ContactManager.getCount() API, B2G, Contact, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The getCount method is used to retrieve the total number of contacts available inside the device's contact database.
1047 ContactManager.getRevision() API, B2G, Contact, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The getRevision method is used to retrieve the revision number of the device's contact database.
1048 ContactManager.oncontactchange API, B2G, Contact, Firefox OS, Non Standard, Property, Reference, Référence(2), WebAPI
Specifies an event listener to receive contactchange events. These events occur when a contact is added, updated, or removed from the device's contact database.
1049 ContactManager.remove() API, B2G, Contact, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The remove method is used to delete a contact from the device's contact database.
1050 ContactManager.save() API, B2G, Contact, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The save method is used to store a contact inside the device's contact database. If the contact is already in the database (based on its id), it is updated, otherwise it is created.
1051 Contacts API API, B2G, Contact, Contacts, Firefox OS, Guide, Non Standard, WebAPI
The Contacts API provides a simple interface to manage a user's contacts stored in the system's address book. A typical use case for the Contacts API is the implementation of an application to manage an address book.
1052 DOMApplication API, Apps, Apps API, JavaScript, Manifest, Methods, Non-standard
In the Open Web apps JavaScript API, an App object is a JavaScript object that represents an app that is or could be installed in the user's app repository.
1053 DOMApplication.launch() API, Apps, DOM, Reference, Web
This method doesn't return anything.
1054 DOMCursor API, DOM, Interface, Non-standard, Reference
A DOMCursor object represents an ongoing operation over a list of results. It is an enhanced DOMRequest that allows to iterate through a list of results asynchronously. Each time its continue() method is called, the DOMCursor tries to reach the next result in the list and calls its result's success or error accordingly.
1055 DOMCursor.continue() API, DOM, Method, Non Standard, Reference
The continue method is used to tell the cursor to move to the next result. The DOMCursor's success or error is called with the DOMCursor's result updated accordingly.
1056 DOMCursor.done API, DOM, Non Standard, Property, Reference
The done property indicate if the DOMCursor has reached the last result.
1057 DOMRequest API, DOM, Interface, Non-standard, Reference
A DOMRequest object represents an ongoing operation. It provides callbacks that are called when the operation completes, as well as a reference to the operation's result. A DOM method that initiates an ongoing operation may return a DOMRequest object that you can use to monitor the progress of that operation.
1058 DOMRequest.error API, DOM, Non Standard, Property, Reference
This property can contain error information in a DOMError object.
1059 DOMRequest.onerror API, DOM, Non Standard, Property, Reference
This property specifies a callback function to be run when a DOMRequest fails.
1060 DOMRequest.onsuccess API, DOM, Non Standard, Property, Reference
This property specifies a callback function to be run when a DOMRequest completes successfully.
1061 DOMRequest.readyState API, DOM, Non Standard, Property, Reference
This property is a string that indicates whether or not a DOMRequest operation has finished running.
1062 DOMRequest.result API, DOM, Non Standard, Property, Reference
This property provides the result value from a DOMRequest operation.
1063 DataStore API, Data Store API, DataStore, Database, Interface, Non-standard, Reference, Référence(2), Storage
The DataStore interface of the Data Store API represents a retrieved set of data, and includes standard properties for accessing the store's name, owner, etc., methods for reading, modifying and syncing data, and the onchange event handler for reacting to changes to the data.
1064 DataStore.add() API, Add, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Method, Reference, Référence(2), Storage
The add() method of the DataStore interface adds a new record to the data store; if the record you are attempting to add already exists, it will throw an exception.
1065 DataStore.clear() API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Method, Reference, Référence(2), Storage, clear
The clear() method of the DataStore interface deletes all records from the data store, leaving it empty.
1066 DataStore.get() API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Method, Reference, Référence(2), Storage
The get() method of the DataStore interface retrieves one or more objects from the current data store.
1067 DataStore.getLength() API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Method, Reference, Référence(2), Storage
The getLength() method of the DataStore interface returns the number of records stored in the current data store.
1068 DataStore.name API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Property, Reference, Référence(2), Storage, name
The name read-only property of the DataStore interface returns the name of the current data store.
1069 DataStore.onchange API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Property, Reference, Référence(2), Storage, events, onchange
The onchange event handler of the DataStore interface fires when a change is made to the data store. Its main use is to synchronize different apps that are using the data store when a change is made. When fired, this event returns a DataStoreChangeEvent, which can be used to handle the change that was just made. Alternatively, when the event fires you could create a DataStoreCursor and iterate through all the records, if needed.
1070 DataStore.owner API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Property, Reference, Référence(2), Storage, owner
The owner read-only property of the DataStore interface returns the name of the app that owns the current data store.
1071 DataStore.put() API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Method, Reference, Référence(2), Storage, put
The put() method of the DataStore interface updates an existing record in the data store.
1072 DataStore.readOnly API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Property, Reference, Référence(2), Storage, readOnly
The readOnly read-only property of the DataStore interface returns a boolean indicating whether the current data store is read-only.
1073 DataStore.remove() API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Method, Reference, Référence(2), Storage, remove
The remove() method of the DataStore interface deletes one or more objects from the current data store.
1074 DataStore.revisionId API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Property, Reference, Référence(2), Storage, revisionId
The revisionId read-only property of the DataStore interface returns the current data store's current revision ID. This ID can be tracked, allowing you to synchronize apps using the data store to this point in its history.
1075 DataStore.sync() API, B2G, Data Store, Data Store API, DataStore, Database, Firefox OS, Method, Reference, Référence(2), Storage, Sync
The sync() method of the DataStore interface opens a cursor that allows you to step through any changes that have taken place in the data store going back to a particular revision ID, and run code in response to different types of change.
1076 DataStoreChangeEvent API, Data Store, Data Store API, DataStoreChangeEvent, Database, Interface, Non-standard, Reference, Référence(2), Storage
The DataStoreChangeEvent interface of the Data Store API represents the event related to a record changed in the data store, i.e. this is returned once a change is made and the change event is fired (see DataStore.onchange for the handler).
1077 DataStoreChangeEvent.id API, Data Store, Data Store API, DataStoreChangeEvent, Database, Property, Reference, Référence(2), Storage, id
The id read-only property of the DataStoreChangeEvent interface returns the identifier of the changed record in the data store. This must return null if the operation is cleared.
1078 DataStoreChangeEvent.operation API, Data Store, Data Store API, DataStoreChangeEvent, Database, Property, Reference, Référence(2), Storage, operation
The operation read-only property of the DataStoreChangeEvent interface returns the type of operation that represents the current change that has been made to the data store.
1079 DataStoreChangeEvent.owner API, Data Store, Data Store API, DataStoreChangeEvent, Database, Property, Reference, Référence(2), Storage, owner
The owner read-only property of the DataStoreChangeEvent interface returns the manifest URL of the application that made the change to the data store.
1080 DataStoreChangeEvent.revisionId API, Data Store, Data Store API, DataStoreChangeEvent, Database, Property, Reference, Référence(2), Storage, revisionId
The revisionId read-only property of the DataStoreChangeEvent interface returns the ID of the current revision of the data store, i.e. the current change that has been made to a data record.
1081 DataStoreCursor API, Data Store, Data Store API, DataStoreCursor, Database, Interface, Non-standard, Reference, Référence(2), Storage
The DataStoreCursor interface of the Data Store API represents a cursor that allows apps to iterate through a list of DataStoreTask objects representing the change history of the data store, for use when synchronizing the data.
1082 DataStoreCursor.close() API, Data Store, Data Store API, DataStoreCursor, Database, Method, Reference, Référence(2), Storage, close
The close() method of the DataStoreCursor interface makes a request to terminate the cursor.
1083 DataStoreCursor.next() API, Data Store, Data Store API, DataStoreCursor, Database, Method, Next, Reference, Référence(2), Storage
The next() method of the DataStoreCursor interface makes a request to retrieve information about the next operation that changes a record in the data store. Returns a promise of type DataStoreTask.
1084 DataStoreCursor.store API, Data Store, Data Store API, DataStoreCursor, Database, Property, Reference, Référence(2), Storage, Store
A DataStore object.
1085 DataStoreTask API, Data Store, Data Store API, DataStoreTask, Database, Interface, Non-standard, Reference, Référence(2), Storage
The DataStoreTask interface of the Data Store API represents a record changed in the data store when a DataStoreCursor is used to iterate through the data store's change history.
1086 DataStoreTask.data API, Data Store, Data Store API, DataStoreTask, Database, Property, Reference, Référence(2), Storage, data
The data read-only property of the DataStoreChangeEvent interface returns the data stored in the changed record in the data store. Must return null if the operation is clear or done.
1087 DataStoreTask.id API, Data Store, Data Store API, DataStoreTask, Database, Property, Reference, Référence(2), Storage, id
The id read-only property of the DataStoreTask interface returns the identifier of the changed record in the data store. This must return null if the operation is cleared or done.
1088 DataStoreTask.operation API, Data Store, Data Store API, DataStoreTask, Database, Property, Reference, Référence(2), Storage, operation
The operation read-only property of the DataStoreTask interface returns the type of operation that represents the current change that has been made to the data store.
1089 DataStoreTask.revisionId API, Data Store, Data Store API, DataStoreTask, Database, Property, Reference, Référence(2), Storage, revisionId
The revisionId read-only property of the DataStoreTask interface returns the id of the current revision of the data store, i.e. the current change that has been made to a data record.
1090 Device Storage API API, B2G, Device Storage, Firefox OS, Reference, WebAPI
The Device Storage API is used to access the file system within a Web app. Accessing the file system can be highly sensitive, and for that reason this API is available for privileged apps only.
1091 DeviceStorage API, DOM, DOM Reference, Device Storage, Firefox OS, Non-standard, Reference, Référence(2), WebAPI
The DeviceStorage interface is used to access files on a specific storage area available on the device. A storage area is, in essence, a file system repository even if it hides the reality of the underlying file system.
1092 DeviceStorage.add() API, B2G, Device Storage, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The add method is used to add a file inside a given storage area.
1093 DeviceStorage.addNamed() API, B2G, Device Storage, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The addNamed method is used to add a file inside a given storage area.
1094 DeviceStorage.available() API, B2G, Device Storage, Firefox OS, Method, Non-standard, Reference, Référence(2), WebAPI
The available() method is used to check whether the storage area is available; this is an asynchronous operation that returns a DOMRequest object that will receive a callback when the operation is complete.
1095 DeviceStorage.default API, B2G, Device Storage, Firefox OS, Non Standard, Property, Reference, Référence(2), WebAPI
The default property indicates if the storage area is the one which will be used by default for storing new files (true) or not (false).
1096 DeviceStorage.delete() API, B2G, Device Storage, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The delete method is used to remove a file from a given storage area.
1097 DeviceStorage.enumerate() API, Device Storage, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The enumerate method is used to iterate through the files of a given storage area.
1098 DeviceStorage.enumerateEditable() API, B2G, Device Storage, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The enumerateEditable method is used to iterate through the files of a given storage area.
1099 DeviceStorage.freeSpace() API, B2G, Device Storage, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The freeSpace method is used to get the amount of free space usable by the storage area.
1100 DeviceStorage.get() API, B2G, Device Storage, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The get method is used to retrieve a read-only file from a given storage area.
1101 DeviceStorage.getEditable() API, B2G, Device Storage, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The getEditable method is used to retrieve a file, which is editable, from a given storage area.
1102 DeviceStorage.lowDiskSpace API, B2G, Firefox OS, Non-standard, Property, Reference, WebAPI
The lowDiskSpace read-only property of the DeviceStorage interface returns a Boolean value that returns true if this storage area is close to being full.
1103 DeviceStorage.onchange API, B2G, Device Storage, Firefox OS, Non Standard, Property, Reference, Référence(2), WebAPI
The onchange property is used to specify an event handler to receive change events. Those events are triggered each time a file is created, modified, or deleted on the storage area.
1104 DeviceStorage.storageName API, B2G, Device Storage, Firefox OS, Non Standard, Property, Reference, Référence(2), WebAPI
The storageName property indicates the name of the storage area.
1105 DeviceStorage.usedSpace() API, B2G, Device Storage, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The usedSpace method is used to get the total of space used by the storage (the amount of space filled by files).
1106 DeviceStorageChangeEvent API, B2G, Device Storage, Firefox OS, Non-standard, Reference, Référence(2), WebAPI, events
The DeviceStorageChangeEvent provides information about any change made to a file inside a given storage area. It extends the Event interface.
1107 DeviceStorageChangeEvent.path API, B2G, Device Storage, Firefox OS, Non Standard, Property, Reference, Référence(2), WebAPI
The path property provides the full path to the file affected by the change.
1108 DeviceStorageChangeEvent.reason API, B2G, Device Storage, Firefox OS, Non Standard, Property, Reference, Référence(2), WebAPI
The reason property gives the nature of the change that occurred.
1109 FMRadio API, B2G, Firefox OS, Non-standard, Reference, Référence(2), WebAPI, WebFM
The WebFM API provides access to the device FM radio. This interface lets you turn the FM radio on and off and tune it to different stations. It is accessible through the navigator.mozFMRadio property.
1110 FMRadio.antennaAvailable API, B2G, FMRadio API, Firefox OS, Non Standard, Property, Reference, Référence(2), WebFM
The antennaAvailable property value indicates if an antenna is plugged and available.
1111 FMRadio.cancelSeek() API, B2G, FMRadio API, Firefox OS, Method, Non Standard, Reference, Référence(2), WebFM
The cancelSeek method is used to tell the radio to stop seeking for frequencies.
1112 FMRadio.channelWidth API, B2G, FMRadio API, Firefox OS, Non Standard, Property, Reference, Référence(2), WebFM
The channelWidth property value indicates the channel width of the ranges of frequency, in MHz.
1113 FMRadio.disable() API, B2G, FMRadio API, Firefox OS, Method, Non Standard, Reference, Référence(2), WebFM
The disable method is used to turn off the radio.
1114 FMRadio.enable() API, B2G, FMRadio API, Firefox OS, Method, Non Standard, Reference, Référence(2), WebFM
The enable method is used to turns on the radio on the given frequency.
1115 FMRadio.enabled API, B2G, FMRadio API, Firefox OS, Non Standard, Property, Reference, Référence(2), WebFM
The enabled property value indicates whether the radio is playing (true) or not (false)
1116 FMRadio.frequency API, B2G, FMRadio API, Firefox OS, Non Standard, Property, Reference, Référence(2), WebFM
The frequency property value returns the current radio frequency.
1117 FMRadio.frequencyLowerBound API, B2G, FMRadio API, Firefox OS, Non Standard, Property, Reference, Référence(2), WebFM
The frequencyLowerBound property value indicates the minimum frequency down to which the seek method searches for radio stations.
1118 FMRadio.frequencyUpperBound API, B2G, FMRadio API, Firefox OS, Non Standard, Property, Reference, Référence(2), WebFM
The frequencyUpperBound property value indicates the maximum frequency up to which the seek method searches for radio stations.
1119 FMRadio.onantennaavailablechange API, FMRadio API, Firefox OS, Property, Reference, WebFM
Specifies an event listener to receive antennaavailablechange events. Those events occur when an antenna is plugged or unplugged.
1120 FMRadio.ondisabled API, Firefox OS, Property, Reference, WebFM
Specifies an event listener to receive disabled events. Those events occur when the device's FM radio is turned off.
1121 FMRadio.onenabled API, FMRadio API, Firefox OS, Property, Reference, WebFM
Specifies an event listener to receive enabled events. Those events occur when the device's FM radio is turned on.
1122 FMRadio.onfrequencychange API, FMRadio API, Firefox OS, Property, Reference, WebFM
Specifies an event listener to receive frequencychange events. Those events occur whenever the radio frequency is changed
1123 FMRadio.seekDown() API, FMRadio API, Firefox OS, Method, Non Standard, Reference, Référence(2), WebFM
The seekDown method is used to tell the radio to seek down to the next radio channel. The search circles back to upper frequencies when the lowest frequency has been reached.
1124 FMRadio.seekUp() API, FMRadio API, Firefox OS, Method, Non Standard, Reference, Référence(2), WebFM
The seekUp method is used to tell the radio to seek up to the next radio channel. The search circles back to lower frequencies when the highest frequency has been reached.
1125 FMRadio.setFrequency() API, FMRadio API, Firefox OS, Method, Non Standard, Reference, Référence(2), WebFM
The setFrequency method is used to change the frequency listened to by the radio.
1126 HTMLMediaElement (Firefox OS extensions)
No summary!
1127 HTMLMediaElement.mozAudioChannelType API, AudioChannels, Firefox OS, HTMLMediaElement, Non-standard, Property, Reference, Référence(2)
The mozAudioChannelType property of the HTMLMediaElement interface can be used to set the audio channel that the sound coming from an <audio> or <video> element will play in, on a Firefox OS device.
1128 Idle API API, Firefox OS, Idle, Non-standard, Overview, Reference
The Idle API is used to notify an app when the user is idle. This lets an app take action when the user is doing nothing with their device. The most common use case is to save battery power; in this case, it is commonly used in conjuction with the Power Management API.
1129 MMICall API, B2G, Certified, DOM, Firefox OS, Interface, MMICall, Mobile, Non-standard, Reference, Telephony, WebAPI
The MMICall interface of the Web Telephony API represents an MMI call, allowing us to receive the result of the call.
1130 MMICall.result API, B2G, Certified, DOM, Firefox OS, MMICall, Mobile, Non-standard, Property, Telephony, WebAPI, result
The result read-only property of the MMICall interface returns a promise that resolves to a MozMMIResult object containing information associated with the success status of the MMI call.
1131 Mobile Connection API, B2G, Firefox OS, Non Standard, Reference, Référence(2), WebAPI
This API has 2 purposes:
1132 Mobile Messaging API API, Firefox OS, Non-standard, Reference
WebSMS is an API that makes it possible for web content to create, send, and receive Short Message Service (SMS) or Multimedia Messaging Service (MMS) messages.
1133 Introduction to Mobile Message API API, B2G, Firefox OS, Guide, Intro, Mobile, Mobile Messaging API, Non-standard, SMS, WebSMS
A part of the core functionality in a mobile phone is sending and receiving SMS and MMS messages. This is achieved through the Messaging API. As this new specification is in its early stage, Firefox OS implements a non-standard version of this. Here is a little overview of that API as implemented.
1134 MozActivity API, B2G, Firefox OS, Non-standard, Web Activities, WebAPI
The MozActivity interface allows apps to delegate an activity to another app.
1135 MozActivityOptions API, B2G, Firefox OS, Non-standard, Reference, Référence(2), Web Activities, WebAPI
The MozActivityOptions interface allows apps to declare the activity they want to create and also to access information of activities they want to handle.
1136 MozActivityOptions.data API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Activities, WebAPI
The data property returns an arbitrary object representing any data passed with the activity.
1137 MozActivityOptions.name API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Activities, WebAPI
The name property returns a string representing the name of the associated activity. See MozActivityOptions to read in which context MozActivityOptions is being used.
1138 MozActivityRequestHandler API, B2G, Firefox OS, Non-standard, Reference, Référence(2), Web Activities
The MozActivityRequestHandler interface allows apps that handle activities to access and interact with the request made by a third party app that tries to delegate an activity.
1139 MozActivityRequestHandler.postError() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Activities, WebAPI
The postError method is used to send back an error message to the app that made the activity request.
1140 MozActivityRequestHandler.postResult() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Web Activities, WebAPI
The postResult method is used to send back an answer to the app that made the activity request.
1141 MozActivityRequestHandler.source API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), Web Activities, WebAPI
The source property returns a MozActivityOptions object, which provides information about the activity request.
1142 MozAlarmsManager API, B2G, Firefox OS, Non-standard, Reference, WebAPI, alarm
The MozAlarmsManager API allows to schedule notifications or applications to be started at a specific time.
1143 MozAlarmsManager.add() API, B2G, Firefox OS, Method, Non Standard, WebAPI, alarm
The add method is used to retrieve a list of pending alarms.
1144 MozAlarmsManager.getAll() API, B2G, Firefox OS, Method, Non Standard, Reference, WebAPI, alarm
The getAll method is used to retrieve a list of pending alarms.
1145 MozAlarmsManager.remove() API, B2G, Firefox OS, Method, Non-standard, Reference, WebAPI, alarm
The remove method is used to retrieve a list of pending alarms.
1146 MozContact API, B2G, Contact, Firefox OS, Non-standard, Reference
The MozContact interface is used to describe a single contact in the device's contact database.
1147 MozContact.additionalName API, B2G, Contact, Firefox OS, Non Standard, Property, WebAPI
The additionalName property is a list of any additional names (other than given names or family names) usable for the contact.
1148 MozContact.adr API, B2G, Contact, Firefox OS, Non-standard, Property, Reference, WebAPI
The adr property is a list of all the possible addresses for the contact.
1149 MozContact.anniversary API, B2G, Contact, Firefox OS, Non Standard, Property, Reference, WebAPI
The anniversary property represents the anniversary date of the contact (which can be different than its birthday date).
1150 MozContact.bday API, B2G, Contact, Firefox OS, Non Standard, Property, Reference, WebAPI
The bday property represents the birthday date of the contact.
1151 MozContact.category API, B2G, Contact, Firefox OS, Non Standard, Property, Reference, WebAPI
The category property is a list of all the different categories the contact is associated with.
1152 MozContact.email API, B2G, Contact, Firefox OS, Non Standard, Property, Reference, WebAPI
The email property is a list of all the possible e-mails for the contact.
1153 MozContact.familyName API, B2G, Contact, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, WebAPI
The familyName property is a list of all the possible family names usable for the contact.
1154 MozContact.genderIdentity API, B2G, Contact, Firefox OS, Non Standard, Property, Reference, WebAPI
The genderIdentity property represents the actual gender identity of the contact (which can be different than its actual sex).
1155 MozContact.givenName API, B2G, Contact, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, WebAPI
The givenName property is a list of all the possible given names usable for the contact.
1156 MozContact.honorificPrefix API, B2G, Contact, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, WebAPI
The honorificPrefix property is a list of all the possible honorific prefix usable for the contact.
1157 MozContact.honorificSuffix API, B2G, Contact, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, WebAPI
The honorificSuffix property is a list of all the possible honorific suffixes usable for the contact.
1158 MozContact.id API, B2G, Contact, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, WebAPI
The id property is a unique string representing the contact within the device's contact database.
1159 MozContact.impp API, B2G, Contact, Firefox OS, Non-standard, Property, Reference, WebAPI
The impp property is a list of all the possible Instant Messaging addresses for the contact.
1160 MozContact.init() API, B2G, DOM, DOM Reference, Firefox OS, Method, Non Standard, Reference, Référence(2), WebAPI
The init method is used to initialize the mozContact object using a configuration object.
1161 MozContact.jobTitle API, B2G, Contact, Firefox OS, Non-standard, Property, Reference, WebAPI
The jobTitle property is a list of all the possible job titles of the contact.
1162 MozContact.key API, B2G, Contact, Firefox OS, Non-standard, Property, Reference, WebAPI
The key property is a list of all the possible encryption keys usable with the contact.
1163 MozContact.name API, B2G, Contact, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, WebAPI
The name property is a list of all the possible names use to identify the contact. It's equivalent to the FN vCard's attribute.
1164 MozContact.nickname API, B2G, Contact, Firefox OS, Non-standard, Property, Reference, WebAPI
The nickname property is a list of all the possible nicknames for the contact.
1165 MozContact.note API, B2G, Contact, Firefox OS, Non-standard, Property, Reference, WebAPI
The note property is a list of arbitrary notes related to the contact.
1166 MozContact.org API, B2G, Contact, Firefox OS, Property, Reference, WebAPI
The org property is a list of all the possible organizations the contact is affiliated with.
1167 MozContact.photo API, B2G, Contact, Firefox OS, Non Standard, Property, Reference, Référence(2), WebAPI
The photo property is a list of images for the contact.
1168 MozContact.published API, B2G, Contact, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, WebAPI
The published property provides the date of when the contact was stored for the first time on the device's contact database.
1169 MozContact.sex API, B2G, Contact, Firefox OS, Non-standard, Property, Reference, WebAPI
The sex property represents the actual sex of the contact.
1170 MozContact.tel API, B2G, Contact, Firefox OS, Non-standard, Property, Reference, WebAPI
The tel property is a list of all the possible phone numbers for the contact.
1171 MozContact.updated API, B2G, Contact, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, WebAPI
The updated property provides the date of when the contact was updated for the last time on the device's contact database.
1172 MozContact.url API, B2G, Contact, Firefox OS, Non-standard, Property, Reference, WebAPI
The url property is a list of all the possible URLs for the contact.
1173 MozContactChangeEvent API, B2G, Contact, Firefox OS, Non-standard, Reference
The MozContactChangeEvent interface provides information about the contact that has changed. It inherits from the Event interface.
1174 MozContactChangeEvent.contactID API, B2G, Contact, Firefox OS, Non-standard, Property, Reference
The contactID property represents the unique ID of the contact that has been changed.
1175 MozContactChangeEvent.reason API, B2G, Contact, Firefox OS, Non-standard, Property, Reference
The reason property indicates what kind of change was made to the contact.
1176 MozIccManager API, B2G, Firefox OS, NeedsExample, Non-standard, Reference, Référence(2)
The MozIccManager interface gives access to ICC related functionalities.
1177 MozIccManager.onstkcommand API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The onstkcommand property specifies an event listener to receive stkcommand events. These events are notified whenever STK Proactive Command is issued from ICC.
1178 MozIccManager.onstksessionend API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The onstksessionend property specifies an event listener to receive stksessionend events. These events are notified whenever STK Session is terminated by ICC.
1179 MozIccManager.sendStkResponse() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2)
The sendStkResponse method is used to send a response back to ICC after an attempt to execute STK Proactive Command.
1180 MozMmsEvent API, B2G, DOM, Firefox OS, Mobile, Non-standard, Reference, Référence(2), WebSMS
The DOM MozMmsEvent represents events related to WebSMS MMS messages.
1181 MozMmsEvent.message API, B2G, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The message property is the MozMmsMessage from which the event originated.
1182 MozMmsMessage API, B2G, Firefox OS, Mobile, Non-standard, Reference, Référence(2), WebSMS
The DOM MozMmsMessage object represents an MMS message and has all the information about sender, recipient, body content, attachements, and date of the message itself.
1183 MozMmsMessage.attachments API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The attachments property gives access to the list of all the MMS attachments (resources necessary to display the MMS correctly).
1184 MozMmsMessage.delivery API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The delivery property represents the current state of the message delivery from the device perspective.
1185 MozMmsMessage.deliveryStatus API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The deliveryStatus property represents the current state of the message delivery from the recipient's perspective.
1186 MozMmsMessage.expiryDate API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The expiryDate property represents the expiry date for an MMS to be manually downloaded.
1187 MozMmsMessage.id API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The id property represents the unique id of the message.
1188 MozMmsMessage.read API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The read property indicates if the message has been read (true) or not (false).
1189 MozMmsMessage.receivers API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The receivers property provides the list of all receivers for a given message. Each receiver is identified with a string representing its phone number.
1190 MozMmsMessage.sender API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The sender property provides the phone number of the sender of a given message.
1191 MozMmsMessage.smil API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The smil property represents a stringified version of the SMIL content of the message (an MMS is always a SMIL document).
1192 MozMmsMessage.subject API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The subject property is a string representing the subject of the message (in many cases, its title).
1193 MozMmsMessage.threadId API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The threadId property represents the id of the thread the message is part of.
1194 MozMmsMessage.timestamp API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The timestamp property represents the timestamp of a given message.
1195 MozMmsMessage.type API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The type property represents the type of the message. It provides a convenient way to be sure that a message is an MMS.
1196 MozMobileCFInfo API, DOM, Firefox OS, Mobile, Non-standard, Reference, Référence(2)
The MozMobileCFInfo interface defines options used to retrieve or define call forwarding settings.
1197 MozMobileCFInfo.action API, B2G, Firefox OS, Non-standard, Property, Reference, Référence(2)
action is a read-only property that indicates what to do with the call forwarding rule.
1198 MozMobileCFInfo.active API, B2G, Firefox OS, Non-standard, Property, Reference, Référence(2)
active is a read-only property that indicates whether call forwarding is active (true) or not active (false).
1199 MozMobileCFInfo.number API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
number is a read-only property that indicates the phone number where to forward the calls.
1200 MozMobileCFInfo.reason API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
reason is a read-only property that indicates the reason the call is being forwarded.
1201 MozMobileCFInfo.serviceClass API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
serviceClass is a read-only property that represents the service for which the call forward is set up.
1202 MozMobileCFInfo.timeSeconds API, B2G, Firefox OS, Non-standard, Property, Reference, Référence(2)
timeSeconds is a read-only property representing the time in seconds to wait before a call is forwarded.
1203 MozMobileCellInfo API, B2G, Firefox OS, Mobile, Non-standard, Reference, Référence(2)
The MozMobileCellInfo interface allow to access to cell location information.
1204 MozMobileCellInfo.gsmCellId API, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2)
gsmCellId is a read-only property that provides the mobile Cell ID for the current GSM/WCDMA networks.
1205 MozMobileCellInfo.gsmLocationAreaCode API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
gsmLocationAreaCode is a read-only property that provides the mobile Location Area Code (LAC) for the current GSM/WCDMA networks.
1206 MozMobileConnection API, B2G, Firefox OS, Mobile, Non-standard, Reference, Référence(2)
This API is used to get information about the current mobile voice and data connection states of the device. It is accessible through navigator.mozMobileConnections, which returns an array of MozMobileConnection objects.
1207 MozMobileConnection.cancelMMI() API, B2G, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2)
The cancelMMI method cancels the current MMI request if one exists.
1208 MozMobileConnection.cardState API, B2G, Firefox OS, Non-standard, Property, Reference, Référence(2)
The cardState is a read-only property that indicates the state of the device's ICC card.
1209 MozMobileConnection.data API, B2G, Firefox OS, Non-standard, Property, Reference, Référence(2)
The data is a read-only property that gives access to information about the device's data connection.
1210 MozMobileConnection.getCallForwardingOption() API, B2G, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2)
The getCallForwardingOption method is used to query current options for call forwarding.
1211 MozMobileConnection.getCardLock() API, B2G, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2)
The getCardLock method is used to find out about the status of an integrated circuit card (ICC) lock (such as requiring a personal identification number (PIN)).
1212 MozMobileConnection.getNetworks() API, B2G, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2)
The getNetworks method is used to search for available networks.
1213 MozMobileConnection.icc API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The icc is a read-only property that gives access to ICC related funcionality.
1214 MozMobileConnection.iccInfo API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The iccInfo is a read-only property that gives access to information stored in the device's ICC card.
1215 MozMobileConnection.networkSelectionMode API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The networkSelectionMode is a read-only property that indicates the selection mode of the voice and data networks.
1216 MozMobileConnection.oncardstatechange API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The oncardstatechange property specifies an event listener to receive cardstatechange events. These events occur when the cardState property changes value.
1217 MozMobileConnection.oncfstatechange API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The oncfstatechange property specifies an event listener to receive cfstatechange events. These events occur when the call forwarding state changes.
1218 MozMobileConnection.ondatachange API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The ondatachange property specifies an event listener to receive datachange events. These events occur whenever the MozMobileConnection.data connection object changes values.
1219 MozMobileConnection.ondataerror API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The ondataerror property specifies an event listener to receive dataerror events. These events occur whenever the MozMobileConnection.data connection object receives an error from the RIL.
1220 MozMobileConnection.onicccardlockerror API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The onicccardlockerror property specifies an event listener to receive icccardlockerror events. These events occur whenever the unlockCardLock or setCardLock method fails.
1221 MozMobileConnection.oniccinfochange API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The oniccinfochange property specifies an event listener to receive iccinfochange events. These events occur whenever the MozMobileConnection.iccInfo object changes.
1222 MozMobileConnection.onussdreceived API, B2G, DOM, Firefos OS, Mobile, Non Standard, Property, Reference, Référence(2)
The onussdreceived property specifies an event listener to receive ussdreceived events. These events occur whenever a new USSD message is received.
1223 MozMobileConnection.onvoicechange API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The onvoicechange property specifies an event listener to receive voicechange events. These events occur whenever the MozMobileConnection.voice connection object changes.
1224 MozMobileConnection.selectNetwork() API, B2G, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2)
The selectNetwork method is used to manually select a network, overriding the radio's current selection.
1225 MozMobileConnection.selectNetworkAutomatically() API, B2G, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2)
The selectNetworkAutomatically method is used to tell the radio to automatically select a network.
1226 MozMobileConnection.sendMMI() API, B2G, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2)
The sendMMI method is used to send an MMI code.
1227 MozMobileConnection.setCallForwardingOption() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2)
The setCallForwardingOption method is used to configure call forward options.
1228 MozMobileConnection.setCardLock() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2)
The setCardLock method is used to set or modify the state of a card lock.
1229 MozMobileConnection.unlockCardLock() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2)
The unlockCardLock method is used to unlock a card lock.
1230 MozMobileConnection.voice API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The voice is a read-only property that gives access to information about the voice connection.
1231 MozMobileConnectionInfo API, B2G, Firefox OS, Non-standard, Reference, Référence(2)
The MozMobileConnectionInfo interface allows to access connection information for voice or data. The navigator.mozMobileConnection uses it through its voice and data properties.
1232 MozMobileConnectionInfo.cell API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
cell is a read-only property that gives access to cell location information.
1233 MozMobileConnectionInfo.connected API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
connected is a read-only property that indicates whether the connection is ready (true) or not (false).
1234 MozMobileConnectionInfo.emergencyCallsOnly API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
emergencyCallsOnly is a read-only property that indicates whether only emergency calls are possible.
1235 MozMobileConnectionInfo.lastKnownMcc API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
lastKnownMcc is a read-only property that represents the Mobile Country Code (MCC) of the last known network operator.
1236 MozMobileConnectionInfo.network API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
network is a read-only property that gives access to the network operator information.
1237 MozMobileConnectionInfo.relSignalStrength API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2)
relSignalStrength is a read-only property that gives the signal strength, represented linearly as a number.
1238 MozMobileConnectionInfo.roaming API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
roaming is a read-only property that indicates whether the connection is going through a foreign operator (true) or not (false).
1239 MozMobileConnectionInfo.signalStrength API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
signalStrength is a read-only property that gives the signal strength in dBm.
1240 MozMobileConnectionInfo.state API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
state is a read-only property that gives the state of the connection.
1241 MozMobileConnectionInfo.type API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
type is a read-only property that gives the type of connection.
1242 MozMobileICCInfo API, B2G, Firefox OS, Mobile, Non-standard, Reference, Référence(2)
The MozMobileICCInfo interface allow to access access to information stored in the device's ICC card. The navigator.mozMobileConnection uses it through its iccInfo property.
1243 MozMobileICCInfo.iccid API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
iccid is a read-only property representing the Integrated Circuit Card (ICC) Identifier.
1244 MozMobileICCInfo.isDisplayNetworkNameRequired API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
isDisplayNetworkNameRequired is a read-only property that indicates the Network name must be a part of any displayed carrier name.
1245 MozMobileICCInfo.isDisplaySpnRequired API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
isDisplaySpnRequired is a read-only property that indicates the Service provider name must be a part of any displayed carrier name.
1246 MozMobileICCInfo.mcc API, B2G, Firefox, Non Standard, Property, Reference, Référence(2)
mcc is a read-only property representing the Mobile Country Code (MCC) of the subscriber's home network.
1247 MozMobileICCInfo.mnc API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
mnc is a read-only property representing the Mobile Network Code (MNC) of the subscriber's home network.
1248 MozMobileICCInfo.msisdn API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
msisdn is a read-only property representing the Mobile Station ISDN Number (MSISDN) of the subscriber's, aka his phone number.
1249 MozMobileICCInfo.spn API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
spn is a read-only property representing the Service Provider Name (SPN) of the subscriber's home network.
1250 MozMobileMessageManager API, Firefox OS, Mobile, Reference, Référence(2), WebSMS
Provides support for sending and managing both MMS and SMS messages on a device with WebSMS.
1251 MozMobileMessageManager.delete() API, DOM, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2), WebSMS
The delete method is used to delete a given message.
1252 MozMobileMessageManager.getMessage() API, B2G, DOM, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2), WebSMS
The getMessage method is used to access a given SMS message.
1253 MozMobileMessageManager.getMessages() API, B2G, DOM, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2), SMS, WebSMS
The getMessages method is used to access a list of messages.
1254 MozMobileMessageManager.getSegmentInfoForText() API, B2G, DOM, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2), WebSMS
The getSegmentInfoForText method is used to get the information necessary to create a multi-part SMS for a given text.
1255 MozMobileMessageManager.getThreads() API, B2G, DOM, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2), WebSMS
The getThreads method is used to iterate through a list of MozMobileMessageThread objects. Each of those objects represents a conversation between participants.
1256 MozMobileMessageManager.markMessageRead() API, B2G, DOM, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2), WebSMS
The markMessageRead method is used to change the read state of a given message.
1257 MozMobileMessageManager.ondeliveryerror API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
Specifies an event listener to receive deliveryerror events. These events occur when an SMS or MMS cannot be delivered.
1258 MozMobileMessageManager.ondeliverysuccess API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
Specifies an event listener to receive deliverysuccess events. These events occur when an SMS or MMS is delivered.
1259 MozMobileMessageManager.onfailed API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
Specifies an event listener to receive failed events. These events occur when an SMS or MMS has failed.
1260 MozMobileMessageManager.onreceived API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
Specifies an event listener to receive received events. These events occur when an SMS or MMS is received.
1261 MozMobileMessageManager.onretrieving API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
Specifies an event listener to receive retrieving events. These events occur when an SMS or MMS enters the retrieving flow.
1262 MozMobileMessageManager.onsending API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
Specifies an event listener to receive sending events. These events occur when an SMS or MMS enters the send flow.
1263 MozMobileMessageManager.onsent API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
Specifies an event listener to receive sent events. These events occur when an SMS or MMS is sent.
1264 MozMobileMessageManager.retrieveMMS() API, B2G, DOM, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2), WebSMS
The retrieveMMS method is used to access a given MMS message.
1265 MozMobileMessageManager.send() API, B2G, DOM, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2), WebSMS
The send method is used to send an SMS message to one or more receivers.
1266 MozMobileMessageManager.sendMMS() API, B2G, DOM, Firefox OS, Method, Mobile, Non Standard, Reference, Référence(2), WebSMS
The sendMMS method is used to send an MMS message to one or more receivers.
1267 MozMobileMessageThread API, B2G, Firefox OS, Mobile, Non-standard, Reference, Référence(2), WebSMS
The DOM MozMobileMessageThread object represents a thread of messages.
1268 MozMobileMessageThread.body API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The body property represents the body of the last message available in the thread.
1269 MozMobileMessageThread.id API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The id property represents the unique id of the thread. Each message belonging to that thread has a property named threadId filled with that same value.
1270 MozMobileMessageThread.lastMessageType API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The lastMessageType property represents the type of the last message in the thread.
1271 MozMobileMessageThread.participants API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The participants property is a list of all the participants' addresses to the thread.
1272 MozMobileMessageThread.timestamp API, B2G, DOM, Mobile, Non Standard, Property, Reference, Référence(2)
The timestamp property represent the timestamp of the last message is the thread.
1273 MozMobileMessageThread.unreadCount API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The unreadCount property represents the number of unread messages belonging to the thread.
1274 MozMobileNetworkInfo API, B2G, Firefox OS, Interface, Mobile, NeedsExample, Non-standard, Reference, Référence(2)
The MozMobileNetworkInfo interface allows access to information related to the network carrier. The navigator.mozMobileConnection uses it through its voice.network and data.network properties.
1275 MozMobileNetworkInfo.longName API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
longName is a read-only property that gives the long name of the network operator.
1276 MozMobileNetworkInfo.mcc API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2)
The mcc is a read-only property that represents the Mobile Country Code (MCC) of the network operator.
1277 MozMobileNetworkInfo.mnc API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The mnc is a read-only property that represents the Mobile Network Code (MNC) of the network operator.
1278 MozMobileNetworkInfo.shortName API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2)
shortName is a read-only property that gives the long name of the network operator.
1279 MozMobileNetworkInfo.state API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2)
The state is a read-only property that gives the state of the network operator.
1280 MozNDEFRecord API, Firefox OS, Interface, MozNDEFRecord, NDEFRecord, NFC, Reference
MozNDEFRecord is a data structure that implements the NFC Data Exchange Format (NDEF). It is a standard common format for NFC-related data communication between applications, NFC tags, and devices.
1281 MozNDEFRecord.id API, Firefox OS, MozNDEFRecord, NDEFRecord, NFC, Property, Reference, Référence(2), id
The id property of the MozNDEFRecord interface is application dependent (an appropriate id can be used, depending on functionality), but generally will return an NDEF Record identifier.
1282 MozNDEFRecord.payload API, Firefox OS, MozNDEFRecord, NDEFRecord, NFC, Property, Reference, Référence(2), payload
The payload property of the MozNDEFRecord interface is application dependent (for example, a contacts application could contain URLs, mime-types, postal address, etc., to emulate vCards).
1283 MozNDEFRecord.tnf API, Firefox OS, MozNDEFRecord, NDEFRecord, NFC, Property, Reference, Référence(2), tnf
The tnf property of the MozNDEFRecord interface contains the Type Name Format (3-bit field) of the record. This field is required.
1284 MozNDEFRecord.type API, Firefox OS, MozNDEFRecord, NDEFRecord, NFC, Property, Reference, Type
The type property of the MozNDEFRecord interface ... fill in description of what it does
1285 MozNFC API, Firefox OS, Interface, MozNFC, NFC, Reference
MozNFC is the top level API for operating in NFC Reader/Writer mode, NFC P2P mode and NFC Card Emulation mode.
1286 MozNFC.getNFCPeer() API, Firefox OS, Method, MozNFC, NFC, Reference
The getNFCPeer() method of the MozNFC interface returns a Peer to Peer DOM object (MozNFCPeer) that can be used to transfer data to another NFC-enabled device.
1287 MozNFC.getNFCTag() API, Firefox OS, Method, MozNFC, NFC, Reference
The getNFCTag() method of the MozNFC interface returns an NDEF tag interface (MozNFCTag object) used to interact with NFC Tags.
1288 MozNFC.onpeerfound API, Non-standard, Reference, Référence(2)
The onpeerfound event handler of the MozNFC interface is called when a MozNFCPeer is detected.
1289 MozNFC.onpeerlost API, Firefox OS, MozNFC, NFC, Property, Reference, onpeerlost
The onpeerlost event handler of the MozNFC interface handles the peerlost event, which is fired when the MozNFCPeer object received in MozNFC.onpeerready  is no longer available or not in proximinty (e.g. the peer device moves out of range.).
1290 MozNFC.onpeerready API, Firefox OS, MozNFC, NFC, Property, Reference, onpeerready
The onpeerready event handler of the MozNFC interface handles the peerready event, which fires when a suitable peer (an NFC-enabled device) comes into range of the device your NFC application is running on.
1291 MozNFC.ontagfound API, Interface, Non-standard, Property, Reference, Référence(2)
tag : The MozNFCTag object.
1292 MozNFC.ontaglost API, Non-standard, Property, Reference, Référence(2)
The ontaglost event handler of the MozNFC interface handles the taglost event, which is fired when the MozNFCTag object received in MozNFC.ontagfound  is no longer available or not in proximity
1293 MozNFCPeer API, Firefox OS, Interface, MozNFCPeer, NFC, NFCPeer, Reference
The NFC implementation in Gecko follows the NFC Forum specifications.
1294 MozNFCPeer.sendFile() API, Firefox OS, Method, MozNFCPeer, NFC, NFCPeer, Reference, sendFile
The Blob file reference to be transferred.
1295 MozNFCPeer.sendNDEF() API, Firefox OS, Method, MozNFCPeer, NFC, NFCPeer, Reference, sendNDEF
The sendNDEF() method of the MozNFCPeer interface is used
1296 MozNFCTag API, Firefox OS, MozNFCTag, NFC, NFCTag, Reference
MozNFCTag contains the basic functions needed to read, write, and inspect NDEF-compatible NFC Tags.
1297 MozNFCTag.close() API, Firefox OS, Method, MozNFCTag, NFC, NFCTag, Reference, close
The close() method of the MozNFCTag interface closes a current NFC Tag session.
1298 MozNFCTag.connect() API, Firefox OS, Method, MozNFCTag, NFC, NFCTag, Reference, connect
The connect() method of the MozNFCTag interface accepts a technology type to use for subsequent operations.
1299 MozNFCTag.getDetailsNDEF() API, Firefox OS, Method, MozNFCTag, NFC, NFCTag, Reference
The getDetailsNDEF() method of the MozNFCTag interface retrieves basic metadata describing the NDEF tag.
1300 MozNFCTag.makeReadOnlyNDEF() API, Firefox OS, Method, MozNFCTag, NFC, NFCTag, Reference, makeReadOnlyNDEF
The makeReadOnlyNDEF() method of the MozNFCTag interface makes an NDEF Tag readonly. This is a permanent change.
1301 MozNFCTag.readNDEF() API, Firefox OS, Method, MozNFCTag, NFC, NFCTag, Reference, readNDEF
The readNDEF() method of the MozNFCTag interface retrieves the contents of the NDEF stored on the Tag, and returns an array of MozNDEFRecord objects.
1302 MozNFCTag.writeNDEF() API, Firefox OS, Method, MozNFCTag, NFC, NFCTag, Non-standard, Reference, Référence(2), writeNDEF
The writeNDEF() method of the MozNFCTag interface is used to write NDEF data to an NFC tag.
1303 MozNetworkStats API, B2G, Firefox OS, Network Stats, Non-standard, Reference, Référence(2)
The MozNetworkStats object gives access to statistics about the data usage for a given network.
1304 MozNetworkStats.connectionType API, B2G, Firefox OS, Network Stats, Non Standard, Property, Reference, Référence(2)
The connectionType property indicates for which network the data usage statistics are provided.
1305 MozNetworkStats.data API, B2G, DOM, DOM Reference, Firefox OS, Non Standard, Property, Reference, Référence(2)
Editorial review completed.
1306 MozNetworkStats.end API, B2G, Firefox OS, Network Stats, Non Standard, Property, Reference, Référence(2)
The end property is a date equal to the one of the last MozNetworkStatsData objects available within the MozNetworkStats.data property.
1307 MozNetworkStats.start API, B2G, Firefox OS, Network Stats, Non Standard, Property, Reference, Référence(2)
The start property is a date equal to the one of the first MozNetworkStatsData objects available within the MozNetworkStats.data property.
1308 MozNetworkStatsData API, B2G, Firefox OS, Network Stats, Non-standard, Reference, Référence(2)
The MozNetworkStatsData objects represent a chunk of data usage statistics.
1309 MozNetworkStatsData.date API, B2G, Firefox OS, Network Stats, Non Standard, Property, Reference, Référence(2)
The date property provides the date when the data usage statistics chunk was stored.
1310 MozNetworkStatsData.rxBytes API, B2G, Firefox OS, Network Stats, Non Standard, Property, Reference, Référence(2)
The rxBytes property is a number representing the number of bytes received for a given connection. The value is the total number of bytes received for MozNetworkStatsManager.sampleRate seconds at MozNetworkStatsData.date.
1311 MozNetworkStatsData.txBytes API, B2G, Firefox OS, Network Stats, Non Standard, Property, Reference, Référence(2)
The txBytes property is a number representing the number of bytes sent for a given connection. The value is the total number of bytes sent for MozNetworkStatsManager.sampleRate seconds at MozNetworkStatsData.date.
1312 MozNetworkStatsManager API, B2G, Firefox OS, Network Stats, Non-standard, Reference, Référence(2)
The MozNetworkStatsManager interface provides methods and properties to monitor data usage.
1313 MozNetworkStatsManager.addAlarm() API, B2G, Firefox OS, Method, Network Stats, Non-standard, Reference, Référence(2)
The addAlarm method installs an alarm on a network. When total data usage reaches threshold bytes, a "networkstats-alarm" system message is sent to the application, where the optional parameter data must be a cloneable object.
1314 MozNetworkStatsManager.clearAllData() API, B2G, Firefox OS, Method, Network Stats, Non Standard, Obsolete, Reference, Référence(2)
The clearAllData method allows to clear all data usage chunks that were previously stored.
1315 MozNetworkStatsManager.clearAllStats() API, B2G, Firefox OS, Method, Network Stats, Non-standard, Reference, Référence(2)
The clearAllStats method allows to clear all data usage chunks that were previously stored.
1316 MozNetworkStatsManager.clearStats() API, B2G, Firefox OS, Method, Network Stats, Non-standard, Reference, Référence(2)
The clearStats method removes all stats related to the provided network from DB.
1317 MozNetworkStatsManager.connectionTypes API, B2G, Firefox OS, Network Stats, Non Standard, Obsolete, Property, Reference, Référence(2)
The connectionTypes property is a list of all possible monitored connection types by the current device.
1318 MozNetworkStatsManager.getAllAlarms() API, B2G, Firefox OS, Method, Network Stats, Non-standard, Reference, Référence(2)
The getAllAlarms method obtains all alarms for those networks returned by MozNetworkStatsManager.getAvailableNetworks. If a network is provided, it only retrieves the alarms for that network.
1319 MozNetworkStatsManager.getAvailableNetworks() API, B2G, Firefox OS, Method, Network Stats, Non-standard, Reference, Référence(2)
The getAvailableNetworks method returns an Array of available networks that used to be saved in the database.
1320 MozNetworkStatsManager.getAvailableServiceTypes() API, B2G, Firefox OS, Method, Network Stats, Non-standard, Reference, Référence(2)
The getAvailableServiceTypes method returns an Array of available service types that used to be saved in the database.
1321 MozNetworkStatsManager.getNetworkStats() API, B2G, Firefox OS, Method, Network Stats, Non Standard, Obsolete, Reference, Référence(2)
The getNetworkStats method allows to retrieve the data usage statistics for the various connection types.
1322 MozNetworkStatsManager.getSamples() API, B2G, Firefox OS, Method, Non-standard, Reference, Référence(2)
The getSamples method asynchronously queries network interface statistics. The query may be filtered by connection type and date.
1323 MozNetworkStatsManager.maxStorageAge API, B2G, Firefox OS, Network Stats, Non-standard, Property, Reference, Référence(2)
Time in milliseconds recorded by the API until present time for each type of connection. All samples older than maxStorageAge from now are deleted.
1324 MozNetworkStatsManager.maxStorageSamples API, B2G, Firefox OS, Network Stats, Non Standard, Obsolete, Property, Reference, Référence(2)
The maxStorageSamples property indicates the maximum number of date usage chunks stored for each type of connection.
1325 MozNetworkStatsManager.removeAlarms() API, B2G, Firefox OS, Method, Network Stats, Non-standard, Reference, Référence(2)
The removeAlarms method removes all network alarms. If an alarmId is provided, then only that alarm is removed.
1326 MozNetworkStatsManager.sampleRate API, B2G, Firefox OS, Network Stats, Non Standard, Property, Reference, Référence(2)
The sampleRate property indicates the time in seconds between when two data usage chunks are stored.
1327 MozPowerManager API, B2G, Firefox OS, Non-standard, Power Management, Reference, Référence(2)
The MozPowerManager interface allows to explicitly control the part of the device that uses power.
1328 MozPowerManager.addWakeLockListener() API, B2G, Firefox OS, Method, Non Standard, Power Management, Reference, Référence(2)
The MozPowerManager.addWakeLockListener() method is used to register a handler to be called each time a resource changes its lock state.
1329 MozPowerManager.cpuSleepAllowed API, B2G, Firefox OS, Non Standard, Power Management, Property, Reference, Référence(2)
The MozPowerManager.cpuSleepAllowed property determines if the device's CPU will sleep after the screen is disabled. Setting this attribute to false will prevent the device from entering the suspend state.
1330 MozPowerManager.factoryReset() API, B2G, Firefox OS, Method, Non Standard, Power Management, Reference, Référence(2)
The MozPowerManager.factoryReset() method is used to reset the device to its factory state.
1331 MozPowerManager.getWakeLockState() API, B2G, Firefox OS, Method, Non Standard, Power Management, Reference, Référence(2)
The MozPowerManager.getWakeLockState() method is used to retrieve the current lock state of a given resource.
1332 MozPowerManager.powerOff() API, B2G, Firefox OS, Method, Non Standard, Power Management, Reference, Référence(2)
The MozPowerManager.powerOff() method is used to shut off the device.
1333 MozPowerManager.reboot() API, B2G, Firefox OS, Method, Non Standard, Power Management, Reference, Référence(2)
The MozPowerManager.reboot() method is used to completely shut down and boot the device.
1334 MozPowerManager.removeWakeLockListener() API, Firefox OS, Method, Non Standard, Power Management, Reference
The MozPowerManager.removeWakeLockListener() method is used to remove a handler previously set with addWakeLockListener().
1335 MozPowerManager.screenBrightness API, B2G, Firefox OS, Non Standard, Power Management, Property, Reference, Référence(2)
The MozPowerManager.screenBrightness property defines the brightness of the screen's backlight, on a scale from 0 (very dim) to 1 (full brightness).
1336 MozPowerManager.screenEnabled API, B2G, Firefox OS, Non Standard, Power Management, Property, Reference, Référence(2)
The MozPowerManager.screenEnabled property allows to know if the device's screen is currently enabled (true).
1337 MozSettingsEvent API, B2G, Firefox OS, Non-standard, Reference, Référence(2), Settings
The MozSettingsEvent represents a settingchange event, providing information about a change to the value of a setting on the device. It extends the DOM Event interface.
1338 MozSettingsEvent.settingName API, B2G, Firefox OS, Non-standard, Property, Reference, Référence(2), Settings
The settingName property of the MozSettingsEvent specifies the exact name of the setting that has changed. For an up-to-date list of possible setting names, take a look at the Gaia source code.
1339 MozSettingsEvent.settingValue API, B2G, Firefox OS, Non-standard, Property, Reference, Référence(2), Settings
The settingValue property of the MozSettingsEvent object returns the setting's new value.
1340 MozSmsEvent API, DOM, Mobile, Non-standard, WebSMS
The DOM MozSmsEvent represents events related to WebSMS text messages.
1341 MozSmsEvent.message API, B2G, DOM, Firefox OS, Mobile, Property, Reference, Référence(2), WebSMS
The message property is the MozSmsMessage from which the event originated
1342 MozSmsFilter API, DOM, Mobile, Non-standard, WebSMS
The MozSmsFilter interface provides a way to filter out MozSmsMessage or MozMmsMessage objects through the MozMobileMessageManager.getMessages() method.
1343 MozSmsFilter.delivery API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The delivery property represents a possible value to match the messages' delivery property to filter them out.
1344 MozSmsFilter.endDate API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The endDate property represents the newest message's timestamp to filter out messages.
1345 MozSmsFilter.numbers API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The numbers property represents a list of phone numbers to filter out messages.
1346 MozSmsFilter.read API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The read property allows to filter out messages based on their read (true) or unread (false) status.
1347 MozSmsFilter.startDate API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The startDate property represents the oldest message's timestamp to filter out messages.
1348 MozSmsFilter.threadId API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The threadId property represents a thread id to filter out messages.
1349 MozSmsManager API, B2G, DOM, Firefox OS, Mobile, Non-standard, Obsolete, Reference, Référence(2), WebSMS
Provides support for sending and managing SMS messages on a device with WebSMS.
1350 MozSmsMessage API, DOM, Mobile, Non-standard, WebSMS
The DOM MozSmsMessage object represents an SMS text message and has all the information about sender, recipient, body text and date of the message itself.
1351 MozSmsMessage.body API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The body property represents the content of the message.
1352 MozSmsMessage.delivery API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The delivery property represents the current state of the message delivery from the device perspective.
1353 MozSmsMessage.deliveryStatus API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The deliveryStatus property represents the current state of the message delivery from the recipient perspective.
1354 MozSmsMessage.id API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The id property represents the unique id of the message.
1355 MozSmsMessage.messageClass API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The messageClass property provides the class of a given message. SMS Classes are defined within the GSM-SMS specification and represent how a SMS message must be carried and handled on the device.
1356 MozSmsMessage.read API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The read property indicates if the message has been read (true) or not (false).
1357 MozSmsMessage.receiver API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The receiver property provides the phone number of the message's receiver.
1358 MozSmsMessage.sender API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The sender property provides the phone number of the sender of a given message.
1359 MozSmsMessage.threadId API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The threadId property represents the id of the thread the message is part of.
1360 MozSmsMessage.timestamp API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The timestamp property represents the timestamp of a given message.
1361 MozSmsMessage.type API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The type property represents the type of the message. It provides a convenient way to be sure that a message is an SMS.
1362 MozSmsSegmentInfo API, B2G, Firefox OS, Mobile, Non-standard, Reference, Référence(2), WebSMS
The DOM MozSmsSegmentInfo interface provides information about how a string of text will be automatically split into segments. Each segment represents a single SMS of a multi-part SMS message.
1363 MozSmsSegmentInfo.charsAvailableInLastSegment API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The charsAvailableInLastSegment property represents the total number of characters available for the last segment.
1364 MozSmsSegmentInfo.charsPerSegment API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The charPerSegment property represents the total number of characters allowed per segment.
1365 MozSmsSegmentInfo.segments API, B2G, DOM, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), WebSMS
The segments property represents the total number of segments available for the provided text.
1366 MozTimeManager API, B2G, Firefox OS, Non-standard, Time
The MozTimeManager interface is used to set the system time on a device.
1367 MozTimeManager.set() API, B2G, Firefox OS, Method, Non-standard, Time
The set method is used to change the system time.
1368 MozVoicemail API, B2G, Firefox OS, Reference, voicemail
The MozVoicemail interface allows access to the information regarding the voicemail features available through the RIL of a Firefox OS device.
1369 MozVoicemail.getDisplayName() API, B2G, Firefox OS, Method, Reference, voicemail
The getDisplayName method is used to get the display name of the voicemail box dialing number of a specified service.
1370 MozVoicemail.getNumber() API, B2G, Firefox OS, Method, Reference, voicemail
The getNumber method is used to get the voicemail box dialing number of a specified service.
1371 MozVoicemail.getStatus() API, Firefox OS, Method, MozVoicemail, Non-standard, Reference
The getStaus method is used to access the current status of a specified service.
1372 MozVoicemail.onstatuschanged API, B2G, Firefox OS, Property, Reference, voicemail
Specifies an event listener to receive statuschange events. Those events occur when the voicemail status has changed.
1373 MozVoicemailEvent API, B2G, Firefox OS, Reference, voicemail
The MozVoicemailEvent API provides access to the event information when a statuschange event is triggered.
1374 MozVoicemailEvent.status API, B2G, Firefox OS, Property, Reference, voicemail
The status property value provides the voicemail status that caused the event to be triggered.
1375 MozVoicemailStatus API, B2G, Firefox OS, Reference, voicemail
The MozVoicemailStatus API provides access to a voicemail status.
1376 MozVoicemailStatus.hasMessage API, B2G, Firefox OS, Property, Reference, voicemail
The hasMessage property indicates if there are messages available within the voicemail inbox (true) or not (false).
1377 MozVoicemailStatus.messageCount API, B2G, Firefox OS, Property, Reference, voicemail
The messageCount property indicates how many messages are available within the voicemail inbox. However, some voicemail indicators will only specify that messages are waiting, but not the actual number. In that case, the value of messageCount will be -1 to indicate that the number of messages is unknown.
1378 MozVoicemailStatus.returnMessage API, B2G, Firefox OS, Property, Reference, voicemail
The returnMessage property represents a displayable call message for the voicemail status.
1379 MozVoicemailStatus.returnNumber API, B2G, Firefox OS, Property, Reference, voicemail
The returnNumber property represents the return call number for the voicemail status.
1380 MozVoicemailStatus.serviceId API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), voicemail
The serviceId property value provides the ID of the service the voicemail is associated with.
1381 MozWakeLock API, Firefox OS, Interface, Non Standard, Reference, Wake Lock API
The MozWakeLock interface of the Wake Lock API tracks a wake lock set on any resource set on the device.
1382 MozWakeLock.topic API, Firefox OS, MozWakeLock, Non Standard, Property, Read-only, Reference, Wake Lock API
The MozWakeLock.topic read-only property returns a DOMString with the name of the resource locked.
1383 MozWakeLock.unlock() API, Firefox OS, Method, MozWakeLock, Non-standard, Reference, Wake Lock API
The MozWakeLock.unlock() method releases the lock on the resource. If several locks have been taken on the resource, each of them needs to be released individually.
1384 MozWifiConnectionInfoEvent API, B2G, Firefox OS, Non-standard, Reference, WiFi
The MozWifiConnectionInfoEvent interface provides developers with information regarding the state of the current Wifi connection.
1385 MozWifiConnectionInfoEvent.ipAddress API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The ipAddress property value provides the current IP address of the device in the dotted quad format.
1386 MozWifiConnectionInfoEvent.linkSpeed API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The linkSpeed property value provides the current speed of the connection in Mb/s.
1387 MozWifiConnectionInfoEvent.network API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The network property value provides the current network in use when the connection state changes.
1388 MozWifiConnectionInfoEvent.relSignalStrength API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The relSignalStrength property value provides the relative strength of the signal.
1389 MozWifiConnectionInfoEvent.signalStrength API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The signalStrength property value provides the absolute strength of the signal in dBm.
1390 MozWifiP2pGroupOwner API, Firefox OS, Interface, Non-standard, WiFi, Wifi Direct
The MozWifiP2pGroupOwner is an interface that represents the group owner of WiFi Direct connection.
1391 MozWifiP2pManager API, Firefox OS, Interface, Non-standard, WiFi
The MozWifiP2pManager is an interface that allows to control Wi-Fi connection with other computers using Wi-Fi Direct.
1392 MozWifiP2pManager.connect() API, Firefox OS, Method, MozWifiP2pManager, Non-standard, Reference, WiFi
The MozWifiP2pManager.connect() method binds, with a given configuration, to a peer identified by its MAC address and returns a DOMRequest that will report if the connect request has been issued successfully or not (but not about its result).
1393 MozWifiStatusChangeEvent API, Interface, Non-standard, Reference, WiFi
The MozWifiStatusChangeEvent interface provides developers with information regarding the current status of the Wifi connection.
1394 MozWifiStatusChangeEvent.network API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), WiFi
The network property value provides the current network in use when the connection status changes.
1395 MozWifiStatusChangeEvent.status API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), WiFi
The status property value provides the current connection status.
1396 NFC API API, Firefox OS, NFC, Non-standard, Overview, Reference
You access the entire set of NFC functionality through the Navigator.mozNfc property, returning a MozNFC object that further operations can be performed on.
1397 Using the NFC API API, Firefox OS, Guide, NFC
The contacts app uses NFC P2P Functionality for sending and receiving vcards. Look at gaia/apps/communications/contacts/js/nfc.js. In Firefox OS 2.2, there an app called nfc-api-test, which contains all the samples for using NFC API.
1398 Using the NFC emulator API, Emulator, Firefox OS, Guide, NFC
For testing of the NFC API, there is an NFC emulator available. This article details how to set up and use the emulator, and perform some simple tests.
1399 Navigator (Firefox OS extensions) API, Firefox OS, Interface, Navigator, Non-standard
The Navigator interface represents the state and the identity of the user agent. It allows scripts to query it and to register themselves to carry on some activities. This page represents the list of properties and methods added to Navigator on Firefox OS devices. For the list of properties and methods available to any Web sites, consult Navigator.
1400 Navigator.getDataStores() API, Data Store, Data Store API, Firefox OS, Method, Navigator, Reference
The navigator.getDataStores() method provides access to a list of the Data Store API data stores available on the device.
1401 Navigator.getDeviceStorage() API, B2G, Device Storage, Firefox OS, Method, Non-standard, Reference
The getDeviceStorage method is used to access some storage area available on the device.
1402 Navigator.getDeviceStorages() API, B2G, Device Storage, Firefox OS, Method, Non-standard, Reference
The getDeviceStorages method is used to access individual storage areas available on the device. This method return an Array of DeviceStorage objects, one per physical storage area. Each storage area will have a name, retrievable using the .storageName attribute (see below).
1403 Navigator.mozAlarms API, B2G, Firefox OS, Non-standard, Property, WebAPI, alarm
Returns a MozAlarmsManager object you can use to schedule notifications or applications to be started at a specific time.
1404 Navigator.mozApps API, Apps, Apps API, Non-standard, Property
Returns an Apps object you can use to install, manage, and control Open Web Apps in the browser.
1405 Navigator.mozAudioChannelManager API, AudioChannels, Device API, Firefox OS, Navigator, Property, Reference
The navigator.mozAudioChannelManager object provides access to the mozAudioChannelManager interface, which is used to manage your Firefox OS device's audio channels, including setting what channel's volume to affect when the volume buttons are pressed inside a particular app.
1406 Navigator.mozCamera API, DOM, Firefox OS, Gecko DOM Reference, Graphics, Property, WebAPI
This API has not been implemented as of Firefox OS 2.2. You probably actually want navigator.mozCameras.
1407 Navigator.mozCameras API, DOM, Firefox OS, Gecko DOM Reference, Graphics, Non Standard, Property, WebAPI
Returns a CameraManager object you can use to access the cameras available on the user's device.
1408 Navigator.mozContacts API, Contact, Firefox OS, Property, Reference
Return a ContactManager to access and manage all the contacts available on the device.
1409 Navigator.mozFMRadio API, Non-standard, Property
Returns a FMRadio object you can use to access to the device FM radio.
1410 Navigator.mozHasPendingMessage() API, B2G, Firefox OS, Method, Reference, Web Activities, WebAPI, alarm
This method is used to know if there are pending messages of a given type (true) ot not (false).
1411 Navigator.mozMobileConnections API, Firefox OS, Non-standard, Property, Reference, mobile connection, mozMobileConnection
The navigator.mozMobileConnections property returns an array of MozMobileConnection objects, which you can use to get information about the current mobile voice and data connection states of the device.
1412 Navigator.mozMobileMessage API, DOM, Mobile, Non Standard, Property, Reference, WebSMS
Returns a MozMobileMessageManager object you can use to receive and send MMS and SMS messages.
1413 Navigator.mozNetworkStats API, Firefox OS, Interface, Network Stats, Non-standard, Property, Reference
The MozNetworkStatsManager interface provides methods and properties to monitor data usage.
1414 Navigator.mozNfc API, Device API, Firefox OS, NFC API, Property, Reference, Web NFC
The mozNfc property returns a MozNFC object that can be used to access Firefox OS's NFC functionality: Near Field Communication (NFC) is a short range radio technology used to exchange data and tags between mobile devices by tapping them together or moving them close to each other.
1415 Navigator.mozPermissionSettings API, B2G, Firefox OS, Non Standard, Permissions, Property, Reference, Référence(2)
Returns a PermissionSettings object you can use to get and set permissions of apps on the Firefox OS platform.
1416 Navigator.mozPower API, B2G, Firefox OS, Non-standard, Power Management, Property
Returns a PowerManager object you can use to manage the power usage of the device.
1417 Navigator.mozSetMessageHandler() API, Firefox OS, Method, Reference, Web Activities, alarm
This method is used to allow applications to register a function handler that can receive — and react to — a message from the system.
1418 Navigator.mozSettings API, Firefox OS, Non-standard, Property, Reference, Settings
Returns a SettingsManager object you can use to access and change the device's settings.
1419 Navigator.mozSms API, Firefox OS, Mobile, Obsolete, Property, WebSMS
Returns an SmsManager object you can use to receive and send SMS messages.
1420 Navigator.mozTCPSocket API, Firefox OS, Non-standard, Property, Reference, TCP Socket
Returns a TCPSocket object you can use to open other sockets.
1421 Navigator.mozTelephony API, Certified, Firefox OS, Mobile, Non-standard, Property, Telephony
Returns a Telephony object you can use to initiate and control telephone calls from the browser.
1422 Navigator.mozVoicemail API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), voicemail
Returns a MozVoicemail object you can use to handle the access to the voicemail functionality from the RIL of a Firefox OS phone.
1423 Navigator.mozWifiManager API, Firefox OS, Non Standard, Property, Reference, Référence(2), WiFi
Returns a WifiManager object you can use to manage the device WiFi connection.
1424 Navigator.push API, Firefox OS, NeedsBrowserCompatibility, Non-standard, Property, Push Manager API, Read-only, Reference, Référence(2), Simple Push API
The Navigator.push read-only property is a PushManager object providing a way to receive notifications from third party servers. These are real-time notifications provided by external services directly to installed apps. This implements the SimplePush API that does not require sending real data on those notifications. Also, you can see this documentation for additional details, a guide to using the API, and sample code.
1425 Navigator.removeIdleObserver() API, Firefox OS, Idle, Method, Non-standard, Reference
This method is used to remove an idle observer previously set with navigator.addIdleObserver.
1426 Network Stats API API, Firefox OS, Network Stats, Non Standard, Reference
The Network Stats API allows you to monitor data usage and expose this information to certified applications.
1427 Network Stats 2.0 proposal
The Network Stats API allows to monitor data usage (system/per-app), exposes this data to certified applications and allows to set and manage data usage alarms. Data usage alarms can be set at a desired threshold for any available network interface.
1428 PermissionSettings API, B2G, Firefox OS, Non Standard, Permissions, Reference, Référence(2)
The PermissionSettings interface provides ways to let the user manage all the permissions requested by all apps on a Firefox OS device.
1429 PermissionSettings.get() API, B2G, Firefox OS, Method, Non Standard, Permissions, Reference, Référence(2)
The get method allows to retrieve the current status of a given permission for a given app.
1430 PermissionSettings.isExplicit() API, B2G, Firefox OS, Method, Non Standard, Permissions, Reference, Référence(2)
The isExplicit method allows to know if the setting is explicit (true) or implicit (false).
1431 PermissionSettings.remove() API, B2G, Firefox OS, Method, Non Standard, Permissions, Reference, Référence(2)
The remove method allows to simply reset a permission for an app which is running inside the browser app.
1432 PermissionSettings.set() API, B2G, Firefox OS, Method, Non Standard, Permissions, Reference, Référence(2)
The set method allows to change a given permission for a given app.
1433 Permissions API (Firefox OS) API, Firefox OS, Non-standard, Permissions, Reference
The Permissions API is used to display and let the user manage all the permissions requested by apps. With this API, an application can read the permissions of another application and is also able to change those permissions.
1434 Power Management API API, Firefox OS, Guide, Non Standard, Power Management
The Power Management API provides tools to manage a device's power consumption.
1435 Settings API API, B2G, Firefox OS, Non-standard, Reference, Settings API
The Settings API is a way to access, change, and monitor changes to any device's settings. Because device settings can contain a lot of sensitive information that can jeopardize the system, only certified applications can use this API.
1436 SettingsLock API, B2G, Firefox OS, Non-standard, Settings
The SettingsLock interface represents a lock on settings. it allows a script to modify settings asynchronously, but in a safe way: ordering is guaranteed and the no other script will modify the settings until the modification are done (the next lock objects will start processing after it has been closed).
1437 SettingsLock.clear() API, B2G, Firefox OS, Method, Non-standard, Reference, Référence(2), Settings
This method clears the queue of SettingsLock objects.
1438 SettingsLock.closed API, B2G, Firefox OS, Non-standard, Property, Reference, Référence(2), Settings
The closed property indicates whether or not the settings lock is closed.
1439 SettingsLock.get() API, B2G, Firefox OS, Method, Non-standard, Reference, Référence(2), Settings
This method fetches the value of a specified setting.
1440 SettingsLock.set() API, B2G, Firefox OS, Method, Non-standard, Reference, Référence(2), Settings
This method is changes the value of one or more given settings.
1441 SettingsManager API, B2G, Firefox OS, Non-standard, Settings
Provides access to the device's settings.
1442 SettingsManager.addObserver() API, B2G, Firefox OS, Method, Non-standard, Reference, Référence(2), Settings
Sets up a callback function to be notified when a specific setting's value changes.
1443 SettingsManager.createLock() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Settings
This method returns a SettingsLock object. This object is used to access and modify all the settings asynchronously and safely.
1444 SettingsManager.onsettingchange API, B2G, Firefox OS, Non-standard, Property, Reference, Référence(2), Settings
The onsettingchange property lets you set an event handler to be called for all setting changes.
1445 SettingsManager.removeObserver() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), Settings
This method is used to remove a callback function that has been added with SettingsManager.addObserver().
1446 TCP Socket API API, Firefox OS, Guide, Non Standard, TCP Socket, WebAPI
The TCPSocket API offers a whole API to open and use a TCP connection. This allows app makers to implement any protocol available on top of TCP such as IMAP, IRC, POP, HTTP, etc., or even build their own to sustain any specific needs they could have.
1447 TCPServerSocket API, B2G, Firefox OS, Non Standard, Reference, Référence(2), TCP Socket
The TCPServerSocket interface provides an API to handle a persistent server that will listen for incoming connections on a given port.
1448 TCPServerSocket.close() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), TCP Socket
The close method cleanly closes the server socket.
1449 TCPServerSocket.localPort API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The localPort property returns the port number listened to by the server socket.
1450 TCPServerSocket.onconnect API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The onconnect property is used to specify a callback handler to deal with new incoming connections. This callback is called each time a client connection is accepted.
1451 TCPServerSocket.onerror API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The onerror property is used to specify a callback handler to deal with errors from the server socket. This callback is called each time the listen of a server socket is aborted.
1452 TCPSocket API, B2G, Firefox OS, Non-standard, Reference, TCP Socket
The TCPSocket interface provides access to a raw TCP socket.
1453 TCPSocket.binaryType API, B2G, DOM, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The binaryType indicates the type of data expected by the send() method on this socket.
1454 TCPSocket.bufferedAmount API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The bufferedAmount represents the number of bytes which have previously been buffered by calls to the send() method on this socket.
1455 TCPSocket.close() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), TCP Socket
The close method cleanly closes the connection.
1456 TCPSocket.host API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The host property returns the host reachable by the socket.
1457 TCPSocket.listen() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), TCP Socket
The listen method is used to listen on a given port on the device.
1458 TCPSocket.onclose API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The onclose property is used to specify an event handler to receive close events. Those events are triggered when the server or the client (with the close() method) closes the connection.
1459 TCPSocket.ondata API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The ondata property is used to specify an event handler to receive data events. Those events are triggered each time data is available from the server.
1460 TCPSocket.ondrain API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The ondrain property is used to specify an event handler to receive drain events. Those events are triggered each time buffered data are flushed to the network.
1461 TCPSocket.onerror API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The onerror property is used to specify an event handler to receive error events. Those events are triggered each time an error occurs.
1462 TCPSocket.onopen API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The onopen property is used to specify an event handler to receive open events. Those events are triggered each time the connection to the server has been established.
1463 TCPSocket.open() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), TCP Socket
The open method is used to open a TCP connection to a given server on a given port.
1464 TCPSocket.port API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The port property returns the port number used by the socket.
1465 TCPSocket.readyState API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The readyState property indicates the current state of the socket.
1466 TCPSocket.resume() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), TCP Socket
The resume method resumes reading incoming data and allows the data event to be triggered again.
1467 TCPSocket.send() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), TCP Socket
The send method is used to buffer data to be sent to the server.
1468 TCPSocket.ssl API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), TCP Socket
The ssl property allows to know if the socket is an SSL socket (true) or not (false).
1469 TCPSocket.suspend() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), TCP Socket
The suspend method pauses reading incoming data and prevents the data event from being triggered until the resume() method is called.
1470 TCPSocket.upgradeToSecure() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), TCP Socket
The upgradeToSecure method allows turning a TCP non secured connection into a secured one.
1471 Telephony API, B2G, Certified, DOM, DOM Reference, Firefox OS, Interface, Mobile, Non-standard, Reference, Référence(2), Telephony, WebAPI
The Telephony interface of the Web Telephony API provides support for dialing, answering, and managing phone calls on a device with telephony support.
1472 Telephony.active API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Référence(2), Telephony, WebAPI, active
The active read-only property of the Telephony interface returns a TelephonyCall object indicating the call that is currently active. The active call is the one that is currently receiving input from the microphone, or tones generated by calls to the Telephony.startTone() method.
1473 Telephony.calls API, B2G, Certified, DOM, Firefox OS, Mobile, Non-standard, Property, Reference, Référence(2), Telephony, WebAPI, calls
The calls read-only property of the Telephony interface returns a list of TelephonyCall objects representing the currently connected telephone calls.
1474 Telephony.conferenceGroup API, B2G, Certified, Firefox OS, Mobile, Non-standard, Property, Reference, Telephony, conferenceGroup
The conferenceGroup read-only property of the Telephony interface returns a TelephonyCallGroup object, allowing programmatic control over a multi-person call/conference call.
1475 Telephony.dial() API, B2G, Certified, DOM, Firefox OS, Method, Mobile, Non-standard, Reference, Référence(2), Telephony, WebAPI, dial
The dial() method of the Telephony interface dials a phone number and returns a new TelephonyCall object representing the new call.
1476 Telephony.dialEmergency() API, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Réference(3), Référence(2), Telephony, dialEmergency
The dialEmergency() method of the Telephony interface dials an emergency phone number and returns a new TelephonyCall object representing the new call.
1477 Telephony.muted API, B2G, Certified, DOM, Firefox OS, Mobile, Non-standard, Property, Reference, Référence(2), Telephony, WebAPI, muted
The muted property of the Telephony interface indicates whether or not the microphone is muted for the purposes of telephony.
1478 Telephony.oncallschanged API, B2G, Certified, DOM, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, WebAPI, oncallschanged
The oncallschanged property of the Telephony interface specifies an event listener to receive callschanged events. These events occur when the list of ongoing calls, as indicated by Telephony.calls, changes.
1479 Telephony.onincoming API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, WebAPI, onincoming
The onincoming property of the Telephony interface specifies an event listener to receive incoming events; these indicate when a new call is arriving.
1480 Telephony.onready API, B2G, Certified, Event, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, onready
The onready property of the Telephony interface specifies an event listener to receive ready events. These events occur when the telephony object is initialized.
1481 Telephony.onremoteheld API, B2G, Certified, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, onremoteheld
The onremoteheld property of the Telephony interface specifies an event listener to receive remoteheld events. These events occur whenever a remote party (e.g. the person you called) puts the call on hold..
1482 Telephony.onremoteresumed API, B2G, Certified, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, onremoteresumed
The onremoteresumed property of the Telephony interface specifies an event listener to receive remoteresumed events. These events occur when when a remote party (e.g. the person you called) resumes a call previously put on hold.
1483 Telephony.ownAudioChannel() API, B2G, Certified, DOM, DOM Reference, Experimental, Firefox OS, Method, Non-standard, Reference, Telephony
The ownAudioChannel() method of the Telephony interface designates the calling app as the owner of the telephony calls from the AudioChannel policy.
1484 Telephony.ready API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Ready, Reference, Réference(3), Référence(2), Telephony
The ready read-only property of the Telephony interface provides an asynchronous notification that the object is initialized.
1485 Telephony.sendTones() API, B2G, Certified, DOM, Firefox OS, Method, Mobile, Non-standard, Reference, Réference(3), Référence(2), Telephony, sendTones
The sendTones() method of the Telephony Interface generates multiple DTMF tones, with a specified duration for each tone, and an optional delay before generation starts. The tones are sent to the currently active call.
1486 Telephony.speakerEnabled API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Référence(2), Telephony, WebAPI, speakerEnabled
The speakerEnabled property of the Telephony interface indicates whether or not the speakerphone functionality of the phone is enabled.
1487 Telephony.startTone() API, B2G, DOM, DOM Reference, Firefox OS, Method, Mobile, Non Standard, Reference, Réference(3), Référence(2), Telephony, WebAPI
The startTone() method of the Telephony Interface begins generating the tone for the specified DTMF character. The tone is sent to the currently active call, and continues to sound until a corresponding call to Telephony.stopTone().
1488 Telephony.stopTone() API, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Réference(3), Référence(2), Telephony, WebAPI, stopTone
The startTone() method of the Telephony Interface stops transmitting the currently-playing DTMF tone started by a prior call to Telephony.startTone().
1489 TelephonyCall API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Reference, Réference(3), Référence(2), Telephony, WebAPI
The TelephonyCall interface of the Web Telephony API represents one telephone call, providing information about the call and offering mechanisms for controlling it and detecting changes to its status.
1490 TelephonyCall.answer() API, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, answer
The answer() method of the TelephonyCall interface answers an incoming call.
1491 TelephonyCall.disconnectedReason API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall
The disconnectedReason read-only property of the TelephonyCall interface indicates the reason why the call was disconnected (either because there was an error somewhere, or the call ended or wasn't answered.)
1492 TelephonyCall.emergency API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, emergency
The emergency read-only property of the TelephonyCall interface indicates whether the current telephone number is an emergency number.
1493 TelephonyCall.error API, Certified, DOM, DOM Reference, Error, Mobile, Non-standard, Obsolete, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall
The error read-only property of the TelephonyCall interface indicates a returned error when a call does connect successfully.
1494 TelephonyCall.group API, B2G, Certified, DOM, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, group
The group read-only property of the TelephonyCall interface indicates the TelephonyCallGroup (multi-person call) the call belongs to, if any.
1495 TelephonyCall.hangUp() API, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, hangUp
The hangUp() method of the TelephonyCall interface hangs up an ongoing call.
1496 TelephonyCall.hold() API, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Référence(2), Telephony, TelephonyCall, WebAPI, hold
The hold() method of the TelephonyCall interface is used to put a call on hold.
1497 TelephonyCall.id API, B2G, Certified, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, id
The id read-only property of the TelephonyCall interface indicates the caller id (usually the telephone number) associated with the current phone call.
1498 TelephonyCall.mergeable API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, mergeable
The mergeable read-only property of the TelephonyCall interface indicates whether the current call can be added into a TelephonyCallGroup (multi-person call.)
1499 TelephonyCall.number API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Number, Obsolete, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI
The number read-only property of the TelephonyCall interface indicates the telephone number associated with the current phone call. Replaced by TelephonyCall.id in Firefox OS 2.0+.
1500 TelephonyCall.onalerting API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, onalerting
The onalerting event handler of the TelephonyCall interface is a reference to a function to be called to handle the Telephony API's alerting event.
1501 TelephonyCall.onbusy API, B2G, DOM, DOM Reference, Firefox OS, Mobile, Non Standard, Property, Reference, Référence(2), Telephony, WebAPI
A reference to a function to be called to handle the Telephony API's busy event. This event occurs when the call receives a busy signal from the phone network. The event handler is called with a CallEvent as its only parameter.
1502 TelephonyCall.onconnected API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, onconnected
The onconnected event handler of the TelephonyCall interface is a reference to a function to be called to handle the Telephony API's connected event.
1503 TelephonyCall.onconnecting API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non Standard, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, onconnecting
The onconnecting event handler of the TelephonyCall interface is a reference to a function to be called to handle the Telephony API's connecting event.
1504 TelephonyCall.ondialing API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, ondialing
The ondialing event handler of the TelephonyCall interface is a reference to a function to be called to handle the Telephony API's dialing event.
1505 TelephonyCall.ondisconnected API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, ondisconnected
The ondisconnected event handler of the TelephonyCall interface is a reference to a function to be called to handle the Telephony API's disconnected event.
1506 TelephonyCall.ondisconnecting API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, ondisconnecting
The ondisconnecting event handler of the TelephonyCall interface is a reference to a function to be called to handle the Telephony API's disconnecting event.
1507 TelephonyCall.onerror API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Obsolete, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, onerror
The onerror event handler of the TelephonyCall interface is a reference to a function to be called when the call does not succeed due to error. This is being obsoleted as it is very similar to TelephonyCall.ondisconnected, but semantically more narrow and therefore not as useful.
1508 TelephonyCall.ongroupchange API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, ongroupchange
The ongroupchange event handler of the TelephonyCall interface is a reference to a function to call when the call's TelephonyCallGroup (and therefore TelephonyCall.group property) changes.
1509 TelephonyCall.onheld API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, onheld
The onheld event handler of the TelephonyCall interface is a reference to a function to be called when the current call has been held.
1510 TelephonyCall.onholding API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, onholding
The onholding event handler of the TelephonyCall interface is a reference to a function to be called when an instruction has been issued to put the call on hold (by TelephonyCall.hold().)
1511 TelephonyCall.onincoming API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, onincoming
The onincoming() property of the TelephonyCall interface is a reference to a function to be called to handle the Telephony API's incoming event.
1512 TelephonyCall.onresuming API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, onresuming
The onconnected event handler of the TelephonyCall interface is a reference to a function to call when a previously held call resumes.
1513 TelephonyCall.onstatechange API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, onstatechange
The onstatechange event handler of the TelephonyCall interface is a reference to a function to be called to handle the Telephony API's statechange event.
1514 TelephonyCall.resume() API, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Référence(2), Telephony, TelephonyCall, WebAPI, resume
The resume() method of the TelephonyCall interface is used to resume a call that was previously put on hold.
1515 TelephonyCall.secondId API, B2G, Certified, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, secondId
The secondId read-only property of the TelephonyCall interface indicates the second caller's id (usually their phone number) in the case of a CDMA network where you have a 2nd waiting call.
1516 TelephonyCall.secondNumber API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Obsolete, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, secondNumber
The secondNumber read-only property of the TelephonyCall interface indicates the second phone number in the case of a CDMA network where you have a 2nd waiting call. Replaced by TelephonyCall.SecondId in Firefox OS 2.0+.
1517 TelephonyCall.serviceId API, B2G, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, serviceId
The serviceId read-only property of the TelephonyCall interface indicates which telephony service a call comes from.
1518 TelephonyCall.state API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, WebAPI, state
The state read-only property of the TelephonyCall interface returns the current state of the phone call.
1519 TelephonyCall.switchable API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCall, switchable
The switchable read-only property of the TelephonyCall interface indicates whether the current call can be switched between "connected" and "held" states.
1520 TelephonyCallGroup API, B2G, Certified, Firefox OS, Interface, Mobile, Non-standard, Reference, Réference(3), Référence(2), Telephony, TelephonyCallGroup
The TelephonyCallGroup interface of the Web Telephony API represents a multi-person/conference call, providing functions to allow callers to be added and removed from the conference call, hanging up of the entire call, and more.
1521 TelephonyCallGroup.add() API, Add, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Réference(3), Référence(2), Telephony, TelephonyCallGroup
The add() method of the TelephonyCallGroup interface adds a specific TelephonyCall object to the call group.
1522 TelephonyCallGroup.calls API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Telephony, TelephonyCallGroup, calls
The calls read-only property of the TelephonyCallGroup interface returns an array containing all the TelephonyCall objects representing the calls currently added to the call group.
1523 TelephonyCallGroup.hangUp() API, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Telephony, TelephonyCallGroup, hangUp
The hangUp() method of the TelephonyCallGroup interface hangs up the entire conference call, i.e. every TelephonyCall object within it.
1524 TelephonyCallGroup.hold() API, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Telephony, TelephonyCallGroup, hold
The hold() method of the TelephonyCallGroup interface puts the entire conference call on hold, i.e. every TelephonyCall object within it.
1525 TelephonyCallGroup.oncallschanged API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Telephony, TelephonyCallGroup, events, oncallschanged
The oncallschanged property of the Telephony interface specifies an event listener to receive callschanged events. These events occur when the list of ongoing calls, as indicated by TelephonyCallGroup.calls, changes.
1526 TelephonyCallGroup.onconnected API, B2G, Certified, Firefox OS, Mobile, Non-standard, Property, Reference, Telephony, TelephonyCallGroup, events, onconnected
The onconnected property of the Telephony interface specifies an event listener to receive connected events. These events occur when the phone is connected to the call group.
1527 TelephonyCallGroup.onerror API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Telephony, TelephonyCallGroup, events, onerror
The onerror property of the Telephony interface specifies an event listener to receive error events. These events occur when an error occurs with the call group.
1528 TelephonyCallGroup.onheld API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Telephony, TelephonyCallGroup, events, onheld
The onheld property of the Telephony interface specifies an event listener to receive held events. These events occur when the call group is successfully put on hold.
1529 TelephonyCallGroup.onholding API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Telephony, TelephonyCallGroup, onholding
The onholding property of the Telephony interface specifies an event listener to receive holding events. These events occur when an action is taken to put the call group on hold (i.e. the TelephonyCallGroup.hold() method is called.)
1530 TelephonyCallGroup.onresuming API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Telephony, TelephonyCallGroup, onresuming
The onresuming property of the Telephony interface specifies an event listener to receive resuming events. These events occur when an action is taken to resume a previously held call group (i.e. the TelephonyCallGroup.resume() method is called.)
1531 TelephonyCallGroup.onstatechange API, B2G, Certified, DOM, DOM Reference, Firefox OS, Mobile, Non-standard, Property, Reference, Telephony, TelephonyCallGroup, onstatechange
The onstatechange property of the Telephony interface specifies an event listener to receive statechange events. These events occur when the call group's state (i.e. the value of Telephony.state) changes.
1532 TelephonyCallGroup.remove() API, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Réference(3), Référence(2), Telephony, TelephonyCallGroup, remove
The remove() method of the TelephonyCallGroup interface removes a specific TelephonyCall object from the call group.
1533 TelephonyCallGroup.resume() API, B2G, Certified, DOM, DOM Reference, Firefox OS, Method, Mobile, Non-standard, Reference, Telephony, TelephonyCallGroup, resume
The resume() method of the TelephonyCallGroup interface resumes a previously held conference call.
1534 TelephonyCallGroup.state API, B2G, Certified, Firefox OS, Mobile, Non-standard, Property, Reference, Réference(3), Référence(2), Telephony, TelephonyCallGroup, state
The state read-only property of the TelephonyCallGroup interface returns a DOMString indicating the state of the call group.
1535 Time and Clock API API, Firefox OS, Non-standard, Reference, Time
The Time and Clock API is a simple way to change the system time.
1536 UDPSocket
No summary!
1537 Wake Lock API Firefox OS, Non-standard, Overview, Wake Lock API
The Wake Lock API allows to take locks on any resource of the device. This means that you can prevent that resource from becoming unavailable as long as your app holds a lock for that resource. For example, a voice recording app can obtain a lock to keep the screen on during recording so that it can give prover visual feedback to the user that recording is progressing.
1538 Keeping the geolocation on when the application is invisible Firefox OS, Guide, Non-standard, Wake Lock API, Web
A Firefox OS application may want to keep the Geolocation service running even when invisible. This can be done by request a MozWakeLock and using with watchPosition() when you want to keep your invisible application continuing to use GPS.
1539 WebFM API API, B2G, Firefox OS, Non-standard, Reference, Référence(2), WebAPI, WebFM
The WebFM API provides access to the device FM radio. It allows turning the radio on/off and switching among radio stations. This API is available through the navigator.mozFMRadio property which is a FMRadio object.
1540 WiFi Information API API, B2G, Firefox OS, Non Standard, Reference, Référence(2), WebAPI, WiFi
The WiFi Information API is specifically made to handle WiFi connections on a Firefox OS device. It provides an interface to find available WiFi networks and handle connecting and disconnecting the device from those networks.
1541 WifiManager API, Firefox OS, Reference, WiFi
The WifiManager API provides access to the wifi device capability.
1542 WifiManager.associate() API, B2G, Firefox OS, Method, Non-standard, Reference, WiFi
The associate method is used to associate (and connect) a device with a given WiFi network.
1543 WifiManager.connection API, B2G, Firefox OS, Non Standard, Property, Reference, WiFi
The connection property value provides the status and current network in used by the WiFi adapter.
1544 WifiManager.connectionInformation API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The connectionInformation property value provides extra information about the current connection.
1545 WifiManager.enabled API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The enabled property value indicates whether the wifi is turned on (true) or off (false).
1546 WifiManager.forget() API, B2G, Firefox OS, Method, Non-standard, Reference, WiFi
The forget method is used to make a device forget about a given WiFi network. This will remove the network from the list of known networks and will remove all the configuration settings related to that network.
1547 WifiManager.getKnownNetworks() API, B2G, Firefox OS, Method, Non-standard, Reference, WiFi
The getKnownNetworks method is used to retrieve the whole list of WiFi networks the device knows, regardless if they are available or not in the area surrounding the device. A known network is any network the device previously associated with by using the WifiManager.associate() method.
1548 WifiManager.getNetworks() API, B2G, Firefox OS, Method, Non-standard, Reference, WiFi
The getNetworks method is used to retrieve the whole list of available WiFi networks surrounding the device.
1549 WifiManager.macAddress API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The macAddress property value provides the wifi adapter's MAC address.
1550 WifiManager.onconnectioninfoupdate API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
Specifies an event listener to receive connectioninfoupdate events. Those events occur when the device's WiFi connection information changes.
1551 WifiManager.ondisabled API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
Specifies an event listener to receive disabled events. Those events occur when the device's WiFi is turned off.
1552 WifiManager.onenabled API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
Specifies an event listener to receive enabled events. Those events occur when the device's WiFi is turned on.
1553 WifiManager.onstatuschange API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
Specifies an event listener to receive statuschange events. Those events occur when the device's WiFi connection status changes.
1554 WifiManager.setPowerSavingMode() API, B2G, Firefox OS, Method, Reference, WiFi
The setPowerSavingMode method is used to have the WiFi adapter enter or exit the power saving mode.
1555 WifiManager.setStaticIpMode() API, B2G, Firefox OS, Method, Non-standard, Reference, WiFi
The setStaticIpMod method is used to define a static or dynamic (if the network has a DHCP server) IP address for the device on a given network.
1556 WifiManager.wps() API, B2G, Firefox OS, Method, Non-standard, Reference, WiFi
The wps method is used to handle a WPS connection with networks supporting that feature.
1557 Window (Firefox OS extensions) API, Firefox OS, Interface, Navigator, Non-standard
The Window interface represents a window containing a DOM document. This page represents the list of properties and methods added to Window on Firefox OS devices. For the list of properties and methods available to any Web sites, consult Window.
1558 Window.onmoztimechange API, B2G, DOM, DOM Reference, Firefox OS, Non-standard, Property, Reference, Référence(2), Time, WebAPI
An event handler for the moztimechange events sent to the window.
1559 B2G OS add-ons Add-ons, Apps, Extensions, Firefox OS, customizations
You should follow the below steps to get set up to start developing extensions.
1560 Developing B2G OS add-ons Add-ons, Apps, CSS, Extensions, Firefox OS, JavaScript, Manifest, cuztomizations
Add-ons are a well-known concept in the world of web browsers, and this concept has been added to Firefox OS too. A single Firefox OS add-on can extend just one app, several, or all of them, including the system app itself. This article provides a guide to creating your own Firefox OS add-ons, as well as hints, tips, and other information to be aware of.
1561 B2G OS architecture Architecture, B2G OS, Guide, IPC, IPDL
This article is a high-level overview of the architecture of the B2G OS platform, introducing key concepts and explaining how its components interact at a basic level.
1562 B2G OS build prerequisites B2G OS, Build documentation, Build prerequisites, Mobile, Mobile OS, build b2g os, how to build b2g os
Before obtaining the code to build B2G OS, even if you are simply trying to build Gaia, you need a properly configured build system — this page shows you how. You can currently build on 64-bit Linux distributions and OS X.
1563 B2G OS phone guide Firefox OS, Landing
This section contains developer information relevant to specific phones that run B2G OS — both developer and consumer devices.
1564 Alcatel One Touch Fire Alcatel One Touch Fire, Firefox OS, Phone, consumer
The device's system image is locked, so you can only update the software when the network operator releases an OTA update.
1565 Alcatel One Touch Fire C Alcatel Firefox Phone, Alcatel One Touch Fire, Firefox OS, One Touch Fire C, Phone, consumer
The device's system image is locked, so you can only update the software when the network operator releases an OTA update. The device system image is based on Firefox OS 1.2.
1566 Alcatel One Touch Fire E Alcatel Mobiles, Alcatel One Touch Fire E, Firefox OS, Specifications of Alcatel One Touch Fire E
No summary!
1567 Alcatel One Touch Pixi 3 (3.5) Firefox OS, Landing, Phones
No summary!
1568 Alcatel Onetouch Fire C 4020D Alcatel, Firefox OS, Onetouch Fire C, Phone, Tarako devices, consumer
You can find more of the device specifications listed on our Phone and device specs page.
1569 Best practices for open reference devices Best practices, Devices, Firefox OS, Phones, reference device
The following article aims to provide a set of best practices that we believe should come highly recommended for any widely available open reference devices. All of the recent Firefox OS reference devices have followed these practices, including the forthcoming Flame.
1570 Cherry Mobile Ace Ace, Cherry Mobile, Firefox OS, Mozilla, Phone, consumer, tarako
The Cherry Mobile Ace is available through local retailers and online shopping sites.
1571 Fairphone B2G, Device, Fair trade, Fairphone, Firefox OS, Gaia, Guide, Phone
The Fairphone is a fair-economy smartphone targeting sourcing, production, distribution, self-repairing and recycling of electronics. It's not completely FOSS hardware, but it supports the ideal of giving back at least some hardware control to its users.
1572 Firefox OS device features Buttons and controls, Firefox OS, Hardware, Requirements
A basic Firefox OS device has a small number of physical hardware buttons:
1573 Flame Firefox OS, Flame, developer phone, official reference device
The Flame device is the official reference device for developing, testing, and debugging Firefox OS and open web apps. This guide provides basic information about its hardware specifications as well as practical documentation specific to experimenting with, developing for, and testing of software compatible with this phone.
1574 Initial setup Firefox OS, Flame, developer phone, reference device
You need to install ADB and Fastboot on your computer — these are applications that allow you to interact with your phone from your computer when the two are connected via the phone's USB charger cable. They are needed for Flashing your phone to a new version of Firefox OS, recovering from an unresponsive state, pushing apps to your phone, etc.
1575 Updating your Flame Firefox OS, Flame, developer phone, reference device
There is a lot of information in this article, so here we've included a quick start guide that takes you through the steps you need quickly to get your device updated. You can refer to the below sections for more detail if it is needed.
1576 Fx0 Firefox OS, Fx0, KDDI, Phone, consumer
You can find more of the device specifications listed on our Phone and device specs page.
1577 Geeksphone Building, Firefox, Firefox OS, Gaia, Geeksphone, Guide, flash firefox OS, tweaking
Developer Preview editions of the Firefox OS phone are now becoming widely available to the community, mainly through Geeksphone. Since these are for developers, naturally we want to encourage you to tinker and play with them as much as possible! In this article we cover some basic tips on how to keep your phone up to date and how to tweak the system Gaia applications.
1578 Geeksphone FAQ Firefox OS, Geeksphone, Keon, Peak, Revolution
Geeksphones are developer preview devices produced by Madrid-based Geeksphone in conjuction with Telefonica and Mozilla. Early access to hardware allows developers to test the capabilities of Firefox OS in a real environment with a mobile network and true hardware characteristics like the accelerometer and camera that are not easily tested on the Firefox OS Simulator. This FAQ should answer any questions you have about them.
1579 Huawei Y300 II Firefox OS, Huawei Y300II, Phone, consumer
The device's system image is locked, so you can only update the software when the network operator releases an OTA update. The device system image is based on Firefox OS 1.1.
1580 Intex Cloud FX Cloud FX, Firefox OS, Intex, Phone, Tarako devices, consumer
You can find more of the device specifications listed on our Phone and device specs page.
1581 LG fireweb Firefox OS, Fireweb, Phone, consumer, lg
You can find more of the device specifications listed on our Phone and device specs page.
1582 Nexus 4 B2G, Firefox OS, Installing, Nexus 4, flashing
This article provides information about using Firefox OS on a Nexus 4, including Flashing Firefox OS onto your device.
1583 Nexus 5 B2G, Firefox OS, Installing, Nexus 5, flashing
This article provides information about using Firefox OS on a Nexus 5, including Flashing Firefox OS onto your device.
1584 Orange Klif Firefox OS, Guide, Orange KLIF, Phone, consumer
You can find more of the device specifications listed on the Features and Specs Page.
1585 Phone and device specs Device, Firefox OS, Guide, Mobile, Phone, Specs
This article provides information about Firefox OS devices including specific hardware specs, codenames, default installed Firefox OS versions, and more.
1586 Spice Fire One MI FX1 Firefox OS, Phone, Spice, Tarako devices, consumer
You can find more of the device specifications listed on our Phone and device specs page.
1587 Spice Fire One MI FX2 Firefox OS, Landing, Phones
You can find more of the device specifications listed on our Features and specs page.
1588 Symphony GoFox F15 Firefox OS, GoFox, Phone, Symphony
The Symphony GoFox F15, launched in Bangladesh in partnership with Symphony and Grameenphone (Telenor), is the first commercial end-user device to be launched with Firefox OS 1.4; in addition, this device is the first Firefox OS device to have 3G video calling capabilities available.
1589 ZTE OPEN Firefox OS, Gaia, Gecko, Phone, zte
ZTE Open sales have come to an end and are no longer available. See ZTE Open C.
1590 ZTE OPEN C Device, Firefox OS, Gaia, Guide, Open C, Phone, Smartphone, zte
The ZTE Open C Firefox OS phone is an enhanced Firefox OS offering from ZTE featuring higher end hardware, including a 3MP camera and 4-inch WVGA screen, and also comes installed with Firefox OS 1.3. This article provides information about it, including updating and troubleshooting details.
1591 ZTE Open II Firefox OS, Phone, ZTE Open 2, ZTE Open II, consumer
The device's system image is locked, so you can only update the software when the network operator releases an OTA update. The device system image is based on Firefox OS 1.2.
1592 Zen U105 Fire Firefox OS, Phone, Zen, Zen u105, consumer, tarako
You can find more of the device specifications listed on our Phone and device specs page.
1593 Building B2G OS B2G OS, Boot, Build documentation, Gecko, Guide
Once you've set up your build system and performed your initial pull and configure  the code, you can build Boot to Gecko. This guide explains how.
1594 Building and installing FOTA community builds Firefox OS, Tutorial, build
This article should help you to build community builds of B2G OS on your phone. These builds will have "firmware over the air" (FOTA) updates activated for the OS.
1595 Building for Fairphone
No summary!
1596 Building and installing B2G OS B2G OS, Build documentation, Firefox OS
The articles listed on this page will guide you through building and installing B2G OS on an emulator or compatible device, or the Gaia user interface in the Firefox browser.
1597 B2G OS build process summary B2G OS, Firefox OS, build, build b2g os, install
The overall purpose of the build process is to build three files that can be installed onto a device compatible with B2G OS.
1598 B2G build variables reference sheet Building, Firefox OS, Gaia, Gecko, NeedsContent, Reference, Référence(2), build, commands
This article provides a reference for all the B2G build, Gaia build, and Gecko build variables and commands you might need during Firefox OS-related build operations.
1599 B2G installer add-on B2G, B2G installer, add-on, blobfree, install
The B2G installer add-on helps to solve the long-standing issue of not being able to redistribute full system builds because of blobs (proprietary components.) This article details how the add-on works, and how to install it.
1600 Build legacy branches
Legacy branches of Firefox OS need multiarch packages installed. Newer operating systems do not have these installed by default.
1601 Building B2G OS for Flame on Mac OS X Build documentation, Firefox OS, Flame, Guide, Mac OS X
This article provides instructions on how to build B2G OS for Flame devices using a Mac OS X system as your build platform.
1602 Compatible Devices B2G OS phones, B2G OS supported phones
These devices are official reference devices for developing B2G OS.
1603 Configure your first build
We have several useful tools for building Firefox OS, all contained in a single repository. Download these tools via git to create your working directory.
1604 Creating and applying B2G OS update packages B2G OS, FOTA, Firefox OS, Gaia, OTA, Packages, Updating
Creating and applying an update is split into four steps:
1605 Establish a Build Environment
Before downloading the code to build Firefox OS, you need to configure your build system — this page shows you how. You can currently build on 64-bit Linux distributions and OS X.
1606 Building the B2G OS Simulator B2G OS, Device, Firefox OS, Gaia, Mobile, simulator
Just like Firefox Nightlies, the B2G OS simulator desktop client (identified by b2g-) is automatically built every day from the latest source code. The latest build is available from the Mozilla FTP server. Be sure to pick the latest version and the right archive for your operating system. This lets you bypass having to build it yourself. In addition, you don't have to download Gaia on your own either.
1607 Choosing how to run Gaia or B2G Build documentation
Depending on your specific needs, you have an assortment of options to consider when experimenting with Firefox OS or the Gaia user interface. You can choose among the following options; each has its advantages and disadvantages to consider, and some are more flexible than others.
1608 Crash Reporting Guide for Firefox OS Partners
Mozilla has a world-class system for collecting, analyzing, and fixing crashes and other stability issues such as hangs. Firefox OS partners need to work with Mozilla to correctly enable crash reporting and upload symbols.
1609 Customization with the .userconfig file Firefox OS, build, userconfig
The .userconfig file isn't checked into source code control, so your changes won't be overwritten when you update your source tree. It needs to be created in the root of the B2G tree; that is, in the same directory as flash.sh, build.sh, and so forth. You should add this before you run your config and build steps.
1610 Debugging on Firefox OS Debugging, Firefox OS, QA, Testing
There are two main types of debugging you'll want to with Firefox OS: debugging apps, and debugging other aspects of the system.
1611 Connecting a Firefox OS device to the desktop ADB, Firefox OS
This guide explains how to connect a Firefox OS device to your desktop over USB.
1612 Debugging B2G using Valgrind Debugging, Firefox OS, Mobile, valgrind
S
1613 Debugging B2G using gdb and related tools Debugging, Firefox OS, Mobile
To restart Firefox OS and run it under gdb control, simply use the run-gdb.sh script:
1614 Debugging and security testing with Firefox OS Apps, Debugging, Firefox OS, Security, Testing
This guide includes the following subsections:
1615 Debugging out of memory errors on Firefox OS
When a Firefox OS device runs out of memory, the the low-memory killer and low-memory notifications systems come into play to kill some processes and keep the OS running. When the kernel chooses to kill the foreground process, this manifests as an apparent crash of the app you're using. This article describes how to understand and debug (out of memory) OOM crashes.
1616 Developer settings for Firefox OS Debugging, Firefox OS
Contained in the Firefox OS Settings app is the Developer panel. This panel offers a number of options that can make debugging your open web app on Firefox OS easier.
1617 Firefox OS crash reporting Debugging, Firefox OS, QA, Testing, crash, crash reports
The following instructions assume that you have already followed these three steps:
1618 Installing ADB and Fastboot ADB, Debugging, Firefox OS, Installation, Mobile
You can download and install adb and fastboot as part of the Android SDK package, for Mac, Linux or Windows — visit the Get the Android SDK page.
1619 Intercepting Firefox OS traffic using a proxy Apps, Debugging, Firefox OS, Gaia, Security, Testing
Working with apps that are nothing but HTML and JavaScript, you'll find that a lot of the really interesting work involves using APIs that transfer data over the Web. That means it's often useful to look at the HTTP requests that these apps perform. Proxy tools like Burp and ZAP have useful features for monitoring such traffic. They provide manifests containing information on how clients should configure themselves, including root certificates to install for TLS termination, etc.
1620 On-device console logging Debugging, Firefox OS, Guide, Logging, web console
In addition to being able to log console output and view it using the remote web console, you can log console output into the device's onboard file store, then retrieve the logs later from your computer using the logcat utility and a USB connection. This article covers how to enable this feature, how to perform the logging, and how to retrieve the logs.
1621 Setting up to debug Firefox OS using Firefox Developer Tools Debugging, Firefox OS
Technical review completed.
1622 Taking screenshots Debugging, Firefox OS, Screenshots
Taking screenshots of your application can be useful in many circumstances, for example showing your work to a client, or when publishing your app on the Marketplace. This article explains how to take screenshots on your Firefox OS phone.
1623 Testing in a privileged context: Shipping your own Gaia apps Apps, Firefox OS, Security, Testing
This article takes you through how to test privileged apps before they are submitted to a Marketplace.
1624 Developer Mode Developer Mode, Enable, Firefox OS, Settings, Tools, Web Activities, WebIDE
The current Firefox OS permissions model precludes modification and installation of certified/internal apps, which makes some device APIs completely unavailable to Marketplace and web apps. Developer Mode (DM) allows the user to indicate that they would like to relax the permissions model and expose all device APIs to content, as well as setting a group of related preferences. This article provides a high-level overview.
1625 Developing Firefox OS Developing, Firefox OS
This section provides useful documentation covering different ways in which Firefox OS (codename Boot2Gecko, or B2G) can be modified/customized during the build process, and how you can help to develop the low level platform areas such as Gecko and Gonk.
1626 Customizing DNS DNS, Firefox OS
This article outlines a procedure to change the DNS servers for all interfaces (wifi, cellular, etc.) on a Firefox OS device.
1627 Customizing the b2g.sh script Debugging, Firefox OS, Hacking
If you just want to set an environment variable for a single run of B2G, then you can do the following:
1628 Filing bugs against Firefox OS Bugs, Bugzilla, Firefox OS, QA, filing, test
As with most projects in Mozilla, we use Bugzilla for bug and issue status tracking. You can file bugs to bugzilla when you found bugs — we have a separate product for Firefox OS, which contains components for topics falling under GaiaGonk and Gecko. You should use this component to file bugs against Firefox OS, Gaia, etc.
1629 Installing XPCOM Component as Extension on B2G Desktop Firefox OS, Tutorial, XPCOM
Here is how to install a hello world xpcom component as an extension on B2G Desktop, and test it.
1630 Modifying the hosts file Firefox OS, hosts
On the phone, go the Developer settings panel and check:
1631 Firefox OS Simulator Apps, Firefox OS, Tools
The Firefox OS Simulator is a version of the higher layers of Firefox OS that simulates a Firefox OS device, but runs on the desktop. This means that in many cases, you don't need a real device to test and debug your app. It runs in a window the same size as a Firefox OS device, includes the Firefox OS user interface and built-in apps, and simulates many of the Firefox OS device APIs.
1632 Firefox OS Simulator 4.0
The Firefox OS Simulator add-on is a tool that enables you to test and debug your Firefox OS app on the desktop. The code-test-debug cycle is much faster with the simulator than with a real device, and of course, you don't need a real device in order to use it.
1633 Simulator Walkthrough Apps, Firefox OS, Tools
In this page we'll debug a very simple (but very buggy!) web app using the Firefox OS Simulator.
1634 Simulator Walkthrough (4.0)
In this page we'll debug a very simple (but very buggy!) web app using the Firefox OS Simulator.
1635 Firefox OS apps Apps, Building, Components, Firefox OS, Installing, device APIs
This section of the Firefox OS docs covers the specific techniques required — and available tools — for building Firefox OS apps. You'll find a number of details below, from Firefox OS building blocks/web components, to device APIs and App installation.
1636 App development FAQ Apps, FAQ, Firefox OS
An Open Web App basically an HTML website or application, with some more functionality built on top of it. Think of Open Web Apps (OWA) as Web-standards-built applications or "Web runtime" applications. A Web runtime application runs outside a normal browser and can be launched from the desktop (or device equivalent) on any of the popular internet-connected devices. Of course, Web runtime applications can be run inside the browser too if the user prefers.
1637 App localization Apps, B2G, Firefox OS, Gaia, L10n.js, Localization
This set of articles provides information for developers wishing to provide localized versions of their apps.
1638 App Localization with Transifex Apps, Firefox OS, Localization, transifex
Mozilla's Technical Evangelism team is piloting a program that uses Transifex for managing translation work, both for app developers and localizers. If you visit our team page there, you'll see the Boilerplate app for Firefox OS, along with a collection of other apps from open web app developers who have joined us there.
1639 App localization code best practices Apps, Best practices, Firefox OS, Gaia, Localization, l10n
The best way to write localizable code is to move as much of l10n logic to declarative HTML as possible. You should always try to mark up your HTML Elements with data-l10n-id and data-l10n-args and just set/remove/update those using JavaScript if needed. You also don't need to put the original content in HTML anymore.
1640 Developing Bidi Apps Apps, BiDi, CSS, HTML, Localization
This document lists some patterns and best practices to observe when creating BiDi (bidirectional — left-to-right and right-to-left) apps.
1641 Getting started with app localization Apps, B2G, Firefox OS, Gaia, Guide, L10n.js, Localization
Currently Firefox OS Gaia uses a modified version of the L10n.js library to localize the default apps that are available in Firefox OS. L10n.js is available in the Gaia source tree. The library relies on a key/value-based properties format.
1642 Internationalization helpers: IntlHelper and mozIntl B2G, Firefox OS, Gaia, Internationalization, IntlHelper, JavaScript, Localization, intl_helper.js, mozIntl, moz_intl.js
This article looks at how Firefox OS handles localization of dates, times, numbers and collators from version 2.5 onwards, using the Internationalization API and Gaia's built in helpers, IntlHelper and mozIntl.
1643 L10n.js reference Apps, Firefox OS, JavaScript, L10n.js, Localization, l10n, l10n_date.js, strings
This article provides a reference for the l10n.js library, and its associated date helper, l10n_date.js.
1644 Localizing Open Web Apps Apps, Localization
The purpose of this documentation is to make it as easy and clear as possible to quickly make sure your Open Web Apps are localized and ready to add more languages swiftly. If you want a blueprint app with localization support already implemented, please look at the TranslationTester below.
1645 App permissions Apps, Firefox OS, Intermediate, Permissions, Reference, Référence(2), WebAPI
The three levels of permission, in brief, are:
1646 Building apps for Firefox OS Firefox OS, Installation, Layout, Manifest, distribution, packaging
Firefox OS apps have a low barrier for entry, especially for existing web developers and mobile developers; they are also a lot more portable across platforms than native equivalents, and not locked into walled gardens. As we've already mentioned Firefox OS apps are based on web technologies — HTML, CSS, and JavaScript — so if you've written a web page you already know the basics. Even if you don't have the basics you'll be able to easily follow this guide, but you may want to check out our list of Beginner's tutorials to learn more about developing with open web technologies.
1647 App manifest Apps, B2G, Firefox OS, Manifest, Marketplace, Mobile, Non-standard, OS
This section details the critical details you need to create and use an app manifest.
1648 Apps CSP Apps, B2G, Firefox OS
If a CSP is specified in the App Manifest, the specified CSP and the default CSP for the app's type will be merged. A specified CSP may not loosen restrictions of the default CSP. The Firefox Marketplace Validator detects violations of the CSP during the app submission process. This can be used to help find problems early in development.
1649 Firefox OS app beginners tutorial APIs, Apps, B2G, Debugging, Firefox OS, Guide, Manifest, Marketplace
This article provides a beginner's tutorial covering the essentials of Firefox OS apps — including how they are created and how they differ from standard web apps/websites. This is written to make sense to both web developers and native mobile developers.
1650 Firefox Accounts on Firefox OS
This article provides an overview of using Firefox Accounts in Firefox OS.
1651 Firefox OS Building Blocks Design, Design patterns, Firefox OS, UI, building blocks
The code for the Firefox OS Building Blocks can be found in the Gaia Github repo under shared/style. Here, you can find a CSS file that contains the CSS for that particular Building Block, and a sub directory containing the HTML fragments and image assets. If you are creating your own standalone Web app, you can simply copy the CSS, HTML and image asset files across into your own project; if your app is intended to be installed on Firefox OS only (or you want to use these features only when the app is being used on Firefox OS), then you can link to the versions available inside Gaia.
1652 Action menu Action menu, Design, Firefox OS, Gaia, building blocks
Place the most commonly used or important items at the top of the Action Menu. Negative actions such as delete should be placed at or near the bottom of the Action Menu.
1653 Action menu 2.0 Implementation 2.0, Action menu, B2G, Firefox OS, Gaia, building blocks, implementation
The following gives you an idea of what the rendered menu would look like (the vertical scroll bar would not appear on the actual device.)
1654 Banners Design, Firefox OS, Gaia, banners, building blocks
Status 2.0 implementation
1655 Status 2.0 implementation 2.0, B2G, Firefox OS, Gaia, banner, building blocks, implementation, status
The following gives you an idea of what the rendered Banner would look like:
1656 Buttons Buttons, Design, Firefox OS, Gaia, building blocks
No summary!
1657 Buttons 2.0 implementation B2G, Buttons, Firefox OS, Gaia, building blocks, implementation
The following gives you an idea of what the rendered buttons would look like.
1658 Buttons 2.3 implementation 2.3, B2G, Buttons, Firefox OS, Gaia, Tutorial, building blocks, gaia-button, implementation, web component
First of all, make sure you have followed the preliminary setup instructions. Next, cd into the directory containing your web app. You can install the gaia-button component with:
1659 Context menu B2G, Context menu, Design, Firefox OS, Gaia, building blocks
The Context Menu contains one or more items. The menu can expand in height to accommodate additional items. If the screen height is exceeded, the action menu becomes vertically scrollable.
1660 Object Menu 2.0 implementation 2.0, B2G, Context menu, Firefox OS, Gaia, Object Menu, building blocks, implementation
The following gives you an idea of what the rendered menu would look like (the vertical scroll bar would not appear on the actual device.)
1661 Dialog B2G, Design, Dialog, Firefox OS, Gaia, building blocks, confirm
No summary!
1662 Confirm 2.0 implementation 2.0, B2G, Firefox OS, Gaia, building blocks, confirm, implementation
The following gives you an idea of what a simple confirm dialog would look like on Firefox OS 2.0.
1663 Drawer B2G, Design, Drawer, Firefox OS, Gaia, building blocks
Drawers can also be used to access user-generated content such as browser tabs, accounts in an email or messaging client, or multiple calendars. Drawers slide out from the edge of the screen at the user's request (pushing the underlying content aside), then slide back out of the way when no longer needed.
1664 Drawer 2.0 implementation 2.0, B2G, Drawer, Firefox OS, Gaia, building blocks, implementation
The following gives you an idea of what the rendered drawer would look like, and how it would operate.
1665 Firefox OS 1.x building blocks Apps, B2G, Firefox OS, Firefox OS UX, UX
No summary!
1666 Action menu Apps, Firefox OS, Firefox OS UX, UX
An action menu presents a list of actions, related to the app's content, from which the user may make a selection. See the Coding guide for details on how to implement an action menu in your app.
1667 Button Apps, Firefox OS, Firefox OS UX, UX
Performs an action when tapped by the user. These are highly flexible user interface objects that have a wide variety of styles. See the Coding guide for information on how to implement buttons that look like those described here.
1668 Confirmation Apps, B2G, Firefox OS, Firefox OS UX, UX
A confirmation prompt asks the user to take or confirm an action, such as responding to a system event such as asking the user to restart the device after swapping SIM cards, or to ask the user to grant or deny permission to perform a task. See the Coding guide for information about how to implement these prompts in your app.
1669 Filter Apps, B2G, Firefox OS, Firefox OS UX, UX
Filters can be used for two purposes: data filtering, in which the user can view a single set of data in different ways (for example, the Calendar app uses filters to select the time scale to use when viewing data (that is, by day, week, or month); and secondary navigation (presenting a second set of tabs when tabs are already present in your user interface).
1670 Header Apps, B2G, Firefox OS, Firefox OS UX, UX
A header labels the active view. In addition, it can contain top-level navigation and inputs for the active view. See the Coding guide for information on implementing headers in your apps.
1671 Input area Apps, B2G, Firefox OS, Firefox OS UX, UX
An input area is a data entry field. There are many variations on what an input area can look like; they can be as simple as a text entry field, and as complex as a multi-part entry field with text entry, value selectors, and buttons.
1672 List Apps, Firefox OS, Firefox OS UX, NeedsContent, Reference, Référence(2), UX
Lists are used to display a set of consecutive items, such as a list of contacts or a list of messages.
1673 Object menu Apps, Firefox OS, Firefox OS UX, UX
An object menu is a menu that lets the user directly manipulate objects without having to open them and navigate deeper into a view hierarchy.
1674 Progress and activity Apps, Firefox OS, Firefox OS UX, Guide, UX
Progress and activity indicators are used to provide visual feedback that a process is active.
1675 Scrolling Apps, Firefox OS, Firefox OS UX, Guide, NeedsContent, UX
Scrolling areas are used to let the user move text and/or images across the device's display.
1676 Seek bar Apps, Firefox OS, Firefox OS UX, Guide, UX
Seek bars have a draggable thumb the user can touch and drag back and forth to scroll through content (such as to set playback position in a media file) or to set a new value for a given control, such as sound volume or display brightness.
1677 Status Apps, B2G, Firefox OS, Firefox OS UX, UX
Relays information to the user in a transitory fashion, typically to confirm a user action or to alert the user to a system event. See the Coding guide for details on how to implement a status bar. Sometimes status bars are referred to as "banners."
1678 Switch Apps, B2G, Firefox OS, Firefox OS UX, UX
A switch is any control which presents two mutually exclusive options or states. Switches are also used to select items within lists. See the Coding guide for details on implementing switches in your apps.
1679 Tabs Apps, Firefox OS, Firefox OS UX, UX
Tabs are used as a navigational widget that let the user switch among sets of views. This way, a window may contain multiple views. See the Coding guide for details on how to implement tabs in your apps.
1680 Toolbar Apps, Firefox OS, Firefox OS UX, UX
Toolbars contain actions, indicators, and navigation elements associated with the current view. These may include things such as buttons to delete the currently selected items, a filter to enter edit mode, or a filter to show only "favorite" contacts. See the Coding guide for details on how to implement toolbars in your apps.
1681 Value selector Apps, Firefox OS, Firefox OS UX, UX
Value selectors let the user choose one of a number of possible values, and are typically used from a form interface. For example, value selectors could be used to choose the month or day for a calendar event. These are presented automatically for the values of the <input> element's type attribute.
1682 Firefox OS 2.0 Building Block implementation 2.0, Firefox OS, building blocks, implementation
No summary!
1683 Firefox OS 2.3 web components B2G, Design, Firefox OS, Landing, UI, Web Components, building blocks
No summary!
1684 Header B2G, Design, Firefox OS, Gaia, building blocks, header
This article describes the implementation and possible interactions with the header.
1685 Header 2.0 implementation 2.0, B2G, Firefox OS, Gaia, building blocks, header, implementation
The following gives you an idea of what rendered headers would look like, and how they would operate.
1686 Header 2.3 implementation 2.3, Firefox OS, Gaia, Tutorial, building blocks, gaia-header, header, implementation, web component
Technical review completed.
1687 Input area B2G, Design, Firefox OS, Gaia, building blocks, input area
This article describes the implementation and possible interactions with the input-area.
1688 Input area 2.0 implementation 2.0, B2G, Firefox OS, Gaia, building blocks, implementation, input area
The following gives you an idea of what rendered input areas would look like, and how they would operate.
1689 Text input 2.3 implementation 2.3, B2G, Firefox OS, Gaia, Input, Text, Tutorial, Web Components, building blocks, gaia-text-input, gaia-text-input-multiline, gaia-text-input-pin, implementation
First of all, make sure you have followed the preliminary setup instructions. Next, cd into the directory containing your web app. You can install the gaia-text-input component with:
1690 Layout B2G, Design, Firefox OS, Gaia, Layout, building blocks
You can find this structure in most apps in Firefox OS: Fixed header and footer with scrollable content. Layout is not a design pattern or building block as such — it is more of a reset, or a base for you to build your apps on top of.
1691 Layout 2.1 implementation 2.1, B2G, Firefox OS, Gaia, Guide, Layout, building blocks, implementation
The following gives you an idea of what the rendered layout would look like, and how it would work (the vertical scroll bar would not appear on the actual device.)
1692 List items B2G, Design, Firefox OS, Gaia, building blocks, list items, lists
This article describes the implementation of list items.
1693 List items 2.0 implementation 2.0, B2G, Firefox OS, Gaia, building blocks, implementation, list items
The following gives you an idea of what rendered list items would look like on Firefox OS 2.0.
1694 Picker B2G, Design, Firefox OS, Gaia, Picker, building blocks
None as yet.
1695 Progress and activity B2G, Design, Firefox OS, Gaia, activity, building blocks, progress
This article describes the use of progress bars and activity toolboxes.
1696 Progress and activity 2.0 implementation 2.0, B2G, Firefox OS, Gaia, activity, building blocks, progress
The following gives you an idea of what rendered progress and activity indicators would look like, in different situations.
1697 Scrolling B2G, Design, Firefox OS, Gaia, building blocks, scrolling
This article describes the implementation and possible interactions with the scroll bar.
1698 Scrolling 2.0 implementation 2.0, B2G, Firefox OS, Gaia, building blocks, implementation, scrolling
The following gives you an idea of what the rendered scrolling section would look like.
1699 Search B2G, Design, Firefox OS, Gaia, Search, building blocks
None as yet.
1700 Select mode B2G, Firefox OS, Gaia, building blocks, select mode
Edit mode 2.0 implementation
1701 Edit mode 2.0 implementation 2.0, B2G, Firefox OS, Gaia, building blocks, edit mode, select mode
The following gives you an idea of what the rendered Edit mode would look like (the vertical scroll bar would not appear on the actual device.)
1702 Slider B2G, Design, Firefox OS, Gaia, building blocks, seekbar, slider
This article describes the implementation and possible interactions with the slider.
1703 Seekbar 2.0 implementation 2.0, B2G, Firefox OS, Gaia, building blocks, implementation, seekbar
The following gives you an idea of what rendered seekbars would look like.
1704 Subheader B2G, Design, Firefox OS, Gaia, building blocks, subheader
None as yet.
1705 Switches B2G, Design, Firefox OS, Gaia, building blocks, switches
This article describes switches and their various types along with their respective implementation and possible interactions.
1706 Checkbox 2.3 implementation 2.3, B2G, Firefox OS, Gaia, Tutorial, Web Components, building blocks, checkbox, gaia-checkbox, implementation
First of all, make sure you have followed the preliminary setup instructions. Next, cd into the directory containing your web app. You can install the gaia-checkbox component with:
1707 Switches 2.0 implementation 2.0, B2G, Firefox OS, Gaia, building blocks, implementation, switches
The following gives you an idea of what the rendered switches would look like:
1708 Tab/Filter B2G, Design, Firefox OS, Gaia, Tab, building blocks, filter
This article describes filters and their implementation.
1709 Tab/Filter 2.0 implementation 2.0, B2G, Firefox OS, Gaia, Tab, building blocks, filter, implementation
The following gives you an idea of what the rendered Tab/Filter would look like on Firefox OS 2.0.
1710 Toolbars B2G, Design, Firefox OS, Gaia, Toolbar, building blocks

1711 Toolbars 2.0 implementation 2.0, B2G, Firefox OS, Gaia, Toolbars, building blocks, implementation
The following gives you an idea of what the rendered Toolbar would look like.
1712 Value selector B2G, Design, Firefox OS, Gaia, Tutorial, Value selector, building blocks
No summary!
1713 Value selector 2.0 implementation 2.0, B2G, Firefox OS, Gaia, Value selector, building blocks, implementation
The following gives you an idea of what a rendered Value Selector would look like.
1714 Firefox OS app performance Apps, Firefox OS, Performance
This page lists performance-related topics specific to Firefox OS.
1715 Apps for low-memory Firefox OS devices Apps, B2G, Firefox OS, Performance, low memory, low-memory, memory, tarako
This guide targets app developers and reviewers who need to determine how well an app will run on a low-end Firefox OS device and which factors will prevent it from doing so. It's assumed that not everyone using this guide will have access to a low-end device.
1716 Firefox OS performance testing Apps, B2G, Firefox OS, Performance
This article presents a set of tools and processes for measuring and diagnosing performance issues specifically on Firefox OS.
1717 Firefox OS app tools Apps, B2G, Firefox OS, Firefox for Android, Libraries, Templates, l10n, resources
This section details available Firefox OS-specific code templates, libraries, snippets, and plugins.
1718 Firefox OS copy styleguide Apps, B2G, Design, Firefox OS, Firefox OS UX, UX, Writing, copy
No summary!
1719 Firefox OS design asset library Apps, B2G, Firefox OS, Firefox OS UX, UX
No summary!
1720 Firefox OS device APIs API, Apps, B2G, Firefox OS, Reference, Référence(2)
There are a number of emerging Web platform standards and device APIs crucial to Firefox OS app development and to Open Web Apps. This article provides a list of pages covering those APIs, as well as the app manifest permissions for each one.
1721 Firefox OS icon font B2G, Design, Firefox OS, Gaia, Icons, Tutorial, icon font
The Firefox OS Icon font can be downloaded from the Gaia icons store on Github, or you could use bower to install it:
1722 Firefox OS in Arabic B2G, Design patterns, Firefox OS, Gaia, bidirectional, building blocks
Arabic is one of several languages with a bidirectional writing system (in this case, the Arabic script), which means it contains elements that read both right-to-left (RTL) and left-to-right (LTR). Arabic deserves a specific set of guidelines for how Firefox OS should look and behave when users set their device language to Arabic, because bidirectional writing systems affect:
1723 Action and Context Menus Firefox OS, Guide, Internationalization
Headers will read right to left and are right-aligned (E). Action menu items have right-aligned text reading right to left. Icons are also right-aligned (F).
1724 Home Screen Firefox OS, Guide, Internationalization
Hint text will read right to left and is right-aligned. If cursor is inserted, it will appear at right (D).
1725 Lock Screen Firefox OS, Guide, Internationalization
Numbers generally still run left to right (A). Military (24 hour) format is favored.
1726 Firefox OS transitions Animations, B2G, Firefox OS, Gaia, Landing, Transitions
No summary!
1727 App invoking another app Animations, App invokes app, Firefox OS, Gaia, Transitions, Tutorial
1728 In-app navigation Animations, Example, Firefox OS, Gaia, In-app navigation, Transitions
1729 Invoking the keyboard Animations, Firefox OS, Gaia, Guide, Transitions, keyboard
1730 Opening and closing apps Animations, Firefox OS, Gaia, Guide, Transitions, closing, opening
1731 Opening and dismissing prompts Animations, Firefox OS, Gaia, Guide, Transitions, prompts
1732 Starting and finishing calls Animations, Firefox OS, Gaia, Guide, Transitions, calls
Starting a call:
1733 Switching tasks Animations, Firefox OS, Gaia, Guide, Transitions, task switching
1734 Porting Chrome Apps to Firefox OS Apps Apps, Chrome, Firefox OS, Guide, Manifest, porting
This article reviews the difference between Firefox OS appsChrome apps and provides examples for porting your Chrome app to an Open Web App.
1735 Reference apps
We have put together a number of sample apps for you to download, install, play with and learn from. Have fun!
1736 Chrono Apps, Offline, Reference, Référence(2), appcache
Chrono is a simple chronometer with a lap counter, built to highlight various aspects of the open web app development process.
1737 Face Value Apps, appcache, localStorage
Face Value is a currency conversion app that does things differently: instead of converting arbitrary amounts it shows you the actual denominations in the country you're visiting.
1738 General Notes Apps, IndexedDB, Offline
General Notes is a simple note app that allows you to sync local and remote content.
1739 Podcasts
No summary!
1740 Roller App
No summary!
1741 Webfighter Apps, Canvas, Payments, fullscreen
No summary!
1742 rtcamera Apps, Blob, IndexedDB, URL, Web Workers, WebGL, WebRTC, XMLHttpRequest, getusermedia, x-tags
No summary!
1743 Screencast series: App Basics for Firefox OS API, Apps, Firefox OS, Marketplace, Videos
Firefox OS is an operating system that brings the Web to mobile devices. Instead of being a new OS with new technologies and development environments it builds on standardised web technologies that have been in use for years now. If you are a web developer and you want to build a mobile app, Firefox OS gives you the tools to do so, without having to change your workflow or learn a totally new development environment. In this collection of short videos, developers from Mozilla and Telenor met in Oslo, Norway to explain in a few steps how you can get started to build applications for Firefox OS.
1744 Firefox OS board guide Board, Firefox OS
This section contains developer information relevant to specific phones that run Firefox OS — both developer and consumer devices.
1745 CHIRIMEN
CHIRIMEN is a development environment for controlling physical devices, such as sensors and actuators, that use Web technologies. It is the catch-all term for both the board computer and its software.
1746 CHIRIMEN FAQ Boot to Gecko, CBC, MozOpenHard
No summary!
1747 CHIRIMEN quick start guide
CHIRIMEN quick start guide moved to chirmen.org.
1748 Development-environment preparation section windows version CHIRIMEN, Firefox WebIDE
Page moved to chirimen.org.
1749 Layout of the connectors CHIRIMEN, Connectors
Page moved to chrimen.org.
1750 Startup section CHIRIMEN
Page moved to chrimen.org.
1751 firmware update guide for windows CHIRIMEN, Windows
Page moved to chrimen.org.
1752 How to get OS image
See OS updating section of Quick Start Guide.
1753 Firefox OS developer release notes Firefox OS, Release Notes
This section provides articles covering each new release of Gaia and Gecko for Firefox OS, explaining what features were added and bugs eliminated in each update. There is also a linked summary table showing what APIs are supported by each version of Firefox OS.
1754 Firefox OS 1.0.1 for developers Firefox OS, Release Notes
Firefox OS 1.0.1 was first offered to partners for release on July 2, 2013, and was the first official release of Firefox OS. Its Gecko component is based on Firefox 18 (see Firefox 18 for developers), released on January 18, 2013. For older updates, have a read of the older Firefox desktop release notes, starting with Firefox 17 for developers. This page details the developer features newly implemented in Firefox OS 1.0.1.
1755 Firefox OS 1.1 for developers Firefox OS, Release Notes
Firefox OS 1.1 is a pre-release version of Firefox OS, first offered to partners for release on October 21, 2013. Its Gecko component is based on Firefox 18 (see Firefox 18 for developers) just like Firefox OS 1.0.1, but with some additional bugfixes and APIs added. This page details the developer features newly implemented in Firefox OS 1.1.
1756 Firefox OS 1.2 for developers Firefox OS, Release Notes
Firefox OS 1.2 is at a pre-release stage right now. Its Gecko component is based on Firefox 26 (encompassing all Gecko additions between Firefox 19 and Firefox 26; see Firefox 26 release notes for developers for the latest.) This page details the developer features newly implemented in Firefox OS 1.2.
1757 Firefox OS 1.3 for developers Firefox OS, Release Notes
Gecko component of Firefox OS 1.3 is based on Firefox 28 (see Firefox 28 release notes for developers.) This page details the developer features newly implemented in Firefox OS 1.3.
1758 Firefox OS 1.4 for developers Firefox OS, Release Notes
Firefox OS 1.4 is at a pre-release stage right now. Its Gecko component is based on Firefox 30 (see Firefox 30 release notes for developers.) This page details the developer features newly implemented in Firefox OS 1.4.
1759 Firefox OS 2.0 for developers 2.0, Firefox OS, Release Notes
This section provides a summary of the new features available in Firefox OS 2.0. For more details on specific platform changes (API additions, etc.), see the Platform additions in detail section.
1760 Firefox OS 2.1 for developers 2.1, Firefox OS, Release Notes
This section lists various categories of new product features and improvements to existing features.
1761 Firefox OS 2.2 for developers 2.2, Firefox OS, Release Notes
This section lists various categories of new product features and improvements to existing features.
1762 Firefox OS 2.5 for developers 2.5, Firefox OS, Release Notes
This section lists various categories of new product features and improvements to existing features.
1763 Firefox OS security Firefox OS, Mobile, Security
The following articles cover security-related topics about Firefox OS. This includes overall security features as well as application security and how the install process is kept secure.
1764 Application security Apps, Firefox OS, Guide, Mobile, Security
The key Web app security controls introduced by Firefox OS are:
1765 B2G IPC internals

In FirefoxOS we have a Multi-process Architecture where the apps on the phone are running in a different process which has the least amount of privileges. On a running system we have a single parent process called b2g. The b2g process has a child process called nuwa, this process will be used to fork the app processes. Whenever a new app is being started on the phone, b2g tells nuwa that we need a new process. By default,  child processes are run with a minimal set of privileges. For every action they want to perform (that needs more privileges), they need to go through the parent process (b2g). This is where the Inter-process Communication (IPC) comes into place. Each child has a connection, using an IPC channel, to the parent which will be used for its communication. The process layout is illustrated on the right.
1766 Firefox OS security overview Firefox OS, Guide, IPC, IPDL, Mobile, Security
This document provides an overview of Mozilla's Firefox OS security framework, which is designed to protect mobile devices from threats to the platform, apps, and data. In Firefox OS, Mozilla has implemented a comprehensive, integrated, and multi-layered security model that delivers best-of-breed protection against security risks to mobile phones.
1767 Installing and updating applications Apps, Firefox OS, Guide, Installing, Updating
This article serves as a guide to the application update process on Firefox OS.
1768 Security Automation
Firefox OS uses some automation to spot security errors throughout the development & build process. This article aims to documents how to work with those.
1769 System security Firefox OS, Security
This article provides an overview of the Firefox OS system security model; that is, it explains how the operating system provides security and enforces permissions.
1770 Firefox OS usage tips Firefox OS, Tips
Explains all of the developer features on the phone and what they do (Settings > Device information > More information > Developer)
1771 Unlocking your phone Firefox OS, Unlock
If your build of Firefox OS starts up asking for a pass code to unlock the device, the default code is 0000. Some builds will do this while we develop and test the lock screen.
1772 Gaia Firefox OS, Gaia, Mozilla, UI
Gaia is B2G OS's user interface and suite of default apps: it includes the lock screen, home screen, dialer, and other applications. Essentially, Gaia is a set of complex web apps that runs on top of the B2G OS platform. This set of articles covers all you need to know to contribute to the Gaia project.
1773 Customizing build-time apps Apps, Customization, Firefox OS, Gaia, Guide
As a developer or device vendor, you will want to customize the apps that appear on a Firefox OS device at first-run for a variety of reasons. This article explains the different mechanisms for doing so.
1774 Customizing the keyboard in B2G OS Firefox OS, Guide, keyboard
Two major keyboard features have been implemented in Firefox OS, as of October 2013.
1775 Different ways to run Gaia ADB, Contributing, Debugging, Desktop, Device, Emulator, Firefox, Firefox OS, Gaia, Gaia+Gecko, Mac OS X, USB, WebIDE, nightly, running Gaia, simulator
You can run Gaia in a simulator via WebIDE, in Firefox Mulet (a special version of desktop Firefox for Gaia development), in an emulator, or on a compatible mobile device. This article provides a summary of how to do each, with links to further information.
1776 Gaia build system primer Build documentation, Building, Firefox OS, Gaia, Guide
how Gaia's build system works, including the makefile, the build process, environment variables, and potential customizations
1777 Gaia tools reference Firefox OS, Gaia, Reference, Référence(2), Tools
MozITP is an all-in-one package bundle for Gaia related tools. It contains pre-configured flash tool (b2g_util), b2g-installer and Gaia Integration Test environment. You can use MozITP to test Gaia Integration Test on Mulet, emulator or real devices. You can also flash builds from TaskCluster or b2g-installer blob-free builds.
1778 Localizing B2G OS Firefox OS, Localization
In this guide, we'll show you how easy it can be to localize Firefox OS, specifically the Gaia interface and apps. We'll start by helping you set up your computer, walk you through how to localize Gaia strings, and finally how to perform l10n testing on your work.
1779 Make options reference Apps, Firefox OS, Gaia, Make, Options, Reference, Référence(2)
The make command is used inside the Gaia repo to create a Gaia profile that can be loaded onto your device or run in a B2G Desktop build. This article looks in detail at the different make options available.
1780 Making Gaia code changes Firefox OS, Gaia, Guide, code changes
Now that you have Gaia running on your Desktop and you understand to some level how the codebase works, you should be ready to start contributing to the project. This article describes how to make changes and where to find bugs to work on.
1781 Market customizations guide Customization, Firefox OS, Gaia, Marketplace, build
Since 1.0.1, Firefox OS has used the same mechanism as Firefox for customization. All features discussed in this article work inside Firefox OS 1.0.1, unless otherwise indicated.

We have created a full-featured Gaia distribution customization sample as part of the Gaia repo: study this to learn first-hand what can be done with build-time customization. It will also be referenced in the article below.
1782 Raptor: Performance Tools for Gaia Firefox OS, Performance, Raptor, User Timing
Raptor aims to overcome many of the pitfalls faced when testing performance with the previous tool, make test-perf:
1783 Firefox OS app startup: responsiveness guidelines Apps, Firefox OS, Performance, Startup, Timing
The following tables of app startup stages and timings — and user stories — provide best practice guidelines for Firefox OS apps, in terms of "acceptable" app performance on all Firefox OS devices (including low-spec devices.) This forms the Firefox OS Performance team's UX-approved definition of performant apps, and is part of Mozilla's program for advancing Firefox OS responsiveness and perceived performance.
1784 Running custom Firefox OS/Gaia builds in WebIDE Apps, B2G Desktop, Debugging, Firefox OS, Gaia, WebIDE
In late February 2014, the Firefox OS Simulator had a feature added that allows it to run a custom B2G binary and/or a Gaia profile of your choosing. This article shows how to configure your toolset to do this, running the Simulator through WebIDE.
1785 Running the Gaia codebase Contributing, Firefox, Firefox OS, Gaia, running firefox os locally
This article runs through in detail how to run the Gaia codebase locally, and what tools are available in this setup.
1786 Submitting a Gaia patch Bugzilla, Firefox OS, Gaia, GitHub, contribution, patch, submitting
Submitting patches to Gaia can be a little tricky until you get used to it, as it involves Bugzilla and Github, and usage of special flags in Bugzilla to make everything happen in the right sequence.
1787 Testing Gaia code changes Firefox OS, Gaia, Guide, Integration, Performance, Testing, UI
When you have finished making a change to the Gaia codebase and it seems to work ok, the next step is to go through a testing procedure to make sure your changes really work — and are working ok with the rest of Gaia — before submitting a patch back to the project. This article explains how.
1788 Understanding the Gaia codebase Code, Firefox OS, Gaia, Guide, JavaScript, contribution
Before you start to make your own changes to the Gaia codebase, you should understand the basics of how it is all structured, and what coding conventions are used. This article covers both of these points.
1789 Installing B2G OS on a mobile device B2G, Mobile
Once you've built Boot to Gecko for a supported mobile device, you can install it. This article will guide you through the process.
1790 Introduction to Firefox OS Community, Firefox OS, Gaia, Introduction
This set of documentation is aimed mainly at web developers and platform developers who want to learn how Firefox OS works, how to contribute to the project, and how to build their own custom versions of the software and install it on devices. For those who want to create and distribute their own web apps, the App Center and Marketplace Zone are good places to go.
1791 Mulet B2G Mulet, B2G OS, Mulet, try b2g os
Following this guide you're going to run Gaia inside of a special build of Firefox called Firefox Mulet. This gives you the advantages of having a rapid development cycle, as well as standard web development tools and debuggers available to work with. First of all, you need to have the Gaia repo cloned on your machine and build your own profile. Then, you have to install mulet and run it, passing your Gaia profile as the profile to use.
1792 Open web apps quickstart Apps, Quickstart
Quickstart information on coding Open Web Apps.
1793 App development for Web developers Apps, páginas_a_traducir
The minimum requirements are few:
1794 App development for mobile developers Apps, Mobile
For mobile application developers, the open web apps project offers these advantages:
1795 App tools Apps, Firefox OS, Guide
Is your app ready for the Firefox Marketplace? The App validator will check your manifest and show you any errors it may have, or warnings you should consider.
1796 Developing app functionality Apps, Guide, Howto
We have already looked at developing web apps — in Your first app we reviewed the basic code steps required to make an app installable, talked about different open web app types, and said a few words about Web APIs and permissions required to use certain device APIs. Read it first if you've not already done so. In this article we talk about the types of functionality you might want to implement in a bit more detail.
1797 Intro to Firefox OS Apps, Firefox OS, Gecko, Quickstart, Video
Firefox OS (also referred to by its codename "Boot to Gecko" or "B2G") is Mozilla's open source mobile operating system, based a Linux kernel, which boots into a Gecko-based runtime engine that lets users run applications developed entirely using HTML, CSS, JavaScript, and open web application APIs. Firefox OS is a mobile operating system that's free from proprietary technology while still a powerful platform that provides application developers an opportunity to create excellent products. In addition, it's flexible and capable enough to make the end user happy.
1798 Intro to Open Web Apps Apps, Open Web Apps
Multi devices
1799 Intro to manifests
App manifest
1800 Your first app Apps, Guide
This guide aims to get you up and running quickly with a basic architecture and build instructions so that you can create the next great app!
1801 Pandaboard Boot2Gecko, Firefox OS, Pandaboard
This is a guide to setting up Firefox OS on a PandaBoard. The PandaBoard is a low-cost OMAP 4 based development board for developing mobile operating systems.
1802 PasscodeHelper Internals Firefox OS, Gaia, PBKDF2, PasscodeHelper, Security
PasscodeHelper is a Gaia helper library for modifying and checking the Firefox OS lockscreen passcode (i.e., pin) from within Gaia, performing functions such as checking whether an entered passcode is correct, and changing the code. This article documents how PasscodeHelper works.
1803 Porting B2G OS Firefox OS, porting
This page lists the available resources for porting B2GOS.
1804 Porting B2G onto Nexus Player (Lollipop) B2G, B2G OS, Firefox OS, Guide, Nexus, Nexus Player, TV, porting
This article provides an overview of the process by which B2G OS (the TV version — on which Firefox OS for TV is based) can be ported onto the Nexus Player (versions running Lollipop.)
1805 Porting basics B2G, B2GOS, Mobile
This guide assumes you're porting to a new device that already runs Android; if you're porting to another device, the job is going to be more involved.
1806 Porting on CyanogenMod B2G, B2G OS, cm-b2g, cyanogenmod, porting b2g os to cyanogenmod
Editorial review completed.
1807 Preparing for your first B2G build B2G OS, Build documentation, building b2g os
Depending on your internet connection, the configuration steps may take several hours to download everything you need to build B2G OS. Waiting is not as fun as doing, so after you have read through this page and have kicked off the configure script, consider using the time to set up and try out the B2G OS simulator, begin familiarizing yourself with Documentation for app developers including Designing and Building an App, or familiarize yourself with the information on upcoming steps.
1808 Resources Firefox OS
Resources for App hackers, as generated from our workshops
1809 Running tests on Firefox OS: A guide for developers
If you are a Gecko developer, then you should review the Firefox OS-specific documentation for the test automation you are already familar with: mochitest, reftest, and xpcshell.
1810 The B2G OS platform Firefox OS, Landing
The B2G OS platform consists of many components. While you don't need to understand its architecture in order to build applications that run on B2G OS, if you're working on developing or porting the platform — or are simply curious — the following documentation may be of interest to you.
1811 Feature support chart QA, Testing
There are several different builds of Firefox OS you can download or build for yourself, and there are some differences between the types of features available on each device. The chart below should help you understand what works and what doesn't on the various builds.
1812 Firefox OS apps architecture Apps, Firefox OS, Guide
When the user selects an app they'd like to launch, or an app otherwise needs to be launched, the home screen app starts by getting an app reference from the App API, then calling the App.launch() method to launch the app.
1813 Firefox OS settings list API, Firefox OS, Reference, Référence(2), Settings, WebAPI
Firefox OS offers a number of settings that configure the device and its built-in features. These settings can be accessed by certified apps using the Settings API.
1814 Gaia Firefox OS, Gaia, Landing, Mobile
Gaia is the user interface level of B2G OS. Everything that appears on the screen after B2G OS starts up is drawn by Gaia, including the lock screen, home screen, dialer, and other applications. Gaia is written entirely in HTML, CSS, and JavaScript. Its only interface to the underlying operating system and hardware is through standard Web APIs, which are implemented by Gecko.
1815 Gaia apps Apps, Architecture, Firefox OS, Gaia
Gaia is the front-end of Firefox OS, which contains system administration functionality and the built-in suite of apps shipped with Firefox OS devices. All the Gaia source code — even the system, and keyboard IMEs — is fully implemented with HTML5 (HTML + CSS + JavaScript) & Open WebAPIs. This set of documents contains information on how each of the default apps available in the Gaia family works.
1816 Browser Apps, B2G, Browser, Firefox OS, Gaia, Guide
The Browser app (which is now part of System) provides browser-like functionality where it is needed — including page navigation, search, and bookmarks. This article explains how the Browser app's basic functionality works, and how it fits into the larger system.
1817 Gaia Video app Apps, Gaia, Video
The Video app is a simple video player that allows you to play any videos stored on your Firefox OS device's storage media.
1818 Settings Apps, B2G, Firefox OS, Gaia, JavaScript, Settings
The Settings app allows users to configure device settings and also responds to incoming activities that allow app developers to display specific settings views from apps (e.g. show the wifi settings panel if no data connection is available). This article explains how it works.
1819 System Apps, B2G, FTU, Firefox OS, Gaia, JavaScript, UI, lock screen, system
The System app is the first web app loaded by Gecko during the Firefox OS bootup procedure, and it handles numerous responsibilities that are required generally for the running of the system, and are therefore not scoped per individual web app. This article explains in detail how System works.
1820 Window Management Apps, B2G, Firefox OS, Window Management, system
In general, a window manager is the part of an application that controls the placement and appearance of windows in a graphical user interface. This article looks at how Firefox OS handles Window Management.
1821 Introduction to Gaia Apps, B2G, Gaia, Settings
The lock screen shows the network carrier, current time and date, and a slidebar allowing the user to unlock the phone or go straight to the camera to take a picture. If the user has got a passcode lock set, the lock screen will also show a passcode entry interface.
1822 LockScreen Architecture (v1.5+)
The current LockScreen in Gaia is a monolithic component, which is even the second large file in the System app according to its LOC. This make it hard to reasonably add/modify/remove functions and even change styles.
1823 Gonk Firefox OS, Gecko, Gonk, Linux, Mobile, Mozilla, NeedsContent, porting
Gonk is the kernel-level component in the B2G OS stack that serves as the interface between Gecko and the underlying hardware. Gonk controls the underlying hardware and exposes hardware capabilities to Web APIs implemented in Gecko. Gonk can be seen as the “black box” that does all the complex, detailed work behind the scenes to control the mobile device by enacting requests at the hardware level.
1824 Keyboard events across browser elements B2G, Firefox OS, TV, events, keyboard, mozbrowser, mozbrowserafterkeydown, mozbrowserafterkeyup, mozbrowserbeforekeydown, mozbrowserbeforekeyup
This post will introduce the challenges of programming a TV remote to manage keyboard events on the Firefox OS Smart TV platform.
1825 Out of memory management on Firefox OS Firefox OS, Gaia, LMK, OOM, Out of memory, low memory killer, low memory notifications, oom_adj
Firefox OS runs on some severely memory-constrained devices, and it's easy for apps to exhaust the memory available on such systems.  When a process exhausts the memory available on the system, the kernel must kill some other processes in order to free up memory. This article describes how the low memory killer and low memory notifications work — the two systems on the device that control what processes are killed to keep the main system running when it has run out of memory.
1826 Troubleshooting B2G OS B2GOS, Mobile, troubleshooting
This article provides tips for resolving common problems you may have while using B2G OS.
1827 Using the App Manager
The App Manager is a tool for Firefox Desktop which provides a number of useful tools to help developers test, deploy and debug HTML5 web apps on Firefox OS phones & Simulator, directly from Firefox browser. This page documents how to use the App Manager.
1828 Using the B2G emulators Firefox OS
This article provides a brief guide to some key things you should know when using the boot to Gecko emulators. This doesn't appear to be a complete user manual; instead, it simply tells you a few useful things that you might not learn on your own.
1829 Web Bluetooth API (Firefox OS) API, B2G, Certified, Firefox OS, Landing, Non-standard, Reference, Web Bluetooth, WebAPI
The Web Bluetooth API lets an open web app discover, pair with, and connect to Bluetooth devices. As it is a completely experimental and non-standard API, the Bluetooth API is currently available for certified applications only. However, there is some traction to have such an API available for regular Web content; this will be discussed as part of the W3C's System Applications Working Group.
1830 Using the Web Bluetooth API API, Adapter, Bluetooth, Guide, Key, Manifest, NeedsContent, Permissions, WebBluetooth, pairing
The WebBluetooth API is a Firefox OS-only API created to allow control of a device's low-level Bluetooth functionality via JavaScript. This article explains the basics of how to use the API in a Firefox OS app.
1831 Web Telephony API API, Firefox OS, Landing, Phone, Telephony, Voice, Web Telephony, WebAPI
Web Telephony is an API that makes it possible for web content to handle voice phone calls using JavaScript.
1832 Using the Web Telephony API Advanced, B2G, Certified, Firefox OS, NeedsContent, Phone, Telephony, Web Telephony, WebAPI
This article explains the basics of getting started with the Web Telephony API.
1833 Web applications Web applications, Web apps
This page is intended to be a first, non thorough, attempt to collect web apps.
1834 Beginner tutorials
This page includes archived beginners tutorials, from various places around MDN.
1835 Creating reusable content with CSS and XBL Advanced, CSS, CSS:Getting_Started, Example, Guide, NeedsUpdate, Web, XBL
This page illustrates how you can use CSS in Mozilla to improve the structure of complex applications, making code and resources more easily reusable.
1836 Underscores in class and ID Names CSS
Summary: The use of the underscore character in CSS can lead to major display problems in multiple browsers. Learn why this is so, and how to keep your sites from being bitten by this problem. This technical note examines the use of underscores in CSS, and why they should be generally avoided in most circumstances.
1837 XML data CSS, CSS:Getting_Started, Example, Guide, Intermediate, NeedsUpdate, Web
This page contains an example of how you can use CSS with XML data.
1838 XUL user interfaces Advanced, CSS, CSS:Getting_Started, Example, Guide, NeedsUpdate, Web, XUL
This page illustrates Mozilla's specialized language for creating user interfaces.
1839 Case Sensitivity in class and id Names CSS, HTML
No summary!
1840 Creating a dynamic status bar extension Add-ons, Extensions, NeedsUpdate
Concepts covered in the previous sample won't be reiterated here; instead, refer to the downloadable sample code or to the previous sample for further details.
1841 Creating a status bar extension Add-ons, Extensions, NeedsUpdate
Many of the concepts introduced here apply to any XUL-based application; however, to keep from getting completely overwhelmed, we're going to focus specifically on Firefox.
1842 Element RSS, RSS:Element_Reference
No summary!
1843 title RSS, RSS:Element_Reference
<title>...</title> - The RSS Title element has 4 uses. It is used to specify thetitle of a <channel>, an <image>, an <item>, or a <textinput>.
1844 Gecko Compatibility Handbook Cross-browser_Development, Gecko, Web Development
** Notes ** - The Solution Quick Reference needs more attention. - I'm also looking for a way to organize all that information. - Some inline examples were removed because of technical limitations. They are actually replaced by ''-(EXAMPLE REMOVED)-'' The goal of this handbook is to help you update websites to work with standards-based browsers and properly detect Gecko.
1845 Getting the page URL in NPAPI plugin Add-ons, NPAPI, Plugins
Sometimes, you want to restrict an NPAPI plugin to be loadable only from a certain URL or domain or scheme. Or whenever you make network requests yourself, you almost always need to enforce same-origin policy.
1846 IdentityManager API, Interface, Non-standard, Persona, Reference, Référence(2)
The IdentityManager of the  BrowserID protocol exposes the BrowserID API, via navigator.id. This API has gone through several significant revisions. Each generation is listed separately below.
1847 IdentityManager.get() API, BrowserID, DOM, DOM Reference, Method, NeedsExample, Persona, Reference, Référence(2), Security
This function enables a web site to use BrowserID to authenticate its users. Call it in the click handler to your "log in with Persona" button with a callback function as a parameter.
1848 IdentityManager.getVerifiedEmail() API, BrowserID, DOM, DOM Reference, Deprecated, Method, NeedsExample, Persona, Reference, Référence(2), Security
This function enables a web site to use BrowserID to authenticate its users. Call it in the click handler to your "log in with BrowserID" button with a callback function as a parameter.
1849 IdentityManager.logout() API, BrowserID, DOM, DOM Reference, Method, Persona, Reference, Référence(2), Security
This function is used in Persona to cause the browser to reset the automatic / persistent login flag for a website. After being called, the user will need to explicitly log back into your site instead of being signed in automatically.
1850 IdentityManager.request() API, BrowserID, DOM, DOM Reference, Method, Persona, Reference, Référence(2), Security
This function enables a web site to use Persona to authenticate its users. It must be invoked from within a click handler. For example, you should call it when a user clicks your "log in with Persona" button.
1851 IdentityManager.watch() API, BrowserID, DOM, DOM Reference, Method, NeedsExample, Persona, Reference, Référence(2)
This function registers callbacks that respond to a Persona user logging in or out.
1852 Index
Found 2390 pages:
1853 Inner-browsing extending the browser navigation paradigm
This article is the version from 2003 with slight modifications (no images and no links to samples). It's here for reference.
1854 Install.js Add-ons, Extensions, XPInstall_API_reference
See also this article from XulPlanet's Main Tutorial.
1855 JXON AJAX, DOM, Document, JSON, JXON, Object, Object-Oriented, XML, XMLHttpRequest, XPath
JXON (lossless JavaScript XML Object Notation) is a generic name by which is defined the representation of JavaScript Objects using XML. There are no real standards for this conversion, but some conventions begin to appear on the web. There are some cases in which the whole content of an XML document must be read from the JavaScript interpreter (like for web-apps languages or settings XML documents, for example). In these cases JXON could represent the most practical way.
1856 List of Former Mozilla-Based Applications
The following is a list of all known applications that at one point used Mozilla technologies or that are no longer being actively maintained.
1857 List of Mozilla-Based Applications Apps
The following is a list of all known active applications that are built using Mozilla technologies. This list is likely to be incomplete since we think there are many dark matter projects that we don't know about. If you have information about a new project or extra information about an existing project, please feel free to update this page.
1858 Localizing an extension Add-ons, Extensions, Internationalization, Localization
This article expands upon the previous samples on extension writing by adding localization support to our stock watcher extension. Performing a few simple steps makes your extension much easier to localize into various languages without having to edit the XUL or JavaScript files themselves.
1859 MDN
The documentation listed below is archived, obsolete material about MDN itself.
1860 Content kits Content Kit, Evangelism, Learning, MDN Meta
MDN Content Kits are subject-based collections of technical resources to help you host a local developer meetup or give a technical presentation at an event, conference, or workshop.
1861 How to link a GitHub account to your MDN profile Documentation, MDN, MDN Meta, MDN Project
All users who wish to contribute to MDN must add a GitHub login to their MDN account in order to edit. This article describes how to add GitHub authentication to your MDN profile.
1862 MDN and Persona sign-ins Documentation, MDN, MDN Meta, Mozilla, Persona
Starting on November 1, 2016, we only support GitHub for logging into MDN. If you didn't add a GitHub login to your MDN account before we disabled Persona logins, please file an "Account Help" bug on Bugzilla.
1863 Subject-matter experts Community, MDN Meta, Reference, Roles(2)
This article's purpose is to help writers find the Mozilla developers who have answers for questions about various technologies. If you're an engineer on any Mozilla project, please make sure your technology is on this list and that the contact information for your group is provided.
1864 Zones Deprecated, Guide, MDN Meta, Site-wide, Tools
A zone is a special area of MDN whose content is presented with some added user interface elements, such as a special zone navigation box and enhanced visuals in the header area of the page.
1865 MDN "meta-documentation" archive Archive, MDN
Here you'll find archived "meta-documentation"; that is, documentation about how to write documentation on MDN. The articles here are obsolete and should no longer be referenced; we are retaining them here for reference while we migrate some content to new places, but very little of this is useful.
1866 Article page layout guide MDN
An article is any page that explains or teaches something. These are non-reference pages which are also not landing pages. In general, if a page is primarily prose and/or sample code, it's an article.
1867 Blog posts to integrate into documentation
Often, Mozilla developers and community members write blog posts. And often, those blog posts are really, really awesome. And, often, those blog posts include information that really ought to be included on MDN. Sometimes, it's the entire blog post that could be adapted into a tutorial on MDN (but please check with the author first, unless they're known to have given blanket permission!), and other times, there are just details about changes to Firefox or web technologies that we need to be sure are reflected in the right places in the docs.
1868 Current events
See MDC:Community for information about the mailing list and IRC channel where most of the MDC project planning and discussion goes on.
1869 Custom CSS classes for MDN MDN, Reference, Référence(2)
The following are the custom CSS classes that we have defined for the Devmo wiki. If, for whatever reason, you need a custom class defined in the CSS for this wiki, feel free to contact the documentation team lead.
1870 CSS Quick Learn CSS
helps to quickly learn CSS for the development of webpages and become a better web designer.
1871 Design Document MDC Project archives
No summary!
1872 Contribution and Maintenance
No summary!
1873 Footer
No summary!
1874 MDC Community Index Page
No summary!
1875 MDC Content Page
No summary!
1876 MDC Content Page (for printing)
No summary!
1877 MDC Home Page
No summary!
1878 MDC News Index Page
No summary!
1879 MDC Reference Index Page
No summary!
1880 MDC Reference Library Page
No summary!
1881 MDC Topic Page
No summary!
1882 MDC WebWatch Index Page
No summary!
1883 Navigation Bar
No summary!
1884 Page Tools
No summary!
1885 Returning User
No summary!
1886 Search Box
No summary!
1887 Searching for Information
No summary!
1888 Side Bar
The side bar provides local navigation options to help readers find related resources. Most pages use the standard side bar, but some pages (see the types of pages) will customize the content. In all cases, the look & feel of the sidebar should be the same.
1889 DevEdge
This is a temporary Index of the content that has been migrated from DevEdge to this wiki. The original list and mirror are linked below.
1890 Developer documentation process Documentation
In order to improve the quality of our documentation, and our ability to coordinate among the various members of the Mozilla documentation community, we have a process by which documentation is maintained. This article describes how this works and offers useful links to help you ensure that the work you do is as helpful and useful as possible to the community of Web and Mozilla developers.
1891 Disambiguation Disambiguation
Disambiguation in the MDC wiki is the process of resolving ambiguity, referring to the conflicts that occur when articles about two or more different topics have the same "natural" title.
1892 Documentation Wishlist
Is there a specific article or piece of documentation we're missing that you really wish we had? Add it to the list below. Unless you're sure there is no documentation on the topic you're interested in, please ask in the relevant newsgroup and/or on the MDC mailing list first. Also, please make your request easy to understand; add a link to a longer description of the request if needed.
1893 Documentation planning and tracking Documentation, MDN
We are in the process of trying to use scrumbugs to track documentation from the point at which the bug is filed through prioritization, assignment to a writer, and eventual completion. This page will cover some details of how we use it.
1894 Editing MDN pages
This page describes some common tasks when editing MDN pages.
1895 Examples
No summary!
1896 Alternate License Block
No summary!
1897 Original Document Information
No summary!
1898 Existing Content/DOM in Mozilla
< MDC:Existing Content
1899 External Redirects
The MDC wikis have the ability to redirect to external websites. We have done this so we can have links to external pages within the wiki that will be included in the wiki category pages.
1900 Finding the right place to document bugs
Bugzilla is big. Really really big. MDN is big too. This page helps to put two big things together. It:
1901 Getting started as a new MDN contributor Getting Started, MDN
The Mozilla Developer Network (MDN) is a wiki, where anyone can add and edit content. You don't need to be a programmer or an expert on the latest technology. There is a wide range of tasks that need to be done, ranging from the simple, such as proofreading and correcting typos, to the more complex, like writing API documentation.
1902 Landing page layout guide MDN
A landing page serves as a menu, of sorts, for all of its subpages. It opens with a brief summary of the topic, then presents a structured list of links to subpages, and, optionally, additional material that may be of use.
1903 MDN content on WebPlatform.org MDN, Meta
Web Platform Docs (WPD) is a site for documentation and education about Web standards, run by W3C and supported by Mozilla, among others. Anyone is welcome to contribute content from MDN to WebPlatform.org, under the terms of MDN's Creative Commons Share-Alike 2.5 (CC-BY-SA) license. Content that originates from MDN must be attributed to MDN, with a link to the source article. The Web Platform Docs site provides support for doing this in a systematic way.
1904 MDN page layout guide
These guides supplement the MDN style guide with specific layouts for the various types of pages on MDN. This helps contributors create new content that's structurally consistent with the rest of MDN.
1905 MDN subproject list Documentation, MDN
In order to turn the work of building documentation of All Things Open Web (not to mention All Things Mozilla) into something less daunting, sometimes it's helpful to split it up into subprojects. This page offers a list of links to MDN subproject organizational content.
1906 MWC 2013 Documentation, MDN, MWC
With Firefox OS scheduled to have a major presence at Mobile World Congress 2013, it's important that we have a fairly thorough suite of documentation for its various key components. This page will help us track what those components are, who's working on them, and what their statuses are.
1907 Needs Redirect
If you have
1908 Page types
Before working on the MDN style guide (and the redesign that goes hand-in-hand with it), we need to figure out what types of pages we have, then what those pages look like. This is a list of the types of pages and key attributes of those pages.
1909 API info boxes MDN
Main API pages (also known as "technology" pages) are used to provide an overview of a given class, interface, object, or CSS property. Each of these types of technology has specific key points that need to be summarized and displayed. Near the top of the page is an area reserved for a box containing this summary. This page shows what each of those should, roughly, look like.
1910 Breadcrumb bar MDN
In the heading area of every page on MDN is a breadcrumb bar showing the hierarchy of content between the site's root and the user's current location. This page discusses that bar and its features.
1911 Edit the Article MDN
The summary is a brief paragraph or two explaining the technology; this comes before the first section heading in the article.
1912 Landing page MDN
The first part of the page is a brief summary of what the landing page's content is about. Typically this is just a paragraph or two explaining the API or technology being covered. This text is used as the Google summary for SEO purposes (although you can use the CSS class "seoSummary" to specifically choose parts of it to be used if you want to really make sure the best possible text is used).
1913 Main API page MDN
The page begins with a summary explaining the interface, object, class, or CSS property being described. This should be a paragraph or two at most, and is used as the SEO summary (which can be overridden using the "seoSummary" CSS class.
1914 Reference page MDN
The page begins with a summary explaining the interface, object, class, or CSS property being described. This should be a paragraph or two at most, and is used as the SEO summary (which can be overridden using the "seoSummary" CSS class.
1915 TOC page MDN
The page begins with a brief summary of the document suite for which this is an index or table of contents.
1916 RecRoom documentation plan
RecRoom is the codename of a new MDN area that will provide resources for beginning Web app developers, as well as overall best practices guides for app development.
1917 Remove in-content iframes
Each of the documents listed below has at least one in-place use of the <iframe> element within it. In order to improve performance and allow us to more easily revise and correct layout in the future, we need to quickly update all of these pages to use macros instead.  This is somewhat urgent, as there is work that needs to be done by our development team that cannot begin until all of these are fixed. That's where you come in!
1918 Team status board Documentation, MDN
This table is a list of MDN contributors and what they're currently working on. Feel free to add yourself and what you're up to to this list, but keep in mind that we will purge out-of-date entries regularly, so if you choose to add yourself, do your best to keep your information current (even if all you do is update the "last updated" so we know you're keeping it current, despite your work taking a long time to finish).
1919 Trello Guide, MDN Meta, Processes
The MDN community uses a Trello board to organize and keep track of the things that need to be done to improve, update, and add to our content. This guide will help you learn what Trello is and how we use it.
1920 Using the Mozilla Developer Center Obsolete
Welcome to the Mozilla Developer Center! Here you'll find documentation for not only working on the code and other components of the Mozilla project, but also for developing add-ons for Mozilla-based software, creating new software based on Mozilla code, and web development for the open Web.
1921 Welcome to the Mozilla Developer Network MDN
The Mozilla Developer Network is the most comprehensive and accurate resource for Web development, as written by you, the developers.
1922 Writing chrome code documentation plan Doc Plan, Documentation, MDN
We need a good guide to writing chrome JavaScript code. This plan proposes a project to produce that documentation.
1923 Writing content MDN
There are always things that can be added or updated on MDN. Whether it's all-new documentation for a sparkling new API or a revision to an older API that's changed subtly, you'll find lots of opportunities to help.
1924 MMgc Tamarin
MMgc is the Tamarin (née Macromedia) garbage collector, a memory management library that has been built as part of the AVM2/Tamarin effort. It is a static library that is linked into the Flash Player but kept separate, and can be incorporated into other programs.
1925 Makefile - .mk files
No summary!
1926 Marketplace
Technical review completed. Editorial review completed.
1927 API Archive, Marketplace
Marketplace-related APIs have been removed, therefore the information covering them has been archived.
1928 App Installation and Management APIs Apps, Apps API, páginas_a_traducir
The Open Web Apps JavaScript API is a programmatic interface for installing Web apps and for managing a client-side collection of Web apps that a user has installed. This collection is called the application repository.
1929 Error object Apps, Apps API
In the Open Web apps JavaScript API, a DOMError object is returned by a function when an error occurs.
1930 navigator.mozApps.amInstalled Apps, Apps API
Provides a means for an app to check whether it is installed. This function is typically called from an origin that hosts an app.
1931 navigator.mozApps.getInstalledBy Apps, Apps API
Returns, through the callback function, the apps that were installed by the calling domain. This allows an app directory or store to determine which app it has installed on behalf of the current user.
1932 navigator.mozApps.mgmt.clearWatch Apps, Apps API
Removes a watch callback function. After this function is called, the specified watch callback is no longer called.
1933 navigator.mozApps.mgmt.list Apps, Apps API
Lists all installed apps in the user's repository.
1934 navigator.mozApps.mgmt.uninstall Apps, Apps API
Uninstalls an app from the user's repository.
1935 navigator.mozApps.mgmt.watchUpdates Apps, Apps API
Sets up a callback function to be called whenever an app is installed or removed from the repository.
1936 DOMApplicationsManager API, Apps, Apps API, DOMApplicationsManager, Firefox OS, Interface
Provides support for managing and installing Open Web apps in a browser. A manager can be accessed via Navigator.mozApps.mgmt
1937 DOMApplicationsManager.getAll() API, Apps, Apps API, B2G, DOMApplicationsManager, Firefox OS, Method, Non-standard, Reference, Référence(2), getAll
The getAll() method of the DOMApplicationsManager interface lists all installed apps in the user's repository.
1938 DOMApplicationsManager.onenabledstatechange API, B2G, DOMApplicationsManager, Firefox OS, Non-standard, Property, Reference, events, onenabledstatechange
The onenabledstatechange property of the DOMApplicationsManager interface defines an event handler for the statechange event; this is received when an app is enabled or disabled using DOMApplicationsManager.setEnabled().
1939 DOMApplicationsManager.setEnabled() API, B2G, DOMApplicationsManager, Firefox OS, Method, Non-standard, Reference, setEnabled
The setEnabled() method of the DOMApplicationsManager interface sets an application to be enabled or disabled.
1940 DOMApplicationsRegistry API, Apps, Apps API, B2G, Firefox OS, Non-standard, Reference, Référence(2)
Provides support for installing, managing, and controlling Open Web apps in a browser for installation on Firefox OS. Currently implemented as navigator.mozApps.
1941 DOMApplicationsRegistry.checkInstalled() API, Apps, Apps API, Method
Gets information about the given app. This can be used to determine if the app is installed.
1942 DOMApplicationsRegistry.getInstalled() API, Apps, Apps API, Method
Get a list of all installed apps from this origin. For example, if you call this on the Firefox Marketplace, you will get the list of apps installed by the Firefox Marketplace.
1943 DOMApplicationsRegistry.getSelf() API, Apps, Apps API, Method
Returns information about the calling app, if any. You can use this to determine if an app is installed (i.e. if it is running in the browser, or in a separate app context.)
1944 DOMApplicationsRegistry.install() API, Apps, Apps API, Method
Triggers the installation of an app. During the installation process, the app is validated and the user is prompted to approve the installation.
1945 DOMApplicationsRegistry.installPackage API, Apps, DOMApplicationsRegistry, Firefox OS, Method, NeedsContent
Installs a packaged app.
1946 DOMApplicationsRegistry.mgmt API, Apps API, Property, Read-only, Reference, Référence(2)
The DOMApplicationsRegistry.mgmt read-only is an object implementing the DOMApplicationsManager interface that exposes functions that let dashboards manage and launch apps on a user's behalf.
1947 Navigator_(Marketplace) Archive, Marketplace
Marketplace-specific navigator extensions that have now been deprecated/obsoleted.
1948 Navigator.mozPay() API, Apps, Firefox OS, Method, Web Payment
The mozPay function is used to perform payments. It enables an app to use in-app payments.
1949 Monetization Apps, Marketplace
Monetization topics that have now been archived due to relevant functionality being removed from the Firefox Marketplace.
1950 App pricing tiers Apps, Firefox OS, Marketplace, Web Payment
Pricing on the Firefox Marketplace can be tricky because pricing varies in across regions. This page tells you what you need to know about app pricing in terms of setting prices, revenue split, taxes, payment methods, receiving payments, fraud prevention, and more.
1951 App payout - Brazil Apps, Web Payment
No summary!
1952 App payout - Colombia Apps, Web Payments
No summary!
1953 App payout - Germany Apps, Web Payments
No summary!
1954 App payout - Hungary Apps, Web Payments
No summary!
1955 App payout - Mexico Apps, Web Payments
No summary!
1956 App payout - Poland Apps, Web Payment
No summary!
1957 App payout - Spain Apps, Web Payment
No summary!
1958 App payout - United Kingdom Apps, Web Payments
App pricing
1959 App payout - United States Apps, Web Payments
No summary!
1960 App payout - Venezuela Apps, Web Payment
No summary!
1961 Building a Paid app Monetization, Web Payment
There are two kinds of payments made by app users in Firefox Marketplace apps: a payment made to purchase an app (a paid app) and a payment made to buy digital goods after the app is installed (an in-app payment). This page covers the code and workflow required to create paid apps.
1962 In-app Payments Structure
In-app payments information.
1963 In-app Payments with fxPay Apps, Firefox OS, Guide, JavaScript, Marketplace, Payments, Validation, fxpay, iap, in-app payments, paid
fxPay is a JavaScript library for web applications to process in-app payments and restore purchased products from receipts.
1964 In-app payments with mozPay Apps, Firefox OS, In-app, Marketplace, Web Payment
This article explains how to use the navigator.mozPay API and Web Payment Provider services to process in-app payments.
1965 Introduction — In-app Payments Apps, Firefox OS, Intro, Marketplace
This section describes the options you have for handling In-app Payments (IAP) within your apps and provides the technical information you need to deploy either of the options. You've two options: fxPay and mozPay.
1966 Introduction — Monetization Apps, Firefox OS, Intro, Marketplace
No summary!
1967 Payment processing and your revenue Firefox OS, Marketplace, Tutorial
Mozilla has worked with partners to create a system that is easy for both you and end users to navigate. Mozilla connects you with Bango and Boku to offer credit cards to a global audience and the convenience of direct carrier billing in a growing number of markets. Mozilla currently supports 14 local currencies through credit cards and has Direct Carrier Billing in 6 countries. The countries that aren't supported by local currency billing have credit card billing in USD available.
1968 Publishing your app for profit Apps, Firefox OS, Marketplace, Monetization, Payments
To offer a premium (paid) app you need to set it so it's installed from Firefox Marketplace. Then include code to verify a receipt issued by Marketplace, to make sure the app has been paid for before allowing it to run. For more information, see the App payments guide.
1969 Refunds
Where the user has purchase your app they may request a refund, refunds may be authorized by Mozilla, the payment processor, or the mobile network operator. These refunds will be authorized according to our refund policy in compliance with local consumer laws, the mobile operator's refund policy, and credit card refund policies.
1970 Validating a receipt Apps, Firefox OS, Marketplace, Receipts, Web Payment
If you have a paid app, you should check that a user has a valid receipt. If you do not check, someone can buy the app, get an immediate refund, and then have the app for free. Or someone can simply install the app by referencing the manifest file directly from your site. This article goes through the code and workflow needed to build in your own receipt validation.
1971 Options Archive, Marketplace
Publishing options that are no longer available, hence the information being archived.
1972 Creating your own store Advanced, Apps, Firefox OS, Guide, Marketplace
The method of installing and managing apps in Firefox OS, Firefox for Android, and Firefox for Desktop is independent of Firefox Marketplace. This opens up the possibility for you to not only self-publish apps, but also to create and host your own marketplace. Ultimately you could also implement an independent marketplace using the open source software. This page describes your options and provides an overview to implementing each.
1973 Open Web Apps for Android Firefox, Firefox OS, Guide, Marketplace
Open Web Apps for Android enables free Marketplace apps to be packaged into an APK (Android installation package), which is then installed and run in the same way as any other Android app. The APK package consists of web content (in the case of packaged apps) or a pointer to web content (in the case of hosted apps). This content is then enclosed in a thin Java/Android wrapper, which provides the integration with the Android OS. Once installed on an Android device the app is executed by Web Runtime for Android, a component of Firefox for Android.
1974 Open Web Apps for Desktop Apps, Firefox OS, Guide, Marketplace
Open Web Apps for Desktop enables free Marketplace apps to be installed by Firefox Desktop into a user's Windows, Mac, or Linux computer.  Once installed on a desktop computer, these apps run similarly to any other desktop app. These apps are executed using Web Runtime for Desktop, a component of Firefox for Desktop.
1975 Publishing Archive, Marketplace
Publishing details that are no longer available, hence the information being archived.
1976 Pricing
Marketplace pricing information that is now obsolete, since this functionality has been removed from the Firefox Marketplace.
1977 Bango Apps, Firefox OS, Guide, Marketplace
Bango is the payment provider for credit card and operator payment transactions on Firefox Marketplace. To receive payments for app and in-app purchases processed by Bango you'll need to create at least one Bango payment account. This page provides a guide to the account creation process.
1978 Boku Apps, Firefox OS, Guide, Marketplace
If you're unclear about any of the following instructions, please refer to the Step by step guide.
1979 In-app products Apps, Firefox OS, Guide, Marketplace
This page describes how to create in-app products within Firefox Marketplace for use with fxPay.
1980 Introduction — Pricing your app Apps, Firefox OS, Intro, Marketplace
This section provides a guide to setting up your paid Open Web Apps and their in-app products on Firefox Marketplace, as well as providing useful additional information.
1981 Payment Accounts Apps, Firefox OS, Marketplace, Payments
This page explain why Firefox Marketplace uses multiple payment providers, describes where setup is done in the submission process and provides links to details on setting up accounts with each payment provider.
1982 Promote as upgrade to free version Apps, Firefox OS, Guide, Marketplace
As part of your app's Compatibility and Payments options, it's possible to identify a paid app as a premium upgrade to a free one, which is then promoted in Firefox Marketplace. This option enables you to offer users the ability to try a restricted version of the app before buying the full version, offer a free version with ads and a paid one without, or similar combinations. This page explains how to use the setting and how the upgrade information is presented in Firefox Marketplace.
1983 Publishing an existing mobile app to Desktop Apps, Desktop, Marketplace, publishing
1984 Misc top level
These pages were moved from the top level of MDN in a spate of furious reorganization.
1985 Bypassing Security Restrictions and Signing Code Security, Web Development
Early versions of Firefox allowed web sites to segregate principals using signed scripts, and request extra permissions for scopes within signed scripts using a function called enablePrivelege. These Privilege Manager feature was not used much (aside from abuse), and its complexity made performance improvements difficult. Signed script segregation was removed in bug 726125, the enablePrivilege prompt was removed in bug 750859, and enablePrivilege itself was nerfed in bug 757046.
1986 Creating a Web based tone generator
This example creates a simple tone generator, and plays the resulting tone. The function requestSoundData() produces the samples to be played. This function is called at a certain interval through the setInterval() function. The function mozWriteAudio() is called to write those samples produced in the audio stream. In order to always have samples to play, a buffer of 500 ms is created. The function mozCurrentSampleOffset() is used to know the position of the samples being played so that we can fill a 500 ms buffer of audio samples.
1987 Defining Cross-Browser Tooltips CSS, Cross-browser_Development, Guide, Junk, Web Development
Summary: Authors are used to having alt text appear as a &quot;tooltip&quot; above images, but that's not how it was meant to be used. Learn how to define &quot;tooltips&quot; in a cross-browser, standards-friendly way. Authors are used to using the alt attribute to create "tooltips" in Web browsers. The classic example is a "tooltip" of an image; when the user pauses the mouse pointer over an image, the contents of the alt attribute are displayed as a "tooltip." Gecko-based browsers such as Mozilla, Netscape 6+, and Compuserve 7 do not support this behavior. See bug 25537 for a lengthy, sometimes passionate discussion of Gecko's behavior in this regard.
1988 Environment variables affecting crash reporting Crash_reporting
No summary!
1989 IO Guide
No summary!
1990 Images, Tables, and Mysterious Gaps CSS, Guide, Reference
Almost no matter when you started creating Web pages, odds are pretty high you have one or more designs based on the classic "convoluted tables and lots of images" paradigm. Whether you've sliced up a logo so it fits in well with the design, or used tons of single-pixel spacer GIFs, the principles (and perils) remain largely the same. Back in the early days, this approach worked, because browsers would usually make a table cell exactly as wide and tall as an image it contained.
1991 Installing plugins to Gecko embedding browsers on Windows Add-ons, Plugins
This document presents the Windows Registry keys plugin installers can parse to determine where to install a given plugin (for Mozilla browsers) on Windows. Since the prospect of embedded Gecko browsers raises the scenario of more than one Gecko-based browser that a Netscape-style plugin can work with, it becomes important to let plugin developers know how to discover these browsers on a Windows machine.
1992 MCD, Mission Control Desktop, AKA AutoConfig Administration, Configuration management, enterprise
This document is a concrete example of a centralized auto-configuration of Mozilla apps, that are; Firefox, Thunderbird, Mozilla Suite 1.x.x, Seamonkey and for the record, old Netscape 4.x. Its original inspiration comes from  http://www.alain.knaff.lu/howto/MozillaCustomization/ and http://mit.edu/~firefox/www/maintain...utoconfig.html. For history, I've kept Mozilla and Netscape chapters, as certain points are complementary to the web-based AutoConfig file.
1993 Monitoring WiFi access points WiFi
Code with UniversalXPConnect privileges can monitor the list of available WiFi access points to obtain information about them including their SSID, MAC address, and signal strength. This capability was introduced primarily to allow WiFi-based location services to be used by geolocation services.
1994 No Proxy For configuration Administration, Configuration management, Guide, NeedsUpdate
This document provides a comprehensive discussion of the manual proxy feature "No Proxy for:", including configuration issues, testing and bugs.
1995 Notes on HTML Reflow Gecko
Reflow is the process by which the geometry of the layout engine's formatting objects are computed. The HTML formatting objects are called frames : a frame corresponds to the geometric information for (roughly) a single element in the content model; the frames are arranged into a hierarchy that parallels the containment hierarchy in the content model. A frame is rectangular, with width, height, and an offset from the parent frame that contains it.
1996 Same-origin policy for file: URIs Same-origin policy, Security, XMLHttpRequest
In Gecko 1.8 or earlier, any two file: URIs are considered to be same-origin.  In other words, any HTML file on your local disk can read any other file on your local disk.
1997 Source Navigator
Note: This document is still in the draft state. I hope I can finish it within one day or two if I have more time. ;) --Kennykaiyinyu 19:04, 10 June 2008 (PDT)
1998 Source code directories overview Developing Mozilla
No summary!
1999 Using XML Data Islands in Mozilla HTML5, XML
Internet Explorer had an "XML Data Islands" feature that allows Web authors include XML data inline in HTML documents using the <xml> tag. This feature is not based on multi-vendor Web standards and is not supported in Firefox (or other non-IE browsers). XML data islands are no longer supported from Internet Explorer 10 onwards.
2000 Using content preferences Firefox 3
Firefox 3 introduces the concept of content preferences. This permits code running within chrome (in other words: extensions and the browser itself, not web sites) to locally save preferences on a per-site basis. This makes it possible to write an extension that lets the user customize the appearance of specific web sites (setting the font size larger on sites that use obnoxiously small fonts, for instance).
2001 Visualizing an audio spectrum
This example calculates and displays Fast Fourier Transform (FFT) spectrum data for the playing audio. The function handling the loadedMetaData event stores the metadata of the audio element in global variables; the function for the MozAudioAvailable event does an FFT of the samples and displays them in a canvas.
2002 Working with BFCache Cache, Developing Mozilla, Guide
Q: What is the BFCache exactly?
2003 cert_override.txt
cert_override.txt is a text file generated in the user profile to store certificate exceptions specified by the user.  This file is used by Firefox, Thunderbird, and other XUL-based applications.
2004 Mozilla release FAQ Developing Mozilla, NeedsHelp, NeedsUpdate, Outdated_articles
This document may be distributed and modified freely. No guarantee of factuality in this FAQ is made, and it is maintained by Pat Gunn, who is not affiliated with Netscape. Various other people have contributed to this FAQ.
2005 Navigator.id API, BrowserID, DOM, Persona, Property, Reference, Référence(2), Security
The BrowserID protocol defines a new id property on the window.navigator object, through which it exposes the BrowserID API, that is the IdentityManager intreface. This API has gone through several significant revisions. Each generation is listed separately below.
2006 Navigator.mozSocial API, Obsolete, Property, Reference, Social
Returns a MozSocial object, is available within the social media provider's panel to provide functionality it may need.
2007 Newsgroup summaries
No summary!
2008 Format
No summary!
2009 Mozilla.dev.apps.firefox-2006-09-29
None this week.
2010 Mozilla.dev.apps.firefox-2006-10-06
None this week.
2011 mozilla-dev-accessibility
No summary!
2012 2006-10-06
No summary!
2013 2006-11-10
No summary!
2014 2006-11-22
No summary!
2015 mozilla-dev-apps-calendar
No summary!
2016 2006-09-29
No summary!
2017 2006-10-06
No summary!
2018 mozilla-dev-apps-firefox
No summary!
2019 2006-09-29
None this week.
2020 2006-10-06
None this week.
2021 2006-10