Found 2266 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 Add-ons
Archived add-ons documentation.
4 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.
5 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.
6 Guides Add-on SDK
This page lists more theoretical in-depth articles about the SDK.
7 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.
8 Communicating With Other Scripts
This section of the guide explains how content scripts can communicate with:
9 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.
10 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.
11 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:
12 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:
13 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:
14 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.
15 port
This article documents the port object, which is used to communicate between a content script and the main add-on code.
16 self
This article documents the self object that is available as a global in content scripts. self provides:
17 Contributor's Guide
No summary!
18 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.
19 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.
20 Getting Started Add-on SDK
Learn how to contribute to the Add-on SDK.
21 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.
22 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.
23 Firefox Compatibility Add-on SDK
No summary!
24 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:
25 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.
26 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.
27 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.
28 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.
29 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.
30 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.
31 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:
32 Working with Events
The Add-on SDK supports event-driven programming.
33 XUL Migration Guide
This guide aims to help you migrate a XUL-based add-on to the SDK.
34 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.
35 addon-page Add-on SDK, Add-ons, Extensions, Reference
Create a page that does not contain navigational elements.
36 base64 Add-on SDK
Data encoding and decoding using Base64 algorithms.
37 clipboard Add-on SDK
Interact with the system clipboard, setting and getting its contents.
38 context-menu Add-on SDK, Add-ons, Extensions, Firefox, SDK
Adds items, submenus, and menu separators to the page's context menu.
39 hotkeys Add-on SDK
Assign hotkey combinations to functions in your add-on.
40 indexed-db Add-on SDK
Exposes the IndexedDB API to add-ons.
41 l10n Add-on SDK
Localize strings appearing in the add-on's JavaScript code.
42 notifications Add-on SDK, Notifications
Display transient, toaster-style desktop messages to the user.
43 page-mod Add-on SDK
Run scripts in the context of web pages whose URL matches a given pattern.
44 page-worker Add-on SDK
Create a permanent, invisible page and access its DOM.
45 panel Add-on SDK, Add-ons, Extensions
Creates transient dialogs to implement part of an add-on's user interface.
46 passwords Add-on SDK
Interact with Firefox's Password Manager to add, retrieve and remove stored credentials.
47 private-browsing Add-on SDK
Check whether a given object is private, so an add-on can respect private browsing
48 querystring Add-on SDK
Utility functions for working with query strings.
49 request NeedsUpdate, SDK, add-on
Make simple network requests.
50 selection Add-on SDK
Get and set text and HTML selections in the current web page.
51 self Add-on SDK
Access data that is bundled with the add-on, and add-on metadata.
52 simple-prefs Add-on SDK
Store preferences across application restarts.
53 simple-storage Add-on SDK, Add-ons, Reference
Lets an add-on store data so that it's retained across Firefox restarts.
54 system Add-on SDK
Query the add-on's environment and access arguments passed to it.
55 tabs Add-on SDK
Open, manipulate, and access tabs, and receive tab events.
56 timers Add-on SDK
Set one-off and periodic timers.
57 ui Add-on SDK, Add-ons, Extensions, Reference
Provides access to button, toolbar, and sidebar UI objects.
58 url Add-on SDK
Construct, validate, and parse URLs.
59 webextension
Provides functions for communicating with an embedded WebExtension.
60 widget Add-on SDK
Create a simple user interface for an add-on in Firefox's add-on bar.
61 windows Add-on SDK
Enumerate and examine open browser windows, open new windows, and listen for window events.
62 Low-Level APIs
Modules in this section implement low-level APIs. These modules fall roughly into three categories:
63 /loader
Create CommonJS module loaders.
64 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.
65 console/plain-text
Constructor for a console instance.
66 console/traceback
Functionality similar to Python's traceback module.
67 content/content
Re-exports three objects from three other modules: Loader, Worker, and Symbiont.
68 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.
69 content/mod
Provides functions to modify a page content.
70 content/symbiont
Used by SDK modules that can load web content and attach content scripts to it.
71 content/worker
Used in the internal implementation of SDK modules which use content scripts to interact with web content.
72 core/heritage
Helper functions for inheritance.
73 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.
74 core/promise
Implementation of promises to make asynchronous programming easier.
75 dev/panel
Enables you to extend the Firefox Developer Tools.
76 event/core
The event/core module allows the creation of APIs to broadcast and subscribe to events.
77 event/target
Create objects that broadcast events.
78 frame/hidden-frame
Creates Firefox frames (i.e. XUL <iframe> elements) that are not displayed to the user.
79 frame/utils
Provides helper functions for working with platform internals like frames and browsers.
80 fs/path
Provides access to the local filesystem with the NodeJS path module API.
81 io/byte-streams
Provides streams for reading and writing bytes.
82 io/file
Provides access to the local filesystem.
83 io/text-streams
Provides streams for reading and writing text.
84 lang/functional
Functional helper methods.
85 lang/type
Functions for working with type detection.
86 loader/cuddlefish Add-on SDK, CFX
The SDK's module loader.
87 loader/sandbox
Create JavaScript sandboxes and execute scripts in them.
88 net/url
Enables you to read content from a URI.
89 net/xhr
Provides access to XMLHttpRequest functionality.
90 places/bookmarks
Create, modify, and retrieve bookmarks.
91 places/favicon
Helper functions for working with favicons.
92 places/history
Access the user's browsing history.
93 platform/xpcom
Implement XPCOM objects, factories, and services.
94 preferences/event-target Add-on SDK
Listen to changes to the Preferences system in Firefox.
95 preferences/service Add-on SDK, Jetpack, SDK
Access the Preferences system in Firefox.
96 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.
97 remote/parent Reference, SDK
Enables you to load modules, and privileged parts of your add-on in general, into child processes.
98 stylesheet/style
Modify styles using stylesheet files or CSS rules.
99 stylesheet/utils
Helper functions for working with stylesheets.
100 system/child_process
An implementation of the node.js child_process API.
101 system/environment
Access, set and clear environment variables.
102 system/events
API for working with the application observer service.
103 system/runtime
Access to information about Firefox's runtime environment.
104 system/unload
Register callbacks that are called when a module is unloaded.
105 system/xul-app
Information about the application on which your add-on is running.
106 tabs/utils
Functions for working with XUL tabs and the XUL tabbrowser object.
107 test/assert Add-on SDK, JPM
Implements the assert interface defined in the CommonJS Unit Testing specification version 1.1.
108 test/harness
Test harness setup and execution.
109 test/httpd
An HTTP server for the Mozilla platform, which can be used in unit tests.
110 test/runner
Sets up unit tests.
111 test/utils
Helper methods used in the CommonJS Unit Testing suite.
112 ui/button/action
Add a button to the Firefox user interface.
113 ui/button/toggle
Add a toggle button to the Firefox user interface.
114 ui/frame
Create HTML iframes, using bundled HTML, CSS and JavaScript, that can be added to a designated area of the Firefox user interface.
115 ui/id
Create UI component IDs.
116 ui/sidebar
Enables you to create sidebars.
117 ui/toolbar
Add a toolbar to the Firefox user interface.
118 util/array
Helper functions for working with arrays.
119 util/collection
A simple list-like class and utilities for using it.
120 util/deprecate
Functions to deprecate code.
121 util/list
Building blocks for composing lists.
122 util/match-pattern
Test strings containing URLs against simple patterns.
123 util/object
Functions for working with objects.
124 util/uuid
Generate or parse UUIDs.
125 window/utils
Functions for working with browser windows.
126 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.
127 Tools Add-on SDK, CFX, JPM
Articles listed here provide a reference for the SDK's tools:
128 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.
129 cfx to jpm CFX, JPM, SDK, add-on
A guide to working with jpm if you're already familiar with cfx.
130 console Add-on SDK
Enables your add-on to log error, warning or informational messages.
131 jpm Add-on SDK, JPM
jpm is a command-line tool that enables you to test, run, and package add-ons.
132 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).
133 jpmignore JPM
Use .jpmignore to ignore files from your XPI builds created via jpm.
134 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.
135 Tutorials Add-on SDK
This page lists practical hands-on articles about how to accomplish specific tasks using the SDK.
136 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.
137 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.
138 Adding a Button to the Toolbar Add-on SDK
To add a button to the toolbar, use the action button or toggle button modules.
139 Annotator Add-on SDK
In this tutorial we'll build an add-on that uses many of the SDK's high-level APIs.
140 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.
141 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.
142 Implementing the widget Add-on SDK, Add-ons, Beginner, Extensions, Tutorial
We want the widget to do two things:
143 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.
144 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:
145 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:
146 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.
147 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.
148 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.
149 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.
150 Getting Started (jpm) Add-on SDK, JPM
In this tutorial we've built and packaged an add-on using three commands:
151 Getting started (cfx)
In this tutorial we've built and packaged an add-on using three commands:
152 List Open Tabs Add-on SDK
To list the open tabs, you can iterate over the tabs object itself.
153 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:
154 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.
155 Localization Add-on SDK, Localization
The SDK supports localization of strings appearing in:
156 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.
157 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.
158 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.
159 Open a Web Page Add-on SDK
To open a new web page, you can use the tabs module:
160 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.
161 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.
162 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.
163 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:
164 Bootstrapped extensions Add-ons, Extensions, Firefox 4, Gecko 2.0, Guide, Localization
browser.bookmarks.export( function() {...} // optional function )
165 Code snippets Add-ons, Code snippets, Extensions
166 Alerts and Notifications Code snippets
non-modal notification and further interaction with users
167 Autocomplete Code snippets, Form Fill, Satchel
168 Bookmarks Code snippets, Developing Mozilla, Extensions, Places
169 Boxes Code snippets
Make the BOX style="display: block" and the wrapping behavior will occur when the box is resized:
170 Canvas code snippets Canvas, Code snippets, Graphics
171 Cookies Add-ons, Code snippets, Cookies, Extensions
172 Customizing the download progress bar
173 Delayed Execution Code snippets
174 Dialogs and Prompts Add-ons, Code snippets, Extensions, XUL
175 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.
176 Drag & Drop Code snippets
177 Embedding SVG Code snippets
178 Examples and demos from articles
179 File I/O Add-ons, Code snippets, Extensions, Files, Streams, Tutorial
180 Finding window handles Add-ons, Code snippets, Extensions, XPCOM, js-ctypes
181 Forms related code snippets Code snippets, Forms
182 HTML in XUL for rich tooltips Code snippets, Examples, HTML, XUL
183 HTML to DOM Code snippets, DOM, Guide, HTML, Intermediate, NeedsUpdate
184 IsDefaultNamespace
185 JS XPCOM Code snippets, JavaScript, XPCOM, about:, nsIAboutModule
186 JavaScript Debugger Service Code snippets
187 JavaScript timers JavaScript timers, NeedsBetterPlace
188 JavaScript Daemons Management DOM, Guide, JavaScript, JavaScript timers, MakeBrowserAgnostic
189 Label and description Code snippets
190 LookupNamespaceURI
191 LookupPrefix
192 Miscellaneous Add-ons, Code, Code snippets, Extensions, Snippets
193 Modules
194 On page load Add-ons, Extensions
195 Page Loading Code snippets
196 Post data to window Add-ons, Extensions, NeedsContent
197 Preferences Add-ons, Code snippets, Extensions, Guide, Mozilla, Preferences
198 Progress Listeners Add-ons, Extensions
199 QuerySelector DOM
No summary!
200 Rosetta C, DOM, HTML, HTMLScriptElement, JavaScript, Non-JavaScript, Programming Languages
201 Running applications Add-ons, Code snippets, Extensions
202 SVG Animation NeedsContent
203 SVG General Code snippets
204 Scrollbar Code snippets
205 Sidebar Add-ons, Code snippets, Extensions
206 StringView Code snippet, Guide, JavaScript, JavaScript typed arrays, MDN JavaScript Libraries, Sample code, Typed Arrays, WebGL, WebSockets, js-ctypes
207 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:
208 Toolbar Add-ons, Code snippets, Extensions, Toolbars
209 Tree Code snippets
210 URI parsing
211 View Source for XUL Applications
212 Windows Add-ons, Code snippets, Extensions, Guide, NeedsContent, NeedsHelp
213 XML-related code snippets Add-ons, Code snippets, Extensions
214 xml:base support in old browsers Code snippets
215 XPath
216 getAttributeNS Code snippets
217 Communication between HTML and your extension Add-ons, Extensions, Web Development
See also Interaction between privileged and non-privileged pages.
218 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:
219 Custom about: URLs about:
This page describes how to register a new about: URL for your extension.
220 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.
221 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.
222 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.
223 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.
224 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.
225 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.
226 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.
227 Extension Versioning, Update and Compatibility Add-ons, Extensions
No summary!
228 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.
229 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).
230 Hotfix Extension
This document has been moved to the Add-ons wiki.
231 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.
232 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.
233 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.
234 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.
235 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.
236 Legacy Add-ons Add-ons, Extensions, Landing
This section contains links to documentation for legacy technology for add-on development, including:
237 Legacy extensions for Firefox for Android
Add-ons that work with desktop Firefox do not automatically work in Firefox for Android:
238 API
There are a couple of differences between desktop Firefox and Firefox for Android that are particularly relevant to add-on developers:
239 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.
240 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.
241 addTab
BrowserApp.addTab() opens a new tab. By default, the new tab is made the selected tab.
242 closeTab
BrowserApp.closeTab(tab) closes the supplied tab. If no other tabs are open, then the tab is not closed.
243 deck
deck is a property of the BrowserApp object. It is a deck of all currently open browsers, represented as browser objects.
244 getBrowserForDocument
BrowserApp.getBrowserForDocument() retrieves a browser, given the DOM document hosted by that browser.
245 getBrowserForWindow
BrowserApp.getBrowserForWindow() retrieves a browser, given the DOM content window hosted by that browser.
246 getTabForBrowser
BrowserApp.getTabForBrowser() retrieves a tab, given the XUL browser object hosted by that tab.
247 getTabForId
BrowserApp.getTabForId() retrieves a browser tab, given its unique ID.
248 getTabForWindow
BrowserApp.getTabForWindow() retrieves a browser tab, given the DOM window hosted by that tab.
249 loadURI
BrowserApp.loadURI(uri, browser, params) loads the specified URI into the specified browser.
250 quit Apps, Firefox, Mobile, NeedsContent
BrowserApp.quit() closes the browser.
251 selectTab Mobile, NeedsContent, Reference
BrowserApp.selectTab(tab) makes the supplied tab the currently selected tab.
252 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.
253 HelperApps.jsm
254 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:
255 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.
256 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.
257 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.
258 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.
259 NativeWindow
The NativeWindow object enables Firefox for Android add-ons to create user interface components.
260 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().
261 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.
262 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().
263 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.
264 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.
265 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:
266 Prompt.jsm
267 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.
268 Snackbars.jsm
Contains the Snackbars object, which can be used to show notifications to let users know that some change has been made.
269 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.
270 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.
271 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.
272 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.
273 Creating a User Interface
See the NativeWindow documentation for examples the APIs Firefox for Android add-ons can use to create user interface components.
274 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.
275 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.
276 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.
277 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.
278 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.
279 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.
280 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.
281 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.
282 Overlay extensions Add-ons, Extensions, Landing
This page contains links to documentation for the approach to developing extensions for Gecko-based applications which uses:
283 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.
284 Appendix: What you should know about open-source software licenses
No summary!
285 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.)
286 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).
287 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.
288 Chapter 4: Using XPCOM—Implementing advanced processes
This chapter explains how to use XPCOM to implement advanced processes using only JavaScript.
289 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.
290 Chapter 6: Firefox extensions and XUL applications
This chapter discusses tools to assist in developing extensions.
291 License and authors
License: Attribution-Share Alike 2.1 Japan.
292 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.
293 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:
294 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.
295 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.
296 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.
297 Adding windows and dialogs
To open a new window, use the Javascript window.open function just like with HTML windows.
298 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.
299 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.
300 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.
301 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.
302 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.
303 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.
304 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.
305 Custom XUL Elements with XBL
Taken from the XBL page.
306 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.
307 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:
308 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.
309 Introduction
Welcome to the XUL School Tutorial!
310 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.
311 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.
312 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.
313 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.
314 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.
315 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.
316 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.
317 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 .
318 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.
319 XPCOM Objects
Taken from the XPCOM page.
320 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.
321 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.
322 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.
323 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).
324 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.
325 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.
326 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.
327 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.
328 Techniques
.
329 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.
330 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:
331 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.
332 bookmarks.export() API, Add-ons, Bookmarks, Extensions, Method, Non-standard, Reference, WebExtensions, export
Exports bookmarks to an HTML bookmark file.
333 bookmarks.import() API, Add-ons, Bookmarks, Extensions, Method, Non-standard, Reference, WebExtensions, import
Imports bookmarks from an HTML bookmark file.
334 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.
335 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.
336 Apps Apps, Firefox OS, Web
This page includes archived content for Apps, including obsolete web app content, Firefox OS app-related content, etc.
337 App Development API Reference API, Apps, B2G, Firefox OS, Reference, Référence(2)
Technical review completed. Editorial review completed.
338 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.
339 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.
340 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.
341 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.
342 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.
343 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.
344 Design guidelines Apps, Responsive Design
Some suggestions to help you build an app that’s attractive and easy to use.
345 Resources Apps, Guide, Responsive Design, Web Development
No summary!
346 Your App's Elevator Pitch Apps
Technical review completed. Editorial review completed.
347 Design guidelines Apps, Design, Guide
Design guidelines to help create intuitive apps that work across platforms.
348 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.
349 Facebook Apps
https://www.facebook.com/
350 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.
351 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.
352 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.
353 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.
354 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.
355 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.
356 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.
357 Planning Apps, Design, Planning
No summary!
358 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.
359 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.
360 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.
361 UI layout basics Design, Layouts, UI
No summary!
362 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.
363 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.
364 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.
365 Tools and frameworks Apps, Firefox OS, Frameworks, Libraries, Tools, Workflows
No summary!
366 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.
367 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.
368 Using App templates Apps
What you get:
369 Mortar
(placeholder page for mortar intro)
370 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.
371 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:
372 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™.
373 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.
374 Validating web apps with the App Validator
Some checks that the validator performs include:
375 Archived Mozilla and build documentation
These articles are archived, obsolete documents about Mozilla, Gecko, and the process of building Mozilla projects.
376 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!
377 Archived SpiderMonkey docs Archive
This section contains old SpiderMonkey documentation.
378 File object JavaScript, SpiderMonkey
Non-Standard Server-Side Object
379 open
Opens the file, specifying file mode and type.
380 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.
381 SpiderMonkey coding conventions JavaScript, SpiderMonkey
The SpiderMonkey project owners enforce coding conventions pretty strictly during code reviews.
382 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.
383 Automated testing tips and tricks Developing Mozilla
No summary!
384 Automatic Mozilla Configurator Administration, Configuration management, enterprise
No summary!
385 Enabling quicklaunch for all users Administration, Configuration management, enterprise
No summary!
386 How Mozilla finds its configuration files Administration, Configuration management, enterprise
No summary!
387 How Thunderbird and Firefox find their configuration files Administration, Configuration management, enterprise
No summary!
388 Introduction Administration, Configuration management, enterprise
No summary!
389 Kill the XUL.mfl file for good Administration, Configuration management, enterprise
No summary!
390 Locked config settings Administration, Configuration management, enterprise
No summary!
391 Other Mozilla customization pages Administration, Configuration management, enterprise
No summary!
392 Protecting Mozilla's registry.dat file Administration, Configuration management, enterprise
No summary!
393 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.
394 BlackConnect Java
No summary!
395 Blackwood Java
No summary!
396 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").
397 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.
398 Building TransforMiiX standalone NeedsHelp, NeedsRewrite, XSLT
No summary!
399 Chromeless Update
[This project may not be active — check Github https://github.com/mozilla/chromeless]
400 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.
401 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.
402 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.
403 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.
404 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.
405 Enabling the behavior - retrieving tinderbox status Add-ons, Extensions
No summary!
406 Enabling the behavior - updating the status bar panel Add-ons, Extensions
No summary!
407 Enabling the behavior - updating the status periodically Add-ons, Extensions
No summary!
408 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.
409 Finding the file to modify Add-ons, Extensions
No summary!
410 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.
411 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.
412 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.
413 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:
414 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:
415 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.
416 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.
417 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.
418 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.
419 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.
420 Getting Started Add-ons, Guide, Themes
No summary!
421 In-Depth Add-ons, Themes
No summary!
422 Links Add-ons, Themes
No summary!
423 contents.rdf Add-ons, Themes
No summary!
424 toolbarBindings.xml Add-ons, Themes
No summary!
425 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.
426 Getting Started
The folder containing Seamonkey is called folder_with_seamonkey in this manual.
427 chrome.manifest
Copy the following text and paste it into a text file, then save that file as "chrome.manifest":
428 install.rdf
Copy the following text and paste it into a text file, then save that file as "install.rdf":
429 Creating a hybrid CD Developing Mozilla, Outdated_articles
No summary!
430 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.
431 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.
432 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/.
433 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.
434 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.
435 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.
436 Installing Dehydra Dehydra
It is recommended that you use SpiderMonkey revision AURORA_BASE_20110705 when building Dehydra.
437 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.
438 Developing New Mozilla Features Developing Mozilla, Outdated_articles
Tips For Contributing New Features To Mozilla.
439 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.
440 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.
441 Download Manager preferences
There are several preferences used by the Download Manager. This article provides a list of them.
442 Drag and Drop XUL
This section describes how to implement objects that can be dragged around and dropped onto other objects.
443 Drag and Drop Example XUL
An example of implementing drag and drop will be implemented in this section.
444 Drag and Drop JavaScript Wrapper XUL
No summary!
445 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.
446 Embedding FAQ Embedding Mozilla
No summary!
447 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++.
448 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.
449 Exception logging in JavaScript Extensions, Extensions:Tools, Guide, JavaScript, JavaScript:Tools, Tools, Web Development, Web Development:Tools
Technical review completed.
450 Existing Content
This is a list of existing mozilla.org documentation. It needs to be checked, prioritized, and migrated.
451 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.
452 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.
453 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:
454 Code snippets
This page documents how to perform custom actions with Firefox Sync via JavaScript.
455 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.
456 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.
457 Force RTL
(This is a temporary placeholder/stub for the Force RTL page)
458 GRE Gecko, XUL, XULRunner
No summary!
459 GRE Registration Gecko, XUL, XULRunner
No summary!
460 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.
461 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.
462 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.
463 Help Viewer Toolkit API, XUL, XULRunner
Help Viewer: Allows information to be shown to the user inside Mozilla.
464 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".
465 Helper Apps (and a bit of Save As) Outdated_articles, Uriloader
Image:overview.png
466 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.
467 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.
468 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.
469 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.,
470 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.
471 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.
472 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.
473 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.
474 popChallengeResponse NSS
The resultString will either be a base-64 encoded POPODecKeyRespContent message, or one of the following error strings:
475 Jetpack
476 Basics
Writes some information to the Error Console. You can find the console in the Extra Menu of Firefox.
477 Content
No summary!
478 Page modifications
This documentation is under development.  Please see the page modifications API proposal for now.
479 Extenders
No summary!
480 Jetpack Snippets
Bits of code that may come in handy. Feel free to add your own!
481 Libraries
Namespace: jetpack.lib
482 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.
483 Meta
No summary!
484 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
485 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
486 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.
487 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.
488 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:
489 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.
490 Multimedia
No summary!
491 Storage
No summary!
492 File access
Click on the paper-clip icon below for a demonstration of the file upload dialog.
493 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.
494 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.
495 System
No summary!
496 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.
497 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.
498 Clipboard Test
<style></style>
499 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.
500 System information
This documentation is under development.  Please see the system information API proposal for now.
501 UI
No summary!
502 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.
503 Notifications
The Notification Box appears at the bottom right corner of the browser and displays important information to the user.
504 Panel
Please refer to the Panels JEP.
505 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.
506 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.
507 Tabs
In this class you can find information about the tabs in your Firefox window.
508 Wiki Test Page
No summary!
509 jetpack.tab
No summary!
510 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.
511 slideBar
To implement a new slideBar within your jetpack code, use the method jetpack.slideBar.append(options)
512 Users
No summary!
513 aza
No summary!
514 Dropbox
No summary!
515 docs
No summary!
516 Meta
No summary!
517 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
518 Storage
No summary!
519 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.
520 System
No summary!
521 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.
522 UI
No summary!
523 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.
524 jspage
No summary!
525 statusBar
No summary!
526 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.
527 Litmus tests
Litmus tests are (non-automated) tests that are documented in the litmus database. See http://litmus.mozilla.org.
528 Makefile.mozextension.2
This Makefile is a modification of the Makefile.mozextention, found in Makefile for packaging an extension - MozillaZine Knowledge Base (2005).
529 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.
530 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.
531 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.
532 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.
533 Mozilla Application Framework Developing Mozilla, XUL, XULRunner
The Mozilla Application Framework: for powerful, easy to develop cross-platform applications
534 Mozilla Application Framework in Detail Developing Mozilla, XUL, XULRunner
No summary!
535 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.
536 Mozilla Modules and Module Ownership Developing Mozilla
REDIRECT http://www.mozilla.org/hacking/module-ownership.html
537 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.
538 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.
539 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.
540 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.
541 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.
542 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.
543 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.
544 .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.
545 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.
546 Cryptography Persona
The Persona identity system uses public key cryptography to ensure trust and security in authentication.
547 FAQ Persona
Persona is a complete implementation of a new, distributed login system from Mozilla.
548 Glossary Persona
Persona is a complete implementation of a new, distributed login system from Mozilla.
549 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.
550 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.
551 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.
552 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.
553 Persona Hosted Services Persona
To be truly successful and decentralized, Persona needs support from three different groups:
554 Protocol Overview Persona
Persona is built on the BrowserID protocol. This page describes the BrowserID protocol at a high level.
555 Quick Setup Persona
Adding the Persona login system to your site takes just five steps:
556 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.
557 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.
558 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.
559 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.
560 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().
561 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.
562 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:
563 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.
564 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().
565 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.
566 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.
567 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:
568 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.
569 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.
570 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.
571 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.
572 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.
573 Plug-n-Hack Tools Supported Security, plugnhack
574 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.
575 Porting NSPR to Unix Platforms NSPR
Last modified 16 July 1998
576 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.
577 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.
578 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
579 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.
580 BundleLibrary prism
No summary!
581 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:
582 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:
583 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.
584 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.).
585 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.
586 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.
587 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:
588 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.
589 Proxy UI
(Recently Added - some support for reading OS and account settings.)
590 Remote XUL XUL
How to use XUL delivered from a webserver, not as part of chrome.
591 SXSW 2007 presentations Presentations
Presentations about the Mozilla project given at the SXSW 2007 event in Austin, Texas.
592 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.
593 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.
594 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:
595 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!
596 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.
597 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.
598 Table Cellmap Gecko
The table layout use the cellmap for two purposes:
599 Table Cellmap - Border Collapse
This document describes the additional information that is stored for border collapse tables in the cellmap.
600 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.
601 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.
602 Tamarin JavaScript, Landing, Tamarin
No summary!
603 ABCasm
ABCasm - an ABC assembler
604 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.
605 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.
606 Actionscript Acceptance Tests
The majority of the acceptance tests are written in actionscript and located in test/acceptance.
607 Tamarin Acceptance Test Template
This is the test template for Tamarin acceptance tests (placed in test/acceptance/feature_name):
608 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>
609 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:
610 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:
611 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:
612 Tamarin Build System Documentation
No summary!
613 Tamarin Releases
This page tracks Tamarin source code releases, past, present and future.
614 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.
615 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.
616 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.
617 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
618 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.
619 The life of an HTML HTTP request Developing Mozilla, DocShell, Guide, Necko, NeedsUpdate
Image:url_load.gif
620 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.
621 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.
622 Treehydra Treehydra
Try the gcc python plugin instead: https://fedorahosted.org/gcc-python-plugin/.
623 Treehydra Build Instructions Dehydra
Follow Dehydra build instructions. This automatically builds Treehydra for you.
624 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.
625 URIScheme Necko, NeedsUpdate, URI, URL
List of Mozilla supported URI schemes
626 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):
627 Using Monotone With Mozilla CVS Build documentation, Developing Mozilla
No summary!
628 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.
629 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.
630 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.
631 Using Breakpoints in Venkman Tools, Venkman
This article continues a series of articles on Venkman that began with Venkman Introduction.
632 Venkman Internals Developing Mozilla, Tools, Venkman
Start with Venkman Information.
633 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.
634 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.
635 Why Embed Gecko Embedding Mozilla
Gecko - the Smart Embedding Choice
636 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.
637 XPInstall XPInstall, XPInstall_API_reference
No summary!
638 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.
639 Install Wizards (aka: Stub Installers) XPInstall
No summary!
640 Mac stub installer XPInstall
No summary!
641 Unix stub installer XPInstall
No summary!
642 Windows stub installer XPInstall
No summary!
643 Learn XPI Installer Scripting by Example XPInstall, XPInstall_API_reference
No summary!
644 Installer Script
No summary!
645 Using XPInstall to Install Plugins Add-ons, Plugins, XPInstall, XPInstall_API_reference
No summary!
646 Install script template Add-ons, Plugins, XPInstall
No summary!
647 XPInstall API reference XPInstall, XPInstall_API_reference
See complete list
648 Examples
Trigger Scripts and Install Scripts describes typical kinds of script that use the XPInstall API.
649 File.macAlias
In this example, a mac alias is created for software (AppleCD Audio Player) that is installed locally.
650 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.
651 Install.addDirectory
The Install object's addDirectory method queues an entire directory for installation once performInstall is called.
652 Install.addFile
The Install object's addFile method is the standard way to queue files for installation.
653 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.
654 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.
655 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.
656 Windows Install
This example shows the installation of a XPI in which user profile information is contained.
657 File Object
Use the File object to manipulate local files and directories during the installation process.
658 Methods
No summary!
659 Install Object XPInstall_API_reference
Use the Install object to manage the downloading and installation of software with the XPI Installation Manager.
660 Methods
No summary!
661 Properties
No summary!
662 InstallVersion Object
You use InstallVersion objects to contain version information for software.
663 Methods
No summary!
664 Properties
No summary!
665 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).
666 WinProfile Object
(Windows only) Windows developers use this object to manipulate the content of a Windows .ini file.
667 Methods
No summary!
668 WinReg Object
(Windows only)
669 Methods
The WinRegValue constructor creates a WinRegValue object.
670 WinRegValue
(Windows only)
671 XPJS Components Proposal Outdated_articles
Draft 1.0
672 XRE
No summary!
673 XTech 2005 Presentations Presentations
No summary!
674 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.
675 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.
676 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.
677 Rich Web
No summary!
678 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.
679 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.
680 XTech 2006 Presentations Presentations
No summary!
681 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.
682 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.
683 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.
684 Article
No summary!
685 Building XULRunner Build documentation, Developing Mozilla, XUL, XULRunner
No summary!
686 Building XULRunner with Python Accessibility, Build documentation, Developing Mozilla, XUL, XULRunner
No summary!
687 CommandLine Command Line, Guide, NeedsUpdate, XUL, XULRunner
Technical review completed.
688 Components XUL, XULRunner
Adding components to XULRunner is simple once you understand how XULRunner registers and saves the components.
689 Creating XULRunner Apps with the Mozilla Build System Build documentation, Developing Mozilla, XUL, XULRunner
No summary!
690 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.
691 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.
692 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.
693 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.
694 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.
695 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.
696 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.
697 MacFAQ XUL, XULRunner
(Note this document has NOT been reviewed for accuracy or completeness.)
698 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.
699 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:
700 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.
701 Using Crash Reporting in a XULRunner Application Crash_reporting, XUL, XULRunner
No summary!
702 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).
703 Using Mochitests in a XULRunner Application Guide, Testing, XUL
Technical review completed.
704 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.
705 What XULRunner Provides FAQ, XUL, XULRunner
Technical review completed.
706 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:
707 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.
708 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.
709 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.
710 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.
711 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.
712 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.
713 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.
714 XULRunner FAQ FAQ, XUL, XULRunner
This page is intended to answer frequently asked questions and correct common misconceptions about XULRunner.
715 XULRunner Hall of Fame Demos, XUL, XULRunner, enterprise
See also Featured Mozilla-based applications, many of which use XULRunner.
716 XULRunner tips Chrome URL, Command Line, Extension Manager, Extensions, FAQ, Password Manager, Preferences, Tips, XUL, XULRunner, branding
XULRunner Frequently Asked Questions. Work in progress.
717 XULRunner/Old Releases XUL, XULRunner
No summary!
718 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");
719 xulauncher
No summary!
720 ant script to assemble an extension Extensions, Extensions:Tools, Tools
This ant script helps to package an extension
721 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.
722 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.
723 calIFileType Interfaces
The calIFileType interface provides information about a specific file type.
724 xbDesignMode.js
No summary!
725 Archived open Web documentation Archive, Archived, Web
The documentation listed below is archived, obsolete material about open Web topics.
726 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.
727 Browser Feature Detection Compatibility, Cross-browser_Development, DOM, Gecko, Obsolete, Web Development
Summary: An experimental approach to discovering degree of support for Standards
728 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.
729 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.
730 E4X for templating E4X
E4X can be used for creating templates for dynamic content.
731 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.
732 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.
733 Accessing XML children
Normal JavaScript Objects use the . operator or [] notation to set properties.
734 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
735 Introduction E4X, JavaScript, XML
With E4X enabled, basic XML elements are valid syntax for variables. For instance
736 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:
737 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.
738 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.
739 LiveConnect Java, LiveConnect
(Please update or remove as needed.)
740 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.
741 LiveConnect Reference
This section documents the Java classes used for LiveConnect, along with their constructors and methods.
742 JSException
The public class JSException extends RuntimeException
743 JSObject
The public final class netscape.javascript.JSObject extends Object.
744 MSX Emulator (jsMSX) Canvas_examples, Examples, HTML:Canvas
No summary!
745 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.
746 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.
747 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.
748 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.
749 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:
750 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.
751 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.
752 Back to the Server: Server-Side JavaScript On The Rise
by Davey Waterson, JavaScript Architect, Aptana
753 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.
754 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:
755 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.
756 Styling the Amazing Netscape Fish Cam Page CSS
No summary!
757 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:
758 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.
759 Writing JavaScript for XHTML JavaScript, XHTML, XML
Technical review completed. Editorial review completed.
760 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.
761 Building Mozilla XForms XForms
Things to know first:
762 Community XForms
No summary!
763 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:
764 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.
765 Mozilla XForms Specials XForms
No summary!
766 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.
767 XForms Alert Element XForms
No summary!
768 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.
769 XForms Help Element XForms
No summary!
770 XForms Hint Element XForms
No summary!
771 XForms Input Element XForms
No summary!
772 XForms Label Element XForms
No summary!
773 XForms Message Element XForms
No summary!
774 XForms Output Element XForms
No summary!
775 XForms Range Element XForms
No summary!
776 XForms Repeat Element XForms
No summary!
777 XForms Secret Element XForms
No summary!
778 XForms Select Element XForms
No summary!
779 XForms Select1 Element XForms
No summary!
780 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.
781 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.
782 XForms Textarea Element XForms
No summary!
783 XForms Trigger Element XForms
Allows the user to initiate actions (see the spec). Actions are described by the XForms Action Module (see the spec).
784 XForms Upload Element XForms
No summary!
785 Other Resources XForms
No summary!
786 Requests For Enhancement XForms
No summary!
787 RFE to the Custom Controls XForms
No summary!
788 RFE to the Custom Controls Interfaces XForms
No summary!
789 RFE to the XForms API XForms
No summary!
790 Troubleshooting XForms Forms XForms
No summary!
791 Using XForms and PHP XForms
No summary!
792 XForms API Reference XForms
The XForms interfaces has the following naming convention:
793 XForms Config Variables XForms
No summary!
794 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.
795 XForms Custom Controls Examples XForms
No summary!
796 XForms Styling XForms
No summary!
797 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
798 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.
799 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.
800 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.
801 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.
802 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.
803 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.
804 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.
805 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.
806 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.
807 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.
808 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.
809 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.
810 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.
811 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.
812 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.
813 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.
814 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!
815 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.
816 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.
817 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.
818 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.
819 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).
820 Marionette for Interactive Python Firefox OS, Guide
This tutorial assumes you've set up Marionette for B2G.
821 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.
822 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.
823 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.
824 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.
825 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.
826 B2G OS APIs API, B2G API, b2g os api's
List of B2G OS APIs
827 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.
828 Using the AudioChannels API API, Audio, Audio Channels API, Firefox OS, Guide, Non-standard
The different audio channels are as follows:
829 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.
830 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.
831 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.
832 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.
833 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.
834 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.
835 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.
836 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.
837 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.
838 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.
839 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.
840 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.
841 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.
842 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.
843 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.
844 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.
845 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.
846 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.
847 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.
848 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.
849 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.
850 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.
851 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.
852 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.
853 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.
854 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.
855 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.
856 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.
857 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.
858 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.
859 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.
860 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.
861 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.
862 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.
863 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.
864 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.
865 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.
866 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.
867 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.
868 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.
869 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.
870 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.
871 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.
872 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.
873 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.
874 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.
875 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.
876 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.
877 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.
878 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.
879 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.
880 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.
881 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).
882 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.
883 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.
884 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).
885 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.
886 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.
887 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.
888 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.
889 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.
890 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.
891 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.
892 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.
893 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.
894 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.
895 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.
896 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.
897 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.
898 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).
899 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.
900 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.
901 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.
902 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.
903 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.
904 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.
905 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.
906 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.
907 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.
908 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.
909 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.
910 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.
911 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.
912 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.
913 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.
914 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.
915 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.
916 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.
917 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.
918 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.
919 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.
920 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.
921 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.
922 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.
923 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.
924 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.
925 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.
926 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.
927 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.
928 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.
929 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.
930 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.
931 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.
932 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.
933 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.
934 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.
935 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.
936 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.
937 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.
938 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.
939 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.
940 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.
941 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.
942 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.
943 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.
944 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.
945 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.
946 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.
947 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.
948 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.
949 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.
950 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.
951 CameraControl.setConfiguration() API, DOM, DOM Reference, Firefox OS, Graphics, Method, Non Standard, Reference
Editorial review completed.
952 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.
953 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.
954 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().
955 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).
956 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.
957 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.
958 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.
959 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.
960 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.
961 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.
962 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.
963 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.
964 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.
965 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.
966 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.
967 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.
968 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.
969 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.
970 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.
971 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.
972 DOMApplication.launch() API, Apps, DOM, Reference, Web
This method doesn't return anything.
973 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.
974 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.
975 DOMCursor.done API, DOM, NeedsBrowserCompatibility, Non Standard, Property, Reference
The done property indicate if the DOMCursor has reached the last result.
976 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.
977 DOMRequest.error API, DOM, Non Standard, Property, Reference
This property can contain error information in a DOMError object.
978 DOMRequest.onerror API, DOM, Non Standard, Property, Reference
This property specifies a callback function to be run when a DOMRequest fails.
979 DOMRequest.onsuccess API, DOM, Non Standard, Property, Reference
This property specifies a callback function to be run when a DOMRequest completes successfully.
980 DOMRequest.readyState API, DOM, Non Standard, Property, Reference
This property is a string that indicates whether or not a DOMRequest operation has finished running.
981 DOMRequest.result API, DOM, Non Standard, Property, Reference
This property provides the result value from a DOMRequest operation.
982 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.
983 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.
984 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.
985 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.
986 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.
987 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.
988 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.
989 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.
990 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.
991 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.
992 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.
993 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.
994 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.
995 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).
996 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.
997 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.
998 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.
999 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.
1000 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.
1001 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.
1002 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.
1003 DataStoreCursor.store API, Data Store, Data Store API, DataStoreCursor, Database, Property, Reference, Référence(2), Storage, Store
A DataStore object.
1004 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.
1005 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.
1006 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.
1007 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.
1008 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.
1009 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.
1010 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.
1011 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.
1012 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.
1013 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.
1014 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).
1015 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.
1016 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.
1017 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.
1018 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.
1019 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.
1020 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.
1021 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.
1022 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.
1023 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.
1024 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).
1025 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.
1026 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.
1027 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.
1028 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.
1029 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.
1030 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.
1031 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.
1032 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.
1033 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.
1034 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)
1035 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.
1036 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.
1037 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.
1038 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.
1039 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.
1040 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.
1041 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
1042 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.
1043 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.
1044 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.
1045 HTMLMediaElement (Firefox OS extensions)
No summary!
1046 HTMLMediaElement.mozAudioChannelType API, AudioChannels, Firefox OS, HTMLMediaElement, Non-standard, Property, Reference, Référence(2)
Technical review completed.
1047 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 his 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.
1048 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.
1049 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.
1050 Mobile Connection API, B2G, Firefox OS, Non Standard, Reference, Référence(2), WebAPI
This API has 2 purposes:
1051 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.
1052 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.
1053 MozActivity API, B2G, Firefox OS, Non-standard, Web Activities, WebAPI
The MozActivity interface allows apps to delegate an activity to another app.
1054 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.
1055 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.
1056 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.
1057 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.
1058 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.
1059 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.
1060 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.
1061 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.
1062 MozAlarmsManager.add() API, B2G, Firefox OS, Method, Non Standard, WebAPI, alarm
The add method is used to retrieve a list of pending alarms.
1063 MozAlarmsManager.getAll() API, B2G, Firefox OS, Method, Non Standard, Reference, WebAPI, alarm
The getAll method is used to retrieve a list of pending alarms.
1064 MozAlarmsManager.remove() API, B2G, Firefox OS, Method, Non-standard, Reference, WebAPI, alarm
The remove method is used to retrieve a list of pending alarms.
1065 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.
1066 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.
1067 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.
1068 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).
1069 MozContact.bday API, B2G, Contact, Firefox OS, Non Standard, Property, Reference, WebAPI
The bday property represents the birthday date of the contact.
1070 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.
1071 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.
1072 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.
1073 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).
1074 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.
1075 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.
1076 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.
1077 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.
1078 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.
1079 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.
1080 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.
1081 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.
1082 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.
1083 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.
1084 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.
1085 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.
1086 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.
1087 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.
1088 MozContact.sex API, B2G, Contact, Firefox OS, Non-standard, Property, Reference, WebAPI
The sex property represents the actual sex of the contact.
1089 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.
1090 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.
1091 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.
1092 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.
1093 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.
1094 MozContactChangeEvent.reason API, B2G, Contact, Firefox OS, Non-standard, Property, Reference
The reason property indicates what kind of change was made to the contact.
1095 MozIccManager API, B2G, Firefox OS, NeedsExample, Non-standard, Reference, Référence(2)
The MozIccManager interface gives access to ICC related functionalities.
1096 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.
1097 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.
1098 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.
1099 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.
1100 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.
1101 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.
1102 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).
1103 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.
1104 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.
1105 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.
1106 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.
1107 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).
1108 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.
1109 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.
1110 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).
1111 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).
1112 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.
1113 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.
1114 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.
1115 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.
1116 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.
1117 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).
1118 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.
1119 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.
1120 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.
1121 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.
1122 MozMobileCellInfo API, B2G, Firefox OS, Mobile, Non-standard, Reference, Référence(2)
The MozMobileCellInfo interface allow to access to cell location information.
1123 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.
1124 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.
1125 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.
1126 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.
1127 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.
1128 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.
1129 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.
1130 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)).
1131 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.
1132 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.
1133 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.
1134 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.
1135 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.
1136 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.
1137 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.
1138 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.
1139 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.
1140 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.
1141 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.
1142 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.
1143 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.
1144 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.
1145 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.
1146 MozMobileConnection.setCallForwardingOption() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2)
The setCallForwardingOption method is used to configure call forward options.
1147 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.
1148 MozMobileConnection.unlockCardLock() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2)
The unlockCardLock method is used to unlock a card lock.
1149 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.
1150 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.
1151 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.
1152 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).
1153 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.
1154 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.
1155 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.
1156 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.
1157 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).
1158 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.
1159 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.
1160 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.
1161 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.
1162 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.
1163 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.
1164 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.
1165 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.
1166 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.
1167 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.
1168 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.
1169 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.
1170 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.
1171 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.
1172 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.
1173 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.
1174 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.
1175 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.
1176 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.
1177 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.
1178 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.
1179 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.
1180 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.
1181 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.
1182 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.
1183 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.
1184 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.
1185 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.
1186 MozMobileMessageThread API, B2G, Firefox OS, Mobile, Non-standard, Reference, Référence(2), WebSMS
The DOM MozMobileMessageThread object represents a thread of messages.
1187 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.
1188 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.
1189 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.
1190 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.
1191 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.
1192 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.
1193 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.
1194 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.
1195 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.
1196 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.
1197 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.
1198 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.
1199 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.
1200 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.
1201 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).
1202 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.
1203 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
1204 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.
1205 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.
1206 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.
1207 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.
1208 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.).
1209 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.
1210 MozNFC.ontagfound API, Interface, Non-standard, Property, Reference, Référence(2)
tag : The MozNFCTag object.
1211 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
1212 MozNFCPeer API, Firefox OS, Interface, MozNFCPeer, NFC, NFCPeer, Reference
The NFC implementation in Gecko follows the NFC Forum specifications.
1213 MozNFCPeer.sendFile() API, Firefox OS, Method, MozNFCPeer, NFC, NFCPeer, Reference, sendFile
The Blob file reference to be transferred.
1214 MozNFCPeer.sendNDEF() API, Firefox OS, Method, MozNFCPeer, NFC, NFCPeer, Reference, sendNDEF
The sendNDEF() method of the MozNFCPeer interface is used
1215 MozNFCTag API, Firefox OS, MozNFCTag, NFC, NFCTag, Reference
MozNFCTag contains the basic functions needed to read, write, and inspect NDEF-compatible NFC Tags.
1216 MozNFCTag.close() API, Firefox OS, Method, MozNFCTag, NFC, NFCTag, Reference, close
The close() method of the MozNFCTag interface closes a current NFC Tag session.
1217 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.
1218 MozNFCTag.getDetailsNDEF() API, Firefox OS, Method, MozNFCTag, NFC, NFCTag, Reference
The getDetailsNDEF() method of the MozNFCTag interface retrieves basic metadata describing the NDEF tag.
1219 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.
1220 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.
1221 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.
1222 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.
1223 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.
1224 MozNetworkStats.data API, B2G, DOM, DOM Reference, Firefox OS, Non Standard, Property, Reference, Référence(2)
Editorial review completed.
1225 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.
1226 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.
1227 MozNetworkStatsData API, B2G, Firefox OS, Network Stats, Non-standard, Reference, Référence(2)
The MozNetworkStatsData objects represent a chunk of data usage statistics.
1228 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.
1229 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.
1230 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.
1231 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.
1232 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.
1233 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.
1234 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.
1235 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.
1236 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.
1237 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.
1238 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.
1239 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.
1240 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.
1241 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.
1242 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.
1243 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.
1244 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.
1245 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.
1246 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.
1247 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.
1248 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.
1249 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.
1250 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.
1251 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.
1252 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.
1253 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().
1254 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).
1255 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).
1256 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.
1257 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.
1258 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.
1259 MozSmsEvent API, DOM, Mobile, Non-standard, WebSMS
The DOM MozSmsEvent represents events related to WebSMS text messages.
1260 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
1261 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.
1262 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.
1263 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.
1264 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.
1265 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.
1266 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.
1267 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.
1268 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.
1269 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.
1270 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.
1271 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.
1272 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.
1273 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.
1274 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.
1275 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).
1276 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.
1277 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.
1278 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.
1279 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.
1280 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.
1281 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.
1282 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.
1283 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.
1284 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.
1285 MozTimeManager API, B2G, Firefox OS, Non-standard, Time
The MozTimeManager interface is used to set the system time on a device.
1286 MozTimeManager.set() API, B2G, Firefox OS, Method, Non-standard, Time
The set method is used to change the system time.
1287 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.
1288 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.
1289 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.
1290 MozVoicemail.getStatus() API, Firefox OS, Method, MozVoicemail, Non-standard, Reference
The getStaus method is used to access the current status of a specified service.
1291 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.
1292 MozVoicemailEvent API, B2G, Firefox OS, Reference, voicemail
The MozVoicemailEvent API provides access to the event information when a statuschange event is triggered.
1293 MozVoicemailEvent.status API, B2G, Firefox OS, Property, Reference, voicemail
The status property value provides the voicemail status that caused the event to be triggered.
1294 MozVoicemailStatus API, B2G, Firefox OS, Reference, voicemail
The MozVoicemailStatus API provides access to a voicemail status.
1295 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).
1296 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.
1297 MozVoicemailStatus.returnMessage API, B2G, Firefox OS, Property, Reference, voicemail
The returnMessage property represents a displayable call message for the voicemail status.
1298 MozVoicemailStatus.returnNumber API, B2G, Firefox OS, Property, Reference, voicemail
The returnNumber property represents the return call number for the voicemail status.
1299 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.
1300 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.
1301 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.
1302 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.
1303 MozWifiConnectionInfoEvent API, B2G, Firefox OS, Non-standard, Reference, WiFi
The MozWifiConnectionInfoEvent interface provides developers with information regarding the state of the current Wifi connection.
1304 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.
1305 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.
1306 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.
1307 MozWifiConnectionInfoEvent.relSignalStrength API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The relSignalStrength property value provides the relative strength of the signal.
1308 MozWifiConnectionInfoEvent.signalStrength API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The signalStrength property value provides the absolute strength of the signal in dBm.
1309 MozWifiP2pGroupOwner API, Firefox OS, Interface, Non-standard, WiFi, Wifi Direct
The MozWifiP2pGroupOwner is an interface that represents the group owner of WiFi Direct connection.
1310 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.
1311 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).
1312 MozWifiStatusChangeEvent API, Interface, Non-standard, Reference, WiFi
The MozWifiStatusChangeEvent interface provides developers with information regarding the current status of the Wifi connection.
1313 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.
1314 MozWifiStatusChangeEvent.status API, B2G, Firefox OS, Non Standard, Property, Reference, Référence(2), WiFi
The status property value provides the current connection status.
1315 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.
1316 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.
1317 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.
1318 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.
1319 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.
1320 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.
1321 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).
1322 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.
1323 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.
1324 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.
1325 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.
1326 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.
1327 Navigator.mozContacts API, Contact, Firefox OS, Property, Reference
Return a ContactManager to access and manage all the contacts available on the device.
1328 Navigator.mozFMRadio API, Non-standard, Property
Returns a FMRadio object you can use to access to the device FM radio.
1329 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).
1330 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.
1331 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.
1332 Navigator.mozNetworkStats API, Firefox OS, Interface, Network Stats, Non-standard, Property, Reference
The MozNetworkStatsManager interface provides methods and properties to monitor data usage.
1333 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.
1334 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.
1335 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.
1336 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.
1337 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.
1338 Navigator.mozSms API, Firefox OS, Mobile, Obsolete, Property, WebSMS
Returns an SmsManager object you can use to receive and send SMS messages.
1339 Navigator.mozTCPSocket API, Firefox OS, Non-standard, Property, Reference, TCP Socket
Returns a TCPSocket object you can use to open other sockets.
1340 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.
1341 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.
1342 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.
1343 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.
1344 Navigator.removeIdleObserver() API, Firefox OS, Idle, Method, Non-standard, Reference
This method is used to remove an idle observer previously set with navigator.addIdleObserver.
1345 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.
1346 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.
1347 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.
1348 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.
1349 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).
1350 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.
1351 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.
1352 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.
1353 Power Management API API, Firefox OS, Guide, Non Standard, Power Management
The Power Management API provides tools to manage a device's power consumption.
1354 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.
1355 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).
1356 SettingsLock.clear() API, B2G, Firefox OS, Method, Non-standard, Reference, Référence(2), Settings
This method clears the queue of SettingsLock objects.
1357 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.
1358 SettingsLock.get() API, B2G, Firefox OS, Method, Non-standard, Reference, Référence(2), Settings
This method fetches the value of a specified setting.
1359 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.
1360 SettingsManager API, B2G, Firefox OS, Non-standard, Settings
Provides access to the device's settings.
1361 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.
1362 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.
1363 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.
1364 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().
1365 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.
1366 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.
1367 TCPServerSocket.close() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), TCP Socket
The close method cleanly closes the server socket.
1368 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.
1369 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.
1370 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.
1371 TCPSocket API, B2G, Firefox OS, Non-standard, Reference, TCP Socket
The TCPSocket interface provides access to a raw TCP socket.
1372 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.
1373 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.
1374 TCPSocket.close() API, B2G, Firefox OS, Method, Non Standard, Reference, Référence(2), TCP Socket
The close method cleanly closes the connection.
1375 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.
1376 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.
1377 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.
1378 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.
1379 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.
1380 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.
1381 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.
1382 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.
1383 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.
1384 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.
1385 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.
1386 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.
1387 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).
1388 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.
1389 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.
1390 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.
1391 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.
1392 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.
1393 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.
1394 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.
1395 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.
1396 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.
1397 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.
1398 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.
1399 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.
1400 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..
1401 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.
1402 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.
1403 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.
1404 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.
1405 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.
1406 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().
1407 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().
1408 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.
1409 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.
1410 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.)
1411 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.
1412 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.
1413 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.
1414 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.
1415 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.
1416 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.
1417 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.)
1418 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+.
1419 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.
1420 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.
1421 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.
1422 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.
1423 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.
1424 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.
1425 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.
1426 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.
1427 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.
1428 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.
1429 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().)
1430 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.
1431 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.
1432 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.
1433 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.
1434 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.
1435 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+.
1436 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.
1437 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.
1438 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.
1439 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.
1440 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.
1441 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.
1442 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.
1443 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.
1444 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.
1445 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.
1446 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.
1447 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.
1448 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.)
1449 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.)
1450 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.
1451 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.
1452 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.
1453 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.
1454 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.
1455 UDPSocket
No summary!
1456 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.
1457 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.
1458 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.
1459 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.
1460 WifiManager API, Firefox OS, Reference, WiFi
The WifiManager API provides access to the wifi device capability.
1461 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.
1462 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.
1463 WifiManager.connectionInformation API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The connectionInformation property value provides extra information about the current connection.
1464 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).
1465 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.
1466 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.
1467 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.
1468 WifiManager.macAddress API, B2G, Firefox OS, Non-standard, Property, Reference, WiFi
The macAddress property value provides the wifi adapter's MAC address.
1469 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.
1470 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.
1471 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.
1472 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.
1473 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.
1474 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.
1475 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.
1476 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.
1477 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.
1478 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.
1479 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.
1480 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.
1481 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.
1482 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.
1483 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.
1484 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.
1485 Alcatel One Touch Fire E Alcatel Mobiles, Alcatel One Touch Fire E, Firefox OS, Specifications of Alcatel One Touch Fire E
No summary!
1486 Alcatel One Touch Pixi 3 (3.5) Firefox OS, Landing, Phones
No summary!
1487 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.
1488 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.
1489 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.
1490 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.
1491 Firefox OS device features Buttons and controls, Firefox OS, Hardware, Requirements
A basic Firefox OS device has a small number of physical hardware buttons:
1492 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.
1493 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.
1494 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.
1495 Fx0 Firefox OS, Fx0, KDDI, Phone, consumer
You can find more of the device specifications listed on our Phone and device specs page.
1496 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.
1497 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.
1498 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.
1499 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.
1500 LG fireweb Firefox OS, Fireweb, Phone, consumer, lg
You can find more of the device specifications listed on our Phone and device specs page.
1501 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.
1502 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.
1503 Orange Klif Firefox OS, Guide, Orange KLIF, Phone, consumer
You can find more of the device specifications listed on the Features and Specs Page.
1504 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.
1505 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.
1506 Spice Fire One MI FX2 Firefox OS, Landing, Phones
You can find more of the device specifications listed on our Features and specs page.
1507 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.
1508 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.
1509 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.
1510 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.
1511 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.
1512 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.
1513 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.
1514 Building for Fairphone
No summary!
1515 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.
1516 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.
1517 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.
1518 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.
1519 Build legacy branches
Legacy branches of Firefox OS need multiarch packages installed. Newer operating systems do not have these installed by default.
1520 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.
1521 Compatible Devices B2G OS phones, B2G OS supported phones
These devices are official reference devices for developing B2G OS.
1522 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.
1523 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:
1524 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.
1525 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.
1526 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.
1527 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.
1528 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.
1529 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.
1530 Debugging B2G using Valgrind Debugging, Firefox OS, Mobile, valgrind
S
1531 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:
1532 Debugging and security testing with Firefox OS Apps, Debugging, Firefox OS, Security, Testing
This guide includes the following subsections:
1533 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.
1534 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.
1535 Firefox OS crash reporting Debugging, Firefox OS, QA, Testing, crash, crash reports
The following instructions assume that you have already followed these three steps:
1536 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.
1537 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.
1538 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.
1539 Setting up to debug Firefox OS using Firefox Developer Tools Debugging, Firefox OS
Technical review completed.
1540 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.
1541 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.
1542 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.
1543 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.
1544 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.
1545 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:
1546 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.
1547 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.
1548 Modifying the hosts file Firefox OS, hosts
On the phone, go the Developer settings panel and check:
1549 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.
1550 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.
1551 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.
1552 Simulator Walkthrough (4.0)
In this page we'll debug a very simple (but very buggy!) web app using the Firefox OS Simulator.
1553 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.
1554 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.
1555 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.
1556 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.
1557 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.
1558 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.
1559 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.
1560 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.
1561 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.
1562 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.
1563 App permissions Apps, Firefox OS, Intermediate, Permissions, Reference, Référence(2), WebAPI
The three levels of permission, in brief, are:
1564 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.
1565 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.
1566 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.
1567 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.
1568 Firefox Accounts on Firefox OS
This article provides an overview of using Firefox Accounts in Firefox OS.
1569 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.
1570 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.
1571 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.)
1572 Banners Design, Firefox OS, Gaia, banners, building blocks
Status 2.0 implementation
1573 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:
1574 Buttons Buttons, Design, Firefox OS, Gaia, building blocks
No summary!
1575 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.
1576 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:
1577 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.
1578 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.)
1579 Dialog B2G, Design, Dialog, Firefox OS, Gaia, building blocks, confirm
No summary!
1580 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.
1581 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.
1582 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.
1583 Firefox OS 1.x building blocks Apps, B2G, Firefox OS, Firefox OS UX, UX
No summary!
1584 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.
1585 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.
1586 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.
1587 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).
1588 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.
1589 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.
1590 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.
1591 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.
1592 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.
1593 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.
1594 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.
1595 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."
1596 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.
1597 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.
1598 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.
1599 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.
1600 Firefox OS 2.0 Building Block implementation 2.0, Firefox OS, building blocks, implementation
No summary!
1601 Firefox OS 2.3 web components B2G, Design, Firefox OS, Landing, UI, Web Components, building blocks
No summary!
1602 Header B2G, Design, Firefox OS, Gaia, building blocks, header
This article describes the implementation and possible interactions with the header.
1603 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.
1604 Header 2.3 implementation 2.3, Firefox OS, Gaia, Tutorial, building blocks, gaia-header, header, implementation, web component
Technical review completed.
1605 Input area B2G, Design, Firefox OS, Gaia, building blocks, input area
This article describes the implementation and possible interactions with the input-area.
1606 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.
1607 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:
1608 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.
1609 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.)
1610 List items B2G, Design, Firefox OS, Gaia, building blocks, list items, lists
This article describes the implementation of list items.
1611 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.
1612 Picker B2G, Design, Firefox OS, Gaia, Picker, building blocks
None as yet.
1613 Progress and activity B2G, Design, Firefox OS, Gaia, activity, building blocks, progress
This article describes the use of progress bars and activity toolboxes.
1614 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.
1615 Scrolling B2G, Design, Firefox OS, Gaia, building blocks, scrolling
This article describes the implementation and possible interactions with the scroll bar.
1616 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.
1617 Search B2G, Design, Firefox OS, Gaia, Search, building blocks
None as yet.
1618 Select mode B2G, Firefox OS, Gaia, building blocks, select mode
Edit mode 2.0 implementation
1619 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.)
1620 Slider B2G, Design, Firefox OS, Gaia, building blocks, seekbar, slider
This article describes the implementation and possible interactions with the slider.
1621 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.
1622 Subheader B2G, Design, Firefox OS, Gaia, building blocks, subheader
None as yet.
1623 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.
1624 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:
1625 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:
1626 Tab/Filter B2G, Design, Firefox OS, Gaia, Tab, building blocks, filter
This article describes filters and their implementation.
1627 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.
1628 Toolbars B2G, Design, Firefox OS, Gaia, Toolbar, building blocks

1629 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.
1630 Value selector B2G, Design, Firefox OS, Gaia, Tutorial, Value selector, building blocks
No summary!
1631 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.
1632 Firefox OS app performance Apps, Firefox OS, Performance
This page lists performance-related topics specific to Firefox OS.
1633 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.
1634 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.
1635 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.
1636 Firefox OS copy styleguide Apps, B2G, Design, Firefox OS, Firefox OS UX, UX, Writing, copy
No summary!
1637 Firefox OS design asset library Apps, B2G, Firefox OS, Firefox OS UX, UX
No summary!
1638 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.
1639 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:
1640 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:
1641 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).
1642 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).
1643 Lock Screen Firefox OS, Guide, Internationalization
Numbers generally still run left to right (A). Military (24 hour) format is favored.
1644 Firefox OS transitions Animations, B2G, Firefox OS, Gaia, Landing, Transitions
No summary!
1645 App invoking another app Animations, App invokes app, Firefox OS, Gaia, Transitions, Tutorial
1646 In-app navigation Animations, Example, Firefox OS, Gaia, In-app navigation, Transitions
1647 Invoking the keyboard Animations, Firefox OS, Gaia, Guide, Transitions, keyboard
1648 Opening and closing apps Animations, Firefox OS, Gaia, Guide, Transitions, closing, opening
1649 Opening and dismissing prompts Animations, Firefox OS, Gaia, Guide, Transitions, prompts
1650 Starting and finishing calls Animations, Firefox OS, Gaia, Guide, Transitions, calls
Starting a call:
1651 Switching tasks Animations, Firefox OS, Gaia, Guide, Transitions, task switching
1652 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.
1653 Reference apps
We have put together a number of sample apps for you to download, install, play with and learn from. Have fun!
1654 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.
1655 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.
1656 General Notes Apps, IndexedDB, Offline
General Notes is a simple note app that allows you to sync local and remote content.
1657 Podcasts
No summary!
1658 Roller App
No summary!
1659 Webfighter Apps, Canvas, Payments, fullscreen
No summary!
1660 rtcamera Apps, Blob, IndexedDB, URL, Web Workers, WebGL, WebRTC, XMLHttpRequest, getusermedia, x-tags
No summary!
1661 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.
1662 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.
1663 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.
1664 CHIRIMEN FAQ Boot to Gecko, CBC, MozOpenHard
No summary!
1665 CHIRIMEN quick start guide
CHIRIMEN quick start guide moved to chirmen.org.
1666 Development-environment preparation section windows version CHIRIMEN, Firefox WebIDE
Page moved to chirimen.org.
1667 Layout of the connectors CHIRIMEN, Connectors
Page moved to chrimen.org.
1668 Startup section CHIRIMEN
Page moved to chrimen.org.
1669 firmware update guide for windows CHIRIMEN, Windows
Page moved to chrimen.org.
1670 How to get OS image
See OS updating section of Quick Start Guide.
1671 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.
1672 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.
1673 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.
1674 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.
1675 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.
1676 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.
1677 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.
1678 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.
1679 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.
1680 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.
1681 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.
1682 Application security Apps, Firefox OS, Guide, Mobile, Security
The key Web app security controls introduced by Firefox OS are:
1683 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.
1684 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.
1685 Installing and updating applications Apps, Firefox OS, Guide, Installing, Updating
This article serves as a guide to the application update process on Firefox OS.
1686 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.
1687 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.
1688 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)
1689 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.
1690 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.
1691 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.
1692 Customizing the keyboard in B2G OS Firefox OS, Guide, keyboard
Two major keyboard features have been implemented in Firefox OS, as of October 2013.
1693 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.
1694 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
1695 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.
1696 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.
1697 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.
1698 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.
1699 Market customizations guide Customization, Firefox OS, Gaia, Marketplace, build
Requires Firefox OS 1.0.1
1700 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:
1701 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.
1702 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.
1703 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.
1704 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.
1705 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.
1706 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.
1707 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.
1708 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.
1709 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.
1710 Open web apps quickstart Apps, Quickstart
Quickstart information on coding Open Web Apps.
1711 App development for Web developers Apps, páginas_a_traducir
The minimum requirements are few:
1712 App development for mobile developers Apps, Mobile
For mobile application developers, the open web apps project offers these advantages:
1713 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.
1714 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.
1715 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.
1716 Intro to Open Web Apps Apps, Open Web Apps
Multi devices
1717 Intro to manifests
App manifest
1718 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!
1719 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.
1720 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.
1721 Porting B2G OS Firefox OS, porting
This page lists the available resources for porting B2GOS.
1722 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.)
1723 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.
1724 Porting on CyanogenMod B2G, B2G OS, cm-b2g, cyanogenmod, porting b2g os to cyanogenmod
Editorial review completed.
1725 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.
1726 Resources Firefox OS
Resources for App hackers, as generated from our workshops
1727 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.
1728 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.
1729 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.
1730 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.
1731 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.
1732 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.
1733 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.
1734 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.
1735 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.
1736 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.
1737 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.
1738 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.
1739 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.
1740 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.
1741 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.
1742 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.
1743 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.
1744 Troubleshooting B2G OS B2GOS, Mobile, troubleshooting
This article provides tips for resolving common problems you may have while using B2G OS.
1745 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.
1746 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.
1747 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.
1748 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.
1749 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.
1750 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.
1751 Web applications Web applications, Web apps
This page is intended to be a first, non thorough, attempt to collect web apps.
1752 Beginner tutorials
This page includes archived beginners tutorials, from various places around MDN.
1753 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.
1754 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.
1755 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.
1756 XUL user interfaces Advanced, CSS, CSS:Getting_Started, Example, Guide, NeedsUpdate, Web, XUL
This page illustrates Mozilla's specialized language for creating user interfaces.
1757 Case Sensitivity in class and id Names CSS, HTML
No summary!
1758 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.
1759 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.
1760 Element RSS, RSS:Element_Reference
No summary!
1761 title RSS, RSS:Element_Reference
No summary!
1762 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.
1763 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.
1764 Index
Found 2266 pages:
1765 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.
1766 Install.js Add-ons, Extensions, XPInstall_API_reference
See also this article from XulPlanet's Main Tutorial.
1767 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.
1768 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.
1769 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.
1770 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.
1771 MDN
The documentation listed below is archived, obsolete material about MDN itself.
1772 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.
1773 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.
1774 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.
1775 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.
1776 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.
1777 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.
1778 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.
1779 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.
1780 Current events
No summary!
1781 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.
1782 CSS Quick Learn CSS
helps to quickly learn CSS for the development of webpages and become a better web designer.
1783 Design Document MDC Project archives
No summary!
1784 Contribution and Maintenance
No summary!
1785 Footer
No summary!
1786 MDC Community Index Page
No summary!
1787 MDC Content Page
No summary!
1788 MDC Content Page (for printing)
No summary!
1789 MDC Home Page
No summary!
1790 MDC News Index Page
No summary!
1791 MDC Reference Index Page
No summary!
1792 MDC Reference Library Page
No summary!
1793 MDC Topic Page
No summary!
1794 MDC WebWatch Index Page
No summary!
1795 Navigation Bar
No summary!
1796 Page Tools
No summary!
1797 Returning User
No summary!
1798 Search Box
No summary!
1799 Searching for Information
No summary!
1800 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.
1801 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.
1802 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.
1803 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.
1804 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.
1805 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.
1806 Editing MDN pages
This page describes some common tasks when editing MDN pages.
1807 Examples
No summary!
1808 Alternate License Block
No summary!
1809 Original Document Information
No summary!
1810 Existing Content/DOM in Mozilla
< MDC:Existing Content
1811 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.
1812 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:
1813 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.
1814 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.
1815 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.
1816 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.
1817 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.
1818 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.
1819 Needs Redirect
If you have
1820 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.
1821 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.
1822 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.
1823 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.
1824 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).
1825 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.
1826 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.
1827 TOC page MDN
The page begins with a brief summary of the document suite for which this is an index or table of contents.
1828 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.
1829 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!
1830 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).
1831 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.
1832 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.
1833 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.
1834 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.
1835 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.
1836 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.
1837 Makefile - .mk files
No summary!
1838 Marketplace
Technical review completed. Editorial review completed.
1839 API Archive, Marketplace
Marketplace-related APIs have been removed, therefore the information covering them has been archived.
1840 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.
1841 Error object Apps, Apps API
In the Open Web apps JavaScript API, a DOMError object is returned by a function when an error occurs.
1842 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.
1843 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.
1844 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.
1845 navigator.mozApps.mgmt.list Apps, Apps API
Lists all installed apps in the user's repository.
1846 navigator.mozApps.mgmt.uninstall Apps, Apps API
Uninstalls an app from the user's repository.
1847 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.
1848 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
1849 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.
1850 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().
1851 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.
1852 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.
1853 DOMApplicationsRegistry.checkInstalled() API, Apps, Apps API, Method
Gets information about the given app. This can be used to determine if the app is installed.
1854 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.
1855 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.)
1856 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.
1857 DOMApplicationsRegistry.installPackage API, Apps, DOMApplicationsRegistry, Firefox OS, Method, NeedsContent
Installs a packaged app.
1858 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.
1859 Navigator_(Marketplace) Archive, Marketplace
Marketplace-specific navigator extensions that have now been deprecated/obsoleted.
1860 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.
1861 Monetization Apps, Marketplace
Monetization topics that have now been archived due to relevant functionality being removed from the Firefox Marketplace.
1862 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.
1863 App payout - Brazil Apps, Web Payment
No summary!
1864 App payout - Colombia Apps, Web Payments
No summary!
1865 App payout - Germany Apps, Web Payments
No summary!
1866 App payout - Hungary Apps, Web Payments
No summary!
1867 App payout - Mexico Apps, Web Payments
No summary!
1868 App payout - Poland Apps, Web Payment
No summary!
1869 App payout - Spain Apps, Web Payment
No summary!
1870 App payout - United Kingdom Apps, Web Payments
App pricing
1871 App payout - United States Apps, Web Payments
No summary!
1872 App payout - Venezuela Apps, Web Payment
No summary!
1873 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.
1874 In-app Payments Structure
In-app payments information.
1875 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.
1876 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.
1877 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.
1878 Introduction — Monetization Apps, Firefox OS, Intro, Marketplace
No summary!
1879 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.
1880 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.
1881 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.
1882 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.
1883 Options Archive, Marketplace
Publishing options that are no longer available, hence the information being archived.
1884 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.
1885 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.
1886 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.
1887 Publishing Archive, Marketplace
Publishing details that are no longer available, hence the information being archived.
1888 Pricing
Marketplace pricing information that is now obsolete, since this functionality has been removed from the Firefox Marketplace.
1889 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.
1890 Boku Apps, Firefox OS, Guide, Marketplace
If you're unclear about any of the following instructions, please refer to the Step by step guide.
1891 In-app products Apps, Firefox OS, Guide, Marketplace
This page describes how to create in-app products within Firefox Marketplace for use with fxPay.
1892 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.
1893 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.
1894 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.
1895 Publishing an existing mobile app to Desktop Apps, Desktop, Marketplace, publishing
1896 Misc top level
These pages were moved from the top level of MDN in a spate of furious reorganization.
1897 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.
1898 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.
1899 Defining Cross-Browser Tooltips CSS, Cross-browser_Development, Guide, Junk, Web Development
No summary!
1900 Environment variables affecting crash reporting Crash_reporting
No summary!
1901 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.
1902 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.
1903 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.
1904 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.
1905 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.
1906 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.
1907 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.
1908 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)
1909 Source code directories overview Developing Mozilla
No summary!
1910 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.
1911 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).
1912 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.
1913 Working with BFCache Cache, Developing Mozilla, Guide
Q: What is the BFCache exactly?
1914 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.
1915 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.
1916 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.
1917 Newsgroup summaries
No summary!
1918 Format
No summary!
1919 Mozilla.dev.apps.firefox-2006-09-29
None this week.
1920 Mozilla.dev.apps.firefox-2006-10-06
None this week.
1921 mozilla-dev-accessibility
No summary!
1922 2006-10-06
No summary!
1923 2006-11-10
No summary!
1924 2006-11-22
No summary!
1925 mozilla-dev-apps-calendar
No summary!
1926 2006-09-29
No summary!
1927 2006-10-06
No summary!
1928 mozilla-dev-apps-firefox
No summary!
1929 2006-09-29
None this week.
1930 2006-10-06
None this week.
1931 2006-10-13
No summary!
1932 2006-10-20
None this week.
1933 2006-10-26
None this week.
1934 2006-10-27
None this week.
1935 2006-11-03
None this week.
1936 2006-11-04
None this week.
1937 2006-11-10
None this week.
1938 2006-11-17
None this week.
1939 2006-11-24
None this week.
1940 2006-12-01
None this week.
1941 mozilla-dev-apps-thunderbird
No summary!
1942 2006-09-29
No summary!
1943 2006-10-06
No summary!
1944 2006-10-13
No summary!
1945 2006-10-20
No summary!
1946 2006-10-27
No summary!
1947 2006-11-03
No summary!
1948 2006-11-10
No summary!
1949 2006-11-17
No summary!
1950 2006-11-24
No summary!
1951 2006-12-01
No summary!
1952 mozilla-dev-builds
No summary!
1953 2006-09-29

1954 2006-10-06
No summary!
1955 2006-10-13
No summary!
1956 2006-10-20
No summary!
1957 2006-10-27
No summary!
1958 2006-11-03
No summary!
1959 2006-11-10
No summary!
1960 2006-11-17
No summary!
1961 2006-11-24
No summary!
1962 2006-12-01
No summary!
1963 mozilla-dev-embedding
No summary!
1964 mozilla-dev-extensions
No summary!
1965 2006-09-29
Return to mozilla-dev-extensions
1966 2006-10-06
Return to mozilla-dev-extensions
1967 2006-10-13
Return to mozilla-dev-extensions
1968 2006-10-20
Return to mozilla-dev-extensions
1969 2006-10-27
Return to mozilla-dev-extensions
1970 2006-11-03
Return to mozilla-dev-extensions
1971 2006-11-10
Return to mozilla-dev-extensions
1972 2006-11-17
Return to mozilla-dev-extensions
1973 2006-11-24
Return to mozilla-dev-extensions
1974 2006-12-01
Return to mozilla-dev-extensions
1975 2006-12-08
Return to mozilla-dev-extensions
1976 Extentsions FAQ
Return to mozilla-dev-extensions
1977 mozilla-dev-i18n
No summary!
1978 2006-09-22
No summary!
1979 mozilla-dev-l10n
No summary!
1980 2006-10-06
No summary!
1981 2006-10-13
No summary!
1982 2006-10-20
No summary!
1983 2006-10-27
No summary!
1984 2006-11-10
No summary!
1985 2006-11-17
No summary!
1986 2006-11-24
No summary!
1987 2006-11-3
No summary!
1988 2006-12-01
No summary!
1989 2006-12-08
No summary!
1990 mozilla-dev-planning
No summary!
1991 2006-07-17
No summary!
1992 2006-09-22
No summary!
1993 2006-10-06
Beltzner announced FF2 RC2 is availabe for all 3 major platforms in some 40 langauges.
1994 2006-10-13
No summary!
1995 2006-10-20
No summary!
1996 2006-10-27
No summary!
1997 2006-11-03
No summary!
1998 2006-11-10
No summary!
1999 2006-11-17
No summary!
2000 2006-11-24
No summary!
2001 2006-12-01
No summary!
2002 mozilla-dev-platform
Newsgroup summary for mozilla.dev.platform (Google Groups link) is for people working on the Mozilla Application Framework ("Mozilla-the-platform").
2003 2006-09-29
Summary of newsgroup moz.dev.platform
2004 2006-10-06
No summary!
2005 2006-10-13
No summary!
2006 2006-10-20
No summary!
2007 2006-10-27
Summary: mozilla.dev.platform - October 21st to October 27th 2006
2008 2006-11-03
Summary: mozilla.dev.platform - October 28th - November 3rd, 2006
2009 2006-11-10
No summary!
2010 2006-11-17
Summary: mozilla.dev.platform - November 11th - November 17th, 2006
2011 2006-12-01
Summary: mozilla.dev.platform - November 25th - December 1st, 2006
2012 2006-18-24
Summary: mozilla.dev.platform - November 18th - November 24th, 2006
2013 mozilla-dev-quality
No summary!
2014 2006-09-29
None
2015 2006-10-06
No summary!
2016 2006-10-13
No summary!
2017 2006-10-20
No summary!
2018 2006-10-27
None
2019 2006-11-03
None
2020 2006-11-10
None
2021 2006-11-17
None
2022 2006-11-24
None
2023 2006-12-01
No summary!
2024 mozilla-dev-security
No summary!
2025 2006-09-29
No summary!
2026 2006-10-06
No summary!
2027 2006-10-13
No summary!
2028 2006-10-20
No summary!
2029 2006-10-27
No summary!
2030 2006-11-03
No summary!
2031 2006-11-10
No summary!
2032 2006-11-17
No summary!
2033 2006-11-24
No summary!
2034 2006-12-01
No summary!
2035 mozilla-dev-tech-js-engine
No summary!
2036 2006-09-22
No summary!
2037 2006-09-29
No summary!
2038 2006-10-06
No summary!
2039 2006-10-13
No summary!
2040 2006-11-03
No summary!
2041 2006-11-10
No summary!
2042 2006-11-17
No summary!
2043 2006-11-24
No summary!
2044 2006-12-01
No summary!
2045 JS-Engine FAQ
No summary!
2046 mozilla-dev-tech-layout
No summary!
2047 2006-09-29
No summary!
2048 2006-10-27
None this week.
2049 2006-11-03
None this week.
2050 2006-11-10
None this week.
2051 2006-11-17
None this week.
2052 2006-11-24
None this week.
2053 2006-12- 02
None this week.
2054 2006-12- 08
None this week.
2055 2006-12-24
None this week.
2056 mozilla-dev-tech-xpcom
No summary!
2057 2006-09-06
No summary!
2058 2006-09-22
No summary!
2059 2006-09-30
No summary!
2060 2006-10-13
No summary!
2061 2006-10-27
No summary!
2062 2006-11-10
No summary!
2063 2006-11-17
No summary!
2064 2006-11-24
No summary!
2065 2006-11-3
No summary!
2066 2006-12-01
No summary!
2067 2006-12-08
No summary!
2068 mozilla-dev-tech-xul
XUL FAQ
2069 2006-09-22
No summary!
2070 2006-09-29
No summary!
2071 2006-10-06
No summary!
2072 2006-10-13
No summary!
2073 2006-10-20
No summary!
2074 2006-10-27
No summary!
2075 2006-11-03
No summary!
2076 2006-11-10
No summary!
2077 2006-11-17
No summary!
2078 2006-11-24
No summary!
2079 2006-12-01
No summary!
2080 mozilla.dev.apps.calendar
No summary!
2081 2006-10-13
None this week.
2082 2006-10-20
[Back to Weekly Summaries ]
2083 2006-10-27
[Back to Weekly Summaries ]
2084 2006-11-03
[Back to Weekly Summaries ]
2085 2006-11-10
[Back to Weekly Summaries ]
2086 2006-11-17
[Back to Weekly Summaries ]
2087 2006-11-24
[Back to Weekly Summaries ]
2088 2006-12-01
[Back to Weekly Summaries ]
2089 mozilla.dev.tech.js-engine
No summary!
2090 2006-10-06
No summary!
2091 Obsolete: XPCOM-based scripting for NPAPI plugins
Plugins that used to take advantage of being scriptable via LiveConnect in 4.x Netscape browsers lost this possibility in the new world. The main reason for this is that there is no guarantee of Java compatibility on a binary level due to the jri/jni switch. The new Mozilla XPCOM architecture allows XPCOM components be scriptable via a different mechanism called XPConnect. We leverage some of these ideas to help you make your Netscape Communicator 4.x plugins exposed to JavaScript in Mozilla based browsers.
2092 Plugins Add-ons, NPAPI, Obsolete, Plugins
For more information about plugin roadmap, see non-archived plugin information.
2093 Adobe Flash Add-ons, Addons, Adobe, Flash, Guide, NeedsUpdate, Plugins
This article explains how JavaScript can be used to access methods from within the Flash plugin, as well as how a feature called FSCommands can be used to access JavaScript functions from within the Flash animation. The focus of this article is to present tips on scripting Flash within Gecko™-based web browsers.
2094 External resources for plugin creation Plugins
There are several open source projects designed to assist with the creation of NPAPI plugins.  Please note that even when using these, it is still a good idea to have an understanding of what is going on under the hood, regardless of the level of abstraction provided.
2095 Logging Multi-Process Plugins
When multi-process plugins are enabled, Firefox has the ability to dump additional information about interactions between the browser and a plugin. This is done using NSPR logging. Run Firefox in a custom environment to enable this special logging mode.
2096 Monitoring plugins Add-ons, Firefox 3, Plugins
A new component of the plugin system is now available to measure how long it takes plugins (e.g., Adobe Flash) to execute their calls. This component then reports the plugin runtime using the observer service to anyone registered to receive the notifications. This article discusses how developers can make use of this new feature.
2097 Multi-process plugin architecture Add-ons, Electrolysis, IPC, IPDL, Plugins
Plugins are a frequent source of instability or crashes for browser users. When plugins run in the same process as the browser, any leaks or crashes in the plugin will affect the entire browser:
2098 NPAPI plugin developer guide Add-ons, Advanced, Guide, Landing, Plug-ins
Plugins are shared libraries that users can install to display content that the application itself can't display natively. For example, the Adobe Flash plug-in is used to access Flash content (including videos and certain interactive applications), and the QuickTime and RealPlayer plugins are used to play special format videos in a web page.
2099 NPAPI plugin reference Deprecated, Landing, NPAPI, Plugins, Reference
The articles below describe each of the APIs related to NPAPI plugins.
2100 Browser-side plug-in API Landing, Method, NPAPI, Plugins, Reference, Référence(2)
This chapter describes methods in the plug-in API that are provided by the browser; these allow call back to the browser to request information, tell the browser to repaint part of the window, and so forth. The names of all of these methods begin with NPN_ to indicate that they are implemented by the browser and called by the plug-in.
2101 NPAPI plug-in side API Add-ons, Deprecated, Landing, NPAPI, Plugins, Reference, Référence(2)
This chapter describes methods in the plug-in API that are available from the plug-in object; these allow plug-ins to interact with the browser. The names of all of these methods begin with NPP_ to indicate that they are implemented by the plug-in and called by the browser.
2102 NPAnyCallbackStruct API, Gecko, NPAPI, Plugins, Reference
Contains information required during embedded mode printing.
2103 NPByteRange NPAPI, Plugins
Represents a particular range of bytes from a stream.
2104 NPClass NPAPI, Plugins
NPClass is a structure that holds a set of pointers to functions that make up the behavior of an instance of an NPClass (i.e. an NPObject).
2105 NPEmbedPrint NPAPI, Plugins
Substructure of NPPrint that contains platform-specific information used during embedded mode printing.
2106 NPEvent NPAPI, Plugins
Represents an event passed by NPP_HandleEvent() to a windowless plug-in.
2107 NPFullPrint NPAPI, Plugins
Substructure of NPPrint that contains platform-specific information used during full-page mode printing.
2108 NPIdentifier NPAPI, Plugins
NPIdentifier is an opaque type used for method and property identifiers, such as strings or integers. NPIdentifiers are unique, in that for any given string or integer, there is only one NPIdentifier. The lifetime of NPIdentifiers is controlled by the browser.
2109 NPN NewStream NPAPI, Plugins
Requests the creation of a new data stream produced by the plug-in and consumed by the browser.
2110 NPNVariable