Search completed in 1.51 seconds.
IDBVersionChangeEvent.oldVersion - Web APIs
the old
version read-only property of the idb
versionchangeevent interface returns the old
version number of the database.
... when the opened database doesn't exist yet, the value of old
version is 0.
... syntax var old
version = idb
versionchangeevent.old
version value a 64-bit integer.
...And 5 more matches
IDBVersionChangeEvent.newVersion - Web APIs
the new
version read-only property of the idb
versionchangeevent interface returns the new
version number of the database.
... syntax var new
version = idb
versionchangeevent.new
version value a 64-bit integer.
...these events are fired via the custom idb
versionchangeevent interface.
...And 4 more matches
IDBVersionChangeRequest.setVersion() - Web APIs
the idb
versionchangerequest.set
version method updates the
version of the database, returning immediately and running a
versionchange transaction on the connected database in a separate thread.
...the new way is to define the
version in the idbdatabase.open() method and create and delete object stores in the onupgradeneeded event handler associated with the returned request.
... syntax idb
versionchangerequest set
version ([treatnullas=emptystring] in domstring
version); example tbd parameters
version the
version to store in the database.
...And 2 more matches
Gecko versions and application versions
the following table shows the various
versions of gecko and what
versions of common applications are based on them.
... note that after gecko 2.0, both firefox and thunderbird
versions are from then on the same as the gecko
version number, at gecko 5.0.
... gecko
version applications based on it gecko 55 firefox 55, seamonkey 2.52 gecko 52 firefox 52, seamonkey 2.49 gecko 49 firefox 49, seamonkey 2.46 gecko 43 firefox 43, seamonkey 2.40 gecko 42 firefox 42, seamonkey 2.39 gecko 41 firefox 41, seamonkey 2.38 gecko 38 firefox 38, seamonkey 2.35 gecko 36 firefox 36, seamonkey 2.33 gecko 35 firefox 35, seamonkey 2.32 gecko 34 firefox 34, seamonkey 2.31 gecko 33 firefox 33, seamonkey 2.30 gecko 32 firefox 32, seamonkey 2.29 gecko 29 firefox 29, seamonkey 2.26 gecko 28 firefox 28, seamonkey 2.25 gecko 27 firefox 27, seamonkey 2.24 gecko 26 firefox 26, s...
...rbird 3.3, seamonkey 2.1 gecko 1.9.2 firefox 3.6, thunderbird 3.1 gecko 1.9.1 firefox 3.5, thunderbird 3, seamonkey 2.0 gecko 1.9 firefox 3 gecko 1.8.1 firefox 2, thunderbird 2, seamonkey 1.1 gecko 1.8 firefox 1.5, thunderbird 1.5, seamonkey 1.0 gecko 1.7 firefox 1.0, thunderbird 1.0, nvu 1.0, mozilla suite 1.7 older
versions of gecko match the mozilla suite
versions ...
IDBVersionChangeEvent.version - Web APIs
the
version property of the idb
versionchangeevent interface returns the new
version of the database in a
versionchange transaction.
... warning: while this property is still implemented in older browsers, the latest specification replaces it with the old
version and new
version attributes.
...
version; value a 64-bit integer.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internet
version deprecatednon-standardchrome full support 12edge full support ≤18firefox full support 16 full support 16 full support 10prefixed prefixed implemented with the vendor prefix: mozie ...
Extension Versioning, Update and Compatibility - Archive of obsolete content
add-on
versioning add-ons should specify their
versions using the toolkit
version format.
... as a rough overview this is a
version string split by periods, some examples: 2.0 1.0b1 3.0pre1 5.0.1.2 note: before firefox 1.5 the more basic firefox
version format was used: major.minor.release.build[+] where only digits were allowed.
... the toolkit
version format supports the firefox
version format but allows greater flexibility.
...And 31 more matches
Version, UI, and Status Information - Plugins
« previousnext » this chapter describes the functions that allow a plug-in to display a message on the status line, get agent information, and check on the current
version of the plug-in api and the browser.
...browsers communicate with http servers, which store agent software name,
version, and operating system in a user_agent field.
... if you want to gather usage statistics or just find out the
version of your plug-in's host browser, this information can help you.
...And 22 more matches
Toolkit version format
this document is a reference for the
version format, as used in firefox 1.5 (xulrunner 1.8) and later.
...
versions in at least the following places must conform to this format: addon's and target application's
version in install and update manifests.
... the following preferences: app.extensions.
version, extensions.lastapp
version versions returned by nsixulappinfo.
...And 17 more matches
compareVersion - Web APIs
compare
version compares the
version of a file or package with the
version of an existing file or package.
... method of installtrigger object syntax int compare
version ( string registryname, install
version version); int compare
version ( string registryname, string
version); int compare
version ( string registryname, int major, int minor, int release, int build); parameters the compare
version method has the following parameters: registryname the pathname in the client
version registry for the component whose
version is to be compared.
...note that the registry pathname is not the location of the software on the computer; it is the location of information about the software inside the client
version registry.
...And 16 more matches
NPN_Version - Archive of obsolete content
« gecko plugin api reference « browser side plug-in api summary lets plugins obtain
version information, both of the plug-in api and of the browser itself.
... syntax #include <npapi.h> void npn_
version(int* plugin_major, int* plugin_minor, int* netscape_major, int* netscape_minor); parameters the function has the following parameters: plugin_major pointer to a plug-in's major
version number; changes with major code release number.
... plugin_minor pointer to a plug-in's minor
version number; changes with point release number.
...And 11 more matches
nsIVersionComparator
xpcom/base/nsi
versioncomparator.idlscriptable this interface is used to compare
version strings.
... 1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0)
version strings are dot-separated sequences of
version-parts.
... a
version-part consists of up to four parts, all of which are optional: <number-a><string-b><number-c><string-d (everything else)> a
version-part may also consist of a single asterisk "*" which indicates * "infinity".
...And 6 more matches
IDBVersionChangeEvent - Web APIs
the idb
versionchangeevent interface of the indexeddb api indicates that the
version of the database has changed, as the result of an idbopendbrequest.onupgradeneeded event handler function.
... idb
versionchangeevent.old
version read only returns the old
version of the database.
... idb
versionchangeevent.new
version read only returns the new
version of the database.
...And 6 more matches
JS_GetVersion
retrieves the javascript
version number used within a specified executable script context.
... syntax js
version js_get
version(jscontext *cx); name type description cx jscontext * the context to query.
... description js_get
version returns the javascript
version currently used by the given jscontext, cx.
...And 5 more matches
IDBVersionChangeRequest - Web APIs
warning: the latest specification does not include this interface anymore as the idbdatabase.set
version() method has been removed.
... see the compatibility table for
version details.
... the idb
versionchangerequest interface the indexeddb api represents a request to change the
version of a database.
...And 5 more matches
JS_SetVersion
configure a jscontext to use a specific
version of the javascript language.
... syntax js
version js_set
version(jscontext *cx, js
version version); name type description cx jscontext * pointer to a js context from which to derive runtime information.
...
version js
version version of javascript to set context to.
...And 4 more matches
IDBDatabase.onversionchange - Web APIs
the on
versionchange event handler of the idbdatabase interface handles the
versionchange event, fired when a database structure change (idbopendbrequest.onupgradeneeded event or idbfactory.deletedatabase) was requested elsewhere (most probably in another window/tab on the same computer).
... this is different from the
versionchange transaction (but it is related).
... syntax idbdatabase.on
versionchange = function(event) { ...
...And 4 more matches
PR_VersionCheck
compares the
version of nspr assumed by the caller (the imported
version) with the
version being offered by the runtime (the exported
version).
... syntax #include <prinit.h> prbool pr_
versioncheck(const char *imported
version); parameter pr_
versioncheck has one parameter: imported
version the
version of the shared library being imported.
... returns the function returns one of the following values: if the
version of the shared library is compatible with that expected by the caller, pr_true.
...And 3 more matches
JSVersion
the values of the js
version enumerated type stand for particular
versions of the javascript run-time.
... the functions js_get
version, js_set
version, js_stringto
version, and js_
versiontostring use these values.
... description the js
version enumerated type includes the following values.
...And 3 more matches
JS_SetVersionForCompartment
this article covers features introduced in spidermonkey 31 configure a jscompartment to use a specific
version of the javascript language.
... syntax void js_set
versionforcompartment(jscompartment *compartment, js
version version); name type description compartment jscompartment * pointer to a js compartment.
...
version js
version version of javascript to set compartment to.
...And 3 more matches
NavigatorID.appVersion - Web APIs
returns either "4.0" or a string representing
version information about the browser.
... note: do not rely on this property to return the correct browser
version.
... syntax window.navigator.app
version value either "4.0" or a string representing
version information about the browser.
...And 3 more matches
Windows SDK versions
mozilla, from time to time, might support building against multiple
versions of the windows sdk as a compatibility/transitional measure.
... if it does, several features will be disabled if you build with an sdk older than the default, which means that you'll have to specify a non-default sdk
version explicitly.
... quick start follow the instructions for whichever
version of visual c++ you're using.
...And 2 more matches
IDBDatabase.version - Web APIs
the
version property of the idbdatabase interface is a 64-bit integer that contains the
version of the connected database.
... syntax var myinteger = idbdatabase.
version; value an integer containing the
version of the connected database.
...this is used a lot below db = dbopenrequest.result; // this line will log the
version of the connected database, which should be "4" console.log(db.
version); }; specifications specification status comment indexed database api 2.0the definition of '
version' in that specification.
...And 2 more matches
getVersion - Web APIs
get
version returns an object representing the
version number from the client
version registry for the specified component.
... method of installtrigger object syntax install
version get
version ( string component ); parameters the get
version method has one parameter: component the name of a component in the client
version registry.
...otherwise, it returns an install
version object representing the
version of the component.
...And 2 more matches
InstallVersion Object - Archive of obsolete content
install
version you use install
version objects to contain
version information for software.
... overview this object and its methods are used both when triggering a download, to see whether a particular
version needs to be installed, and when installing the software.
... the init() method associates a particular
version with an install
version object, the tostring() method converts
versions in various formats to a string, and the compareto() method compares these string and indicates the relationship between the two
versions.
... each of the
version parameters is also available as a separate property of the install
version object.
ScriptEngineBuildVersion - Archive of obsolete content
the scriptenginebuild
version function bets the build
version number of the scripting engine in use.
... syntax scriptenginebuild
version() remarks the return value corresponds directly to the
version information contained in the dynamic-link library (dll) for the scripting language in use.
... example the following example illustrates the use of the scriptenginebuild
version function: if(window.scriptenginebuild
version) { console.log(window.scriptenginebuild
version()); } // output: <current build
version> requirements supported in the following document modes: quirks, internet explorer 6 standards, internet explorer 7 standards, internet explorer 8 standards, internet explorer 9 standards, internet explorer 10 standards, internet explorer 11 standards.
... scriptengine function scriptenginemajor
version function scriptengineminor
version function ...
ScriptEngineMinorVersion - Archive of obsolete content
the scriptengineminor
version function gets the minor
version number of the scripting engine in use.
... syntax scriptengineminor
version() remarks the return value corresponds directly to the
version information contained in the dynamic-link library (dll) for the scripting language in use.
... example the following example illustrates the use of the scriptengineminor
version function.
... if (window.scriptengineminor
version) { console.log(window.scriptengineminor
version()); } //output: <current minor
version> requirements supported in the following document modes: quirks, internet explorer 6 standards, internet explorer 7 standards, internet explorer 8 standards, internet explorer 9 standards, internet explorer 10 standards, internet explorer 11 standards.
JS_StringToVersion
returns a js
version value representing the
version string.
... syntax js
version js_stringto
version(const char *string); name type description string const char *
version string to convert.
... description js_stringto
version attempts to convert the
version string to a js
version value.
... js_stringto
version may return any of the following values: string enumeration "1.0" js
version_1_0 obsolete since jsapi 24 "1.1" js
version_1_1 obsolete since jsapi 24 "1.2" js
version_1_2 obsolete since jsapi 24 "1.3" js
version_1_3 obsolete since jsapi 24 "1.4" js
version_1_4 obsolete since jsapi 24 "ecmav3" js
version_ecma_3 "1.5" js
version_1_5 obsolete since jsapi 24 "1.6" js
version_1_6 "1.7" js
version_1_7 "1.8" js
version_1_8 other js
version_unknown see also mxr id search for js_stringto
version js
version js_get
version js_set
versionforcompartment js_
versiontostring bug 824312 ...
JS_VersionToString
returns a string representation of a js
version value.
... syntax const char * js_
versiontostring(js
version version); name type description
version js
version version value to convert.
... description js_
versiontostring attempts to convert the
version to a const char * string representation.
... js_
versiontostring may return any of the following values: enumeration string js
version_1_0 "1.0" obsolete since jsapi 24 js
version_1_1 "1.1" obsolete since jsapi 24 js
version_1_2 "1.2" obsolete since jsapi 24 js
version_1_3 "1.3" obsolete since jsapi 24 js
version_1_4 "1.4" obsolete since jsapi 24 js
version_ecma_3 "ecmav3" js
version_1_5 "1.5" obsolete since jsapi 24 js
version_1_6 "1.6" js
version_1_7 "1.7" js
version_1_8 "1.8" js
version_ecma_5 "ecmav5" js
version_default "default" other null see also mxr id search for js_stringto
version js
version js_get
version js_set
versionforcompartment js_stringto
version bug 824312 ...
Working with Multiple Versions of Interfaces
ode; rv = refp->getaccessiblefor(node, getter_addrefs(accnode)); if(ns_failed(rv)){ return self; } void *wh = null; nscomptr<nsiaccessibledocument> accdocnode; accdocnode = do_queryinterface(accnode, &rv); if(ns_failed(rv)){ return self; } rv = accdocnode->getwindowhandle(&wh); if(ns_succeeded(rv)){ self = static_cast<hwnd>(wh); } return self; } this approach worked, as is, for
versions as early as firefox 1.5.
... the problem arises when one tries to run an extension built with the latest sdk in an older
version of firefox, say firefox 2.
... the realist's solution to make sure we call the right methods of the right interfaces we need to have two
versions of both the nsiaccessibledocument and nsiaccessibleretrieval interfaces at our fingertips.
...i did have to delve into my old
versions and change: ns_define_static_iid_accessor(...) to ns_declare_static_iid_accessor(...) this ugliness aside, my plan b routine now looks like: hwnd gethwndb(nsidomnode *node){ hwnd self = null; nsresult rv; nscomptr<nsicomponentmanager> compmgr; rv = ns_getcomponentmanager(getter_addrefs(compmgr)); if (ns_failed(rv)){ return self; } nscomptr<nsiaccessibleretrieval_old> refp;...
IDBDatabase: versionchange event - Web APIs
the
versionchange event is fired when a database structure change (idbopendbrequest.onupgradeneeded event or idbfactory.deletedatabase) was requested.
... bubbles no cancelable no interface event event handler property on
versionchange examples this example opens a database and, on success, adds a listener to
versionchange: // open the database const dbopenrequest = window.indexeddb.open('nonexistent', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'mon...
...th', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); }; dbopenrequest.addeventlistener('success', event => { const db = event.target.result; db.addeventlistener('
versionchange', event => { console.log('the
version of this database has changed'); }); }); the same example, using the on
versionchange event handler property: // open the database const dbopenrequest = window.indexeddb.open('nonexistent', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex(...
...'minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); }; dbopenrequest.onsuccess = event => { const db = event.target.result; db.on
versionchange = event => { console.log('the
version of this database has changed'); }; }; ...
USBDevice.usbVersionMajor - Web APIs
the usb
versionmajor read only property of the usbdevice interface is one of three properties that declare the usb protocol
version supported by the device.
... the other two properties are usbdevice.usb
versionminor and usbdevice.usb
versionsubminor.
... syntax var serialnumber = usbdevice.usb
versionmajor value the last of three properties that declare the usb protocol
version supported by the device.
... specifications specification status comment webusbthe definition of 'usb
versionmajor' in that specification.
USBDevice.usbVersionMinor - Web APIs
the usb
versionminor read only property of the usbdevice interface is one of three properties that declare the usb protocol
version supported by the device.
... the other two properties are usbdevice.usb
versionmajor and usbdevice.usb
versionsubminor.
... syntax var serialnumber = usbdevice.usb
versionminor value the second of three properties that declare the usb protocol
version supported by the device.
... specifications specification status comment webusbthe definition of 'usb
versionminor' in that specification.
USBDevice.usbVersionSubminor - Web APIs
the usb
versionsubminor read only property of the usbdevice interface is one of three properties that declare the usb protocol
version supported by the device.
... the other two properties are usbdevice.usb
versionmajor and usbdevice.usb
versionminor.
... syntax var serialnumber = usbdevice.usb
versionsubminor value the first of three properties that declare the usb protocol
version supported by the device.
... specifications specification status comment webusbthe definition of 'usb
versionsubminor' in that specification.
ScriptEngineMajorVersion - Archive of obsolete content
the scriptenginemajor
version function gets the major
version number of the scripting engine in use.
... syntax scriptenginemajor
version() remarks the return value corresponds directly to the
version information contained in the dynamic-link library (dll) for the scripting language in use.
... example the following example illustrates the use of the scriptenginemajor
version function: if (window.scriptenginemajor
version) { console.log(window.scriptengine()); } output: <current major
version> requirements supported in the following document modes: quirks, internet explorer 6 standards, internet explorer 7 standards, internet explorer 8 standards, internet explorer 9 standards, internet explorer 10 standards, internet explorer 11 standards.
JS_ExecuteScriptVersion
this article covers features introduced in spidermonkey 1.8.5 execute a compiled script with specified
version.
... syntax jsbool js_executescript
version(jscontext *cx, jsobject *obj, jsobject *scriptobj, jsval *rval, js
version version); name type description cx jscontext * the context in which to execute the script.
...
version js
version version for the script.
JS_GetImplementationVersion
get the
version number of the js engine.
... syntax const char * js_getimplementation
version(void); description js_getimplementation
version returns a hard-coded, english language string that specifies the
version number of the js engine currently in use, and its release date.
... see also mxr id search for js_getimplementation
version js_get
version js_set
versionforcompartment ...
Get Thunderbird version
on thunderbird
version 3.0b3pre and later, you can use the following snippet to get the thunderbird
version.
... (
version 3.0b3pre was the first build to include steel.) var
versionchecker = components.classes["@mozilla.org/xpcom/
version-comparator;1"].getservice(components.interfaces.nsi
versioncomparator); if (
versionchecker.compare(application.
version, "3.0b4") >= 0) // code for >= 3.0b4 else // code for < 3.0b4 for
versions prior to 3.0b3pre, you can use something like this: var
version; if ( "@mozilla.org/xre/app-info;1" in components.classes )
version = components.classes["@mozilla.org/xre/app-info; 1"].getservice(components.interfaces.nsixulappinfo).
version; else
version = components.classes["@mozilla.org/preferences-service; 1"].getservice(components.interfaces.nsiprefbranch).getcharpref ("app.
version"); var
versionchecker = components.classes["@mozilla.org/xpcom/
version- comparator;1...
..."].getservice(components.interfaces.nsi
versioncomparator); if (
versionchecker.compare(
version, "3.0b3" ) >= 0 ) // code for >= 3.0b3 else // code for < 3.0b3 ...
USBDevice.deviceVersionMajor - Web APIs
the device
versionmajor read only property of the usbdevice interface he major
version number of the device in a semantic
versioning scheme.
... syntax var serialnumber = usbdevice.device
versionmajor value a number.
... specifications specification status comment webusbthe definition of 'device
versionmajor' in that specification.
USBDevice.deviceVersionMinor - Web APIs
the device
versionminor read only property of the usbdevice interface the minor
version number of the device in a semantic
versioning scheme.
... syntax var serialnumber = usbdevice.device
versionminor value a number.
... specifications specification status comment webusbthe definition of 'device
versionminor' in that specification.
USBDevice.deviceVersionSubminor - Web APIs
the device
versionsubminor read only property of the usbdevice interface the patch
version number of the device in a semantic
versioning scheme.
... syntax var serialnumber = usbdevice.device
versionsubminor value a number.
... specifications specification status comment webusbthe definition of 'device
versionsubminor' in that specification.
-moz-os-version - Archive of obsolete content
the -moz-os-
version gecko-only css media feature can be used to apply styles based on the user's
version of microsoft windows.
... this can be useful for adapting application skins and other chrome code depending on the user's operating system
version.
JS_CompileFileHandleForPrincipalsVersion
syntax jsobject * js_compilefilehandleforprincipals
version(jscontext *cx, jsobject *obj, const char *filename, file *fh, jsprincipals *principals, js
version version); name type description cx jscontext * the context.
... obj jsobject * filename const char fh file * principals jsprincipals *
version js
version description please provide a description.
JS_CompileUCFunctionForPrincipalsVersion
syntax jsfunction * js_compileucfunctionforprincipals
version(jscontext *cx, jsobject *obj, jsprincipals *principals, const char *name, unsigned int nargs, const char **argnames, const jschar *chars, size_t length, const char *filename, unsigned int lineno, js
version version); name type description cx jscontext * the context.
... obj jsobject * principals jsprincipals * name const char * nargs unsigned int argnames const char ** chars const jschar * length size_t filename const char * lineno unsigned int
version js
version description please provide a description.
productVersion - Web APIs
the bluetoothdevice.product
version read-only property returns the 16-bit product
version field in the pnp_id characteristic in the device_information service.
... syntax var product
version = instanceofbluetoothdevice.product
version returns the 16-bit product
version field.
Document.xmlVersion - Web APIs
returns the
version number as specified in the xml declaration (e.g., <?xml
version="1.0"?>) or "1.0" if the declaration is absent.
...to detect this, you can create an element with its name in lower case, then check to see if it gets converted into all upper case (in which case the document is in the non-xml html mode): if (document.createelement("foo").tagname == "foo") { /* document is not xml */ } specifications http://www.w3.org/tr/dom-level-3-cor...ument3-
version this has been removed from dom core level 4wd ...
HTMLHtmlElement.version - Web APIs
this property has been declared as deprecated by the w3c technical recommendation for html 4.01 in favor of use of the dtd for obtaining
version information for a document.
... returns
version information about the document type definition (dtd) of a document.
505 HTTP Version Not Supported - HTTP
the hypertext transfer protocol (http) 505 http
version not supported response status code indicates that the http
version used in the request is not supported by the server.
... status 505 http
version not supported specifications specification title rfc 7231, section 6.6.6: 505 http
version not supported hypertext transfer protocol (http/1.1): semantics and content ...
version - SVG: Scalable Vector Graphics
the
version attribute is used to indicate what specification a svg document conforms to.
... <svg
version="1.1" viewbox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"> <rect x="10" y="10" width="80" height="80"/> </svg> usage notes value <number> default value none animatable no specifications specification status comment scalable vector graphics (svg) 1.1 (second edition)the definition of '
version' in that specification.
PR_VERSION
syntax #include <prinit.h> #define pr_
version "2.1 yyyymmdd" description the format of the
version string ismajor
version.minor
version builddate.
Release notes for recent versions of NSS
5.4 release notes nss 3.15.3.1 release notes nss 3.15.3 release notes nss 3.15.2 release notes nss 3.15.1 release notes nss 3.15 release notes nss 3.14.5 release notes nss 3.14.4 release notes nss 3.14.3 release notes nss 3.14.2 release notes nss 3.14.1 release notes nss 3.14 release notes older release notes future releases release planning is done on the mozilla wiki: nss:release
versions.
Type conversion
var buffer = ctypes.char.array(10)(); var somecfunction = library.declare("somecfunction", ctypes.default_abi, ctypes.void_t, ctypes.char.ptr); somecfunction(buffer); // here ctypes.char.array(10)() is converted to ctypes.char.ptr type implicit con
version can be tested in the following way: var mystruct = ctypes.structtype("mystructtype", [ { "v": ctypes.bool } ])(); mystruct.v = 1; console.log(mystruct.v.tostring()); // 'true' boolean type target type source converted value ctypes.bool js boolean src js number (0 or 1) if src == 0: false if src == 1: true var mystruct = ctypes.structt...
Index - Archive of obsolete content
113 test/assert add-on sdk, jpm implements the assert interface defined in the commonjs unit testing specification
version 1.1.
...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.
... 239 extension
versioning, update and compatibility add-ons, extensions add-ons should specify their
versions using the toolkit
version format.
...And 62 more matches
Index
the public keys that are exchanged between parties are transported using a container; the container is called a certificate, following standard x.509
version 3.
...examples for the database files are key3.db and cert8.db, where the numbers are file
version numbers.
...(tls is a newer
version of ssl with enhanced features.) when establishing an ssl connection to a server, (at least) a server certificate (and its trust chain) is exchanged from the server to the client (e.g., the browser), and the client verifies that the certificate can be verified (including matching the name of the expected destination server).
...And 61 more matches
Index - Web APIs
59 analysernode.maxdecibels api, analysernode, property, reference, web audio api, maxdecibels the maxdecibels property of the analysernode interface is a double value representing the maximum power value in the scaling range for the fft analysis data, for con
version to unsigned byte/float values — basically, this specifies the maximum value for the range of results when using getfloatfrequencydata() or getbytefrequencydata().
... 60 analysernode.mindecibels api, analysernode, property, reference, référence(2), web audio api, mindecibels the mindecibels property of the analysernode interface is a double value representing the minimum power value in the scaling range for the fft analysis data, for con
version to unsigned byte/float values — basically, this specifies the minimum value for the range of results when using getfloatfrequencydata() or getbytefrequencydata().
... 319 product
version api, bluetooth, bluetoothdevice, non-standard, obsolete, property, reference, web bluetooth api, product
version the bluetoothdevice.product
version read-only property returns the 16-bit product
version field in the pnp_id characteristic in the device_information service.
...And 56 more matches
Index
the con
version always succeeds.
...the con
version always succeeds.
...the con
version always succeeds.
...And 48 more matches
Browser Detection and Cross Browser Support - Archive of obsolete content
fortunately, other browsers such as opera (
versions 7 & later) and to a lesser extent, internet explorer (
versions 5.5 & later) also support the standards to a degree.
... web authors were faced from the beginning with a variety of browsers, some of which supported the latest and greatest
version html and some which did not.
... the most common approach at this time was to distinguish user agents by vendor and
version using the reported user agent string.
...And 44 more matches
Experimental features in Firefox
in order to test new features, mozilla publishes a test
version of the firefox browser, firefox nightly, every day.
... this page lists features that are in nightly
versions of firefox along with information on how to activate them, if necessary.
... release channel
version added enabled by default?
...And 37 more matches
JXON - Archive of obsolete content
there are no real standards for this con
version, but some conventions begin to appear on the web.
... con
version snippets now imagine you have this sample xml document: example.xml <?xml
version="1.0"?> <!doctype catalog system "catalog.dtd"> <catalog> <product description="cardigan sweater"> <catalog_item gender="men's"> <item_number>qwz5671</item_number> <price>39.95</price> <size description="medium"> <color_swatch image="red_cardigan.jpg">red</color_swatch> <color_sw...
... the following algorithms are somewhat based on the parker convention,
version 0.4, which prescribes the transformation of tags names into object properties names and the recognition of the typeof of all the collected text content of each tag (plain text parsing); but with some differences (so, one can say that we follow a our convention).
...And 31 more matches
LiveConnect Overview - Archive of obsolete content
see data type con
version for complete information.
...for example, you can use the following: var mystring = new java.lang.string("hello world"); instead of the longer
version: var mystring = new packages.java.lang.string("hello world"); working with java arrays when any java method creates an array and you reference that array in javascript, you are working with a javaarray.
...locating the liveconnect classes in older
versions of the netscape browser, these classes were distributed along with the browser.
...And 31 more matches
Install Manifests - Archive of obsolete content
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.
... layout the basic layout of an install manifest is like so: <?xml
version="1.0" encoding="utf-8"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <!-- properties --> </description> </rdf> some properties are required, some are optional.
...this means that the add-on will work with the application identified by the id property (<em:id>) specified (for a comprehensive list of application ids and valid min/max
versions for them see valid application
versions for add-on developers), from the minimum
version (<em:min
version>) up to and including the maximum
version (<em:max
version>).
...And 30 more matches
Firefox user agent string reference - HTTP
general form the ua string of firefox itself is broken down into four components: mozilla/5.0 (platform; rv:gecko
version) gecko/geckotrail firefox/firefox
version mozilla/5.0 is the general token that says the browser is mozilla compatible, and is common to almost every browser today.
... though fixed in firefox 69, previous 32-bit
versions of firefox running on 64-bit processors would report that the system is using a 32-bit cpu.
... rv:gecko
version indicates the release
version of gecko (such as "17.0").
...And 28 more matches
Handling common HTML and CSS problems - Learn web development
to show you an example of how such plugins generally work: install atom (if you haven't got an up-to-date
version already installed) — download it from the atom page linked above.
... older browsers not supporting modern features this is a common problem, especially when you need to support old browsers (such as old ie
versions) or you are using features that are implemented using css prefixes.
...you can still refer to them by their names, and style them with css, for example — you just need to make sure they are behaving as you want them to, for example setting display: block; on all of the new semantic elements (such as <article>, <aside>, etc.), but only in old
versions of ie that don't recognise them (so, ie 8 and lower).
...And 25 more matches
Mozilla internal string guide
as a result, you cannot assign a 8-bit string to a 16-bit string without some kind of con
version helper class or routine.
... most of the functions that modify strings (assign(), setlength(), etc) also have a
version that takes a "mozilla::fallible_t" parameter.
... these
versions return 'false' instead of aborting if allocation fails .
...And 24 more matches
Index
4 binary compatibility xpcom if mozilla decides to upgrade to a compiler that does not have the same abi as the current
version, any built component may fail.
...since binary components are linked against a single gecko sdk, a dependency to a particular
version of gecko is created.
... if the component uses only "frozen" xpcom interfaces, there is a good chance the same binary component will work with different
versions of gecko (
version 1.8 and 1.9, for example).
...And 24 more matches
Using IndexedDB - Web APIs
creating and structuring the store using an experimental
version of indexeddb in case you want to test your code in browsers that still use a prefix, you can use the following code: // in the following line, you should include the prefixes of implementations you want to test.
... {read_write: "readwrite"}; // this line should only be needed if it is needed to support the object's constants for older browsers window.idbkeyrange = window.idbkeyrange || window.webkitidbkeyrange || window.msidbkeyrange; // (mozilla has never prefixed these objects, so we don't need window.mozidb*) beware that implementations that use a prefix may be buggy, or incomplete, or following an old
version of the specification.
...it may be preferable to not support a browser than to claim to support it and fail: if (!window.indexeddb) { console.log("your browser doesn't support a stable
version of indexeddb.
...And 24 more matches
jpm - Archive of obsolete content
jpm usage is: jpm [command] [options] jpm supports the following global options: -h, --help - show a help message and exit -v, --
version - print the jpm
version number --addon-dir - directory for your source code, defaulting to the current directory installation jpm is distributed with the node package manager npm.
...add the following line to the end of the file $home/.profile to add it to your path permanently (as the file .profile is executed every time a new terminal is opened): export path="$home/node_modules/.bin/:$path" installing jpm from git alternatively, you can also get the latest
version of jpm using git: git clone https://github.com/mozilla-jetpack/jpm.git cd jpm npm install npm link after installing jpm after installation, at the command prompt, type: jpm you should see a screen summarizing the available jpm commands.
... install a different
version of firefox as of firefox 48, it is not possible to use unsigned add-ons (i.e.
...And 22 more matches
Mozilla release FAQ - Archive of obsolete content
mozilla 1.0 (mozilla uses a different
versioning system than netscape) is due for release soon.
...the code has been continually available since then via cvs (see section 1.8), and occasional binary releases (first as milestones, and more recently as
versioned releases) have been made.
...what is the current
version of mozilla?
...And 19 more matches
Adobe Flash - Archive of obsolete content
versions of flash prior to flash 6r49 (such as flash 5) are not scriptable in netscape gecko browsers.
... thus client-side detection for the right
version of flash is an important aspect of creating a scripted flash experience.
... on mac os x, there is an additional caveat: netscape gecko browsers such as camino (formerly chimera), the latest mozilla browsers, and future
versions of netscape which are built using the mach-o binary format won't be able to use flash's scriptability features.
...And 19 more matches
Index - MDN Web Docs Glossary: Definitions of Web-related terms
arpanet first ran ncp (network control protocol) and subsequently the first
version of the internet protocol or tcp/ip suite, making arpanet a prominent part of the nascent internet.
... 106 decryption cryptography, glossary, privacy, security in cryptography, decryption is the con
version of ciphertext into cleartext.
... 130 encryption cryptography, glossary, privacy, security in cryptography, encryption is the con
version of cleartext into a coded text or ciphertext.
...And 18 more matches
NSS functions
the nss
version column indicates which
versions of nss support the function.
... function name/documentation source code nss
versions nss_getclientauthdata mxr 3.2 and later nss_setdomesticpolicy mxr 3.2 and later nss_setexportpolicy mxr 3.2 and later nss_setfrancepolicy mxr 3.2 and later nssssl_
versioncheck mxr 3.2.1 and later ssl_authcertificate mxr 3.2 and later ssl_authcertificatehook mxr 3.2 and later ssl_badcerthook mxr 3.2 and later ssl_certdbhandleset mxr 3.2 and later ssl_canbypass mxr 3.11.7 and later ssl_cipherpolicyget mxr 3.2 and later ssl_cipherpolicyset mxr 3.2 and later ssl_cipherprefget mxr 3.2 and later ssl_cipherprefgetdefault mxr 3...
...tatus mxr 3.2 and later ssl_setmaxservercachelocks mxr 3.4 and later ssl_setpkcs11pinarg mxr 3.2 and later ssl_setsockpeerid mxr 3.2 and later ssl_seturl mxr 3.2 and later ssl_shutdownserversessionidcache mxr 3.7.4 and later deprecated ssl functions the following ssl functions have been replaced with newer
versions.
...And 17 more matches
BluetoothCharacteristicProperties - Web APIs
full support 56notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 56: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support ≤79notes disabled notes linux and
versions of windows earlier than 10.disabled from
version ≤79: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support 56notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 56: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
...And 17 more matches
Browser detection using the user agent - HTTP
are you trying to work around a specific bug in some
version of a browser?
...the agent might be an older
version of chrome, from before support was added, or (because the feature was experimental at the time) it could be a later
version of chrome that removed it.
...that will only annoy people because it will force them to use the desktop
version.
...And 17 more matches
Reference - Archive of obsolete content
<script language="javascript1.2"> will execute the script in the latest js
version rather than js 1.2.
...--maian 23:43, 21 september 2005 (pdt) i think we need a new section in the reference that specifies the differences between
versions, collecting this information into a single location rather than leaving it scattered haphazardly throughout the reference as it currently is.
... once that is done, the various code samples should be updated to reflect current practices and code if they cannot be written in a "
version-neutral" manner.
...And 16 more matches
Storage access policy: Block cookies from trackers
testing in firefox this cookie policy has been available in firefox since
version 63.
... this documentation describes the policy that we intend to ship to firefox release users, but may not match what is implemented in the current release
version of firefox.
... we recommend sites test with firefox nightly, as this includes the newest
version of our protections.
...And 16 more matches
Rhino overview
see the specification for more information on the standard, and rhino
version 1.6r1 release notes for details on the implementation in rhino.
...attempts to invoke these constructors with the language
version 1.4 will result in an error.
... for other
versions, a warning will be generated.
...And 16 more matches
SpiderMonkey 1.8.5
note that
version 1.8.5 is outdated.
... the latest
version of spidermonkey can always be found on the source download page.
...on other platforms, the jit is simply disabled; javascript code runs in an interpreter, as in previous
versions.
...And 16 more matches
New in JavaScript - Archive of obsolete content
this chapter contains information about javascript's
version history and implementation status for mozilla/spidermonkey-based javascript applications, such as firefox.
... ecmascript
versions language resources learn more about the ecmascript standards on which the javascript language is based on.
... javascript
versions deprecated ( ).
...And 15 more matches
SpiderMonkey 1.8.7
spidermonkey 1.8.7 includes type inference, which boosts the speed of the jägermonkey jit by about 30% over
version 1.8.5.
...on other platforms, the jit is simply disabled; javascript code runs in an interpreter, as in previous
versions.
...migrating to spidermonkey 1.8.7 this covers migrating from
version 1.8.5.
...And 15 more matches
BluetoothRemoteGATTDescriptor - Web APIs
full support 57notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 57: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support ≤79notes disabled notes linux and
versions of windows earlier than 10.disabled from
version ≤79: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support 44notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 44: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
...And 15 more matches
Gecko Compatibility Handbook - Archive of obsolete content
gecko is a cross-platform browser engine, compatible with a number of windows
versions including windows xp, as well as mac and linux.
... upgrade web authoring tool to
versions that support the w3 standards and gecko browsers content differs in gecko browsers and internet explorer the javascript console in netscape 6.x and netscape 7.x displays errors about document.all, document.layers, document.<property> not being defined because of an incorrect browser sniffing, or use of proprietary javascript.
... upgrade apis to use newer standards-conformant
versions upgrade web authoring tool to
versions that support the w3 standards and gecko browsers content differs in gecko browsers and internet explorer your css relies on bugs in internet explorer's implementation of css.
...And 14 more matches
Package management basics - Learn web development
in addition, what happens if you find a better tool that you want to use instead of the current one, or a new
version of your dependency is released that you want to update to?
...although there tend to be more pros for installing globally, the pros for installing locally are more important — such as code portability and
version locking.
...if a different
version of webpack was installed, it may not be compatible.
...And 14 more matches
NSS tools : ssltap
if a connection is ssl, the data display includes interpreted ssl records and handshaking options -v print a
version string for the tool.
... example 1 $ ssltap.exe -sx -p 444 interzone.mcom.com:443 > sx.txt output connected to interzone.mcom.com:443 -->; [ alloclen = 66 bytes [ssl2] clienthellov2 {
version = {0x03, 0x00} cipher-specs-length = 39 (0x27) sid-length = 0 (0x00) challenge-length = 16 (0x10) cipher-suites = { (0x010080) ssl2/rsa/rc4-128/md5 (0x020080) ssl2/rsa/rc4-40/md5 (0x030080) ssl2/rsa/rc2cbc128/md5 (0x040080) ssl2/rsa/rc2cbc40/md5 (0x0600...
... type = 22 (handshake)
version = { 3,0 } length = 997 (0x3e5) handshake { 0: 02 00 00 46 |...f type = 2 (server_hello) length = 70 (0x000046) serverhello { server_
version = {3, 0} random = {...} 0: 77 8c 6e 26 6c 0c ec c0 d9 58 4f 47 d3 2d 01 45 | wn&l.ì..xog.-.e 10: 5c 17 75 43 a7 4c 88 c7 88 64 3c 50 41 48 ...
...And 14 more matches
compareTo - Archive of obsolete content
compareto compares the
version information specified in this object to the
version information specified in the
version parameter.
... method of install
version object syntax compareto ( install
version version); compareto ( string
version); compareto ( int major, int minor, int release, int build); parameters the compareto method has the following parameters: maj the major
version number.
... min minor
version number.
...And 13 more matches
Python binding for NSS
thus it's major
version number is still at zero.
...with_chacha20_poly1305_sha256 ssl.tls_dhe_psk_with_chacha20_poly1305_sha256 release 1.0.0beta1 release date 2016-02-16 scm tag pynss_release_1_0_0beta1 source download https://ftp.mozilla.org/pub/mozilla.org/security/python-nss/releases/pynss_release_1_0_0beta1/src/ change log the primary enhancement in this
version is support for python3.
... a single code base supports both py2 (minimum
version 2.7) and py3 when built for py2: text will be a unicode object binary data will be a str object ints will be python long object when built for py3: text will be a str object binary data will be a bytes object ints will be a python int object all pure python tests and examples have been ported to py3 syntax but should continue to run under py2.
...And 13 more matches
NSS tools : ssltab
if a connection is ssl, the data display includes interpreted ssl records and handshaking options -v print a
version string for the tool.
...example 1 $ ssltap.exe -sx -p 444 interzone.mcom.com:443 > sx.txt output connected to interzone.mcom.com:443 -->; [ alloclen = 66 bytes [ssl2] clienthellov2 {
version = {0x03, 0x00} cipher-specs-length = 39 (0x27) sid-length = 0 (0x00) challenge-length = 16 (0x10) cipher-suites = { (0x010080) ssl2/rsa/rc4-128/md5 (0x020080) ssl2/rsa/rc4-40/md5 (0x030080) ssl2/rsa/rc2cbc128/md5 (0x040080) ssl2/rsa/rc2cbc40/md5 (0x060040) ssl2/rsa/des64cbc/md5 (0x0700c0) ssl2/rsa/3des192ede-cbc/md5 (0x000004) ssl3/rsa/rc4-128/md5 (0x00ffe0) ssl3/rsa-fips/3des192ede-cbc/sha (0x00...
...type = 22 (handshake)
version = { 3,0 } length = 997 (0x3e5) handshake { 0: 02 00 00 46 |...f type = 2 (server_hello) length = 70 (0x000046) serverhello { server_
version = {3, 0} random = {...} 0: 77 8c 6e 26 6c 0c ec c0 d9 58 4f 47 d3 2d 01 45 | wn&l.ì..xog.-.e 10: 5c 17 75 43 a7 4c 88 c7 88 64 3c 50 41 48 4f 7f | \.uc§l.Ç.d<paho.
...And 13 more matches
NSS tools : ssltap
if a connection is ssl, the data display includes interpreted ssl records and handshaking options -v print a
version string for the tool.
...example 1 $ ssltap.exe -sx -p 444 interzone.mcom.com:443 > sx.txt output connected to interzone.mcom.com:443 -->; [ alloclen = 66 bytes [ssl2] clienthellov2 {
version = {0x03, 0x00} cipher-specs-length = 39 (0x27) sid-length = 0 (0x00) challenge-length = 16 (0x10) cipher-suites = { (0x010080) ssl2/rsa/rc4-128/md5 (0x020080) ssl2/rsa/rc4-40/md5 (0x030080) ssl2/rsa/rc2cbc128/md5 (0x040080) ssl2/rsa/rc2cbc40/md5 (0x060040) ssl2/rsa/des64cbc/md5 (0x0700c0) ssl2/rsa/3des192ede-cbc/md5 (0x000004) ssl3/rsa/rc4-128/md5 (0x00ffe0) ssl3/rsa-fips/3des192ede-cbc/sha (0x00...
...type = 22 (handshake)
version = { 3,0 } length = 997 (0x3e5) handshake { 0: 02 00 00 46 |...f type = 2 (server_hello) length = 70 (0x000046) serverhello { server_
version = {3, 0} random = {...} 0: 77 8c 6e 26 6c 0c ec c0 d9 58 4f 47 d3 2d 01 45 | wn&l.ì..xog.-.e 10: 5c 17 75 43 a7 4c 88 c7 88 64 3c 50 41 48 4f 7f | \.uc§l.Ç.d<paho.
...And 13 more matches
sslfnc.html
therefore, an application cannot use nss to perform any cryptographic operations until after it enables appropriate cipher suites by calling one of the ssl export policy functions: nss_setdomesticpolicy, nss_setexportpolicy, and nss_setfrancepolicy configure the cipher suites for domestic, international, and french
versions of software products with encryption features.
...the ietf standard transport layer security (tls) protocol, rfc 2246, is a modified
version of ssl3.
... it uses the ssl
version number 3.1, appearing to be a "minor" revision of ssl 3.0.
...And 13 more matches
NSS tools : signtool
the unix
version of signtool assumes ~/.netscape unless told otherwise.
... the nt
version of signtool always requires the use of the -d option to specify where the database files are located.
...note that with netscape signing tool
version 1.1 and later this option can appear multiple times on one command line, making it possible to specify multiple file types or classes to include.
...And 13 more matches
nsIBlocklistService
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 29 (firefox 29 / thunderbird 29 / seamonkey 2.26) method overview unsigned long getaddonblockliststate(in jsval addon, [optional] in astring app
version, [optional] in astring toolkit
version); unsigned long getpluginblockliststate(in nsiplugintag plugin, [optional] in astring app
version, [optional] in astring toolkit
version); boolean isaddonblocklisted(in jsval addon, [optional] in astring app
version, [optional] in astring toolkit
version); constants constant value description state_not_blocked 0 state_softblocked 1 ...
...unsigned long getaddonblockliststate( in jsval addon, in astring app
version, optional in astring toolkit
version optional ); parameters addon the addon object whose blocklist state is to be determined.
... app
version optional the
version of the application we are checking in the blocklist.
...And 13 more matches
@font-feature-values - CSS: Cascading Style Sheets
or androidsafari on iossamsung internet@font-feature-valueschrome no support noedge no support nofirefox full support 34 full support 34 full support 24disabled disabled from
version 24: this feature is behind the layout.css.font-features.enabled preference (needs to be set to true).
... 9.1webview android no support nochrome android no support nofirefox android full support 34 full support 34 full support 24disabled disabled from
version 24: this feature is behind the layout.css.font-features.enabled preference (needs to be set to true).
... no support no@annotationchrome no support noedge no support nofirefox full support 34 full support 34 full support 24disabled disabled from
version 24: this feature is behind the layout.css.font-features.enabled preference (needs to be set to true).
...And 13 more matches
Writing forward-compatible websites - Developer guides
this page explains how to write websites that do not break when new browser
versions are released.
... if you have to ua-sniff, only sniff for past browser
versions if you have to resort to ua sniffing, only use it to target past browser
versions of particular browsers.
... first, have a default code path that runs in unknown browsers and in the current and future
versions of browsers you are testing with.
...And 13 more matches
JavaScript modules - JavaScript
roperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsimportchrome full support 61edge full support 16 full support 16 full support 15disabled disabled from
version 15: this feature is behind the experimental javascript features preference.firefox full support 60 full support 60 no support 54 — 60disabled disabled from
version 54 until
version 60 (exclusive): this feature is behind the dom.modulescripts.enabled preference.
... support 10.1webview android full support 61chrome android full support 61firefox android full support 60 full support 60 no support 54 — 60disabled disabled from
version 54 until
version 60 (exclusive): this feature is behind the dom.modulescripts.enabled preference.
...see node's ecmascript modules documentation for more details.disabled from
version 12.0.0: this feature is behind the --experimental-modules runtime flag.
...And 13 more matches
List of Mozilla-Based Applications - Archive of obsolete content
abstract accounting tool adobe acrobat and adobe reader portable document format (pdf) software uses mozilla spidermonkey adobe flash player popular browser plug-in uses nss in linux
version adwatch content management system uses xul and xpcom aicpcu/iia exam app exam delivery software aliwal geocoder geocoding & data on a map amarok xul remote remote control for amarok music player ample sdk javascript gui-framework aol instant messenger im client uses nss apache web server d...
...no babelgum internet tv service basilisk pre-servo xul-based web browser uses most of the firefox 55 source code batik java-based toolkit uses mozilla rhino bitbox security focused browser seemingly based on firefox blackbird browser for african american community bluegriffon wysiwyg editor next generation
version of composer buzzbird twitter client built on xulrunner camino browser 2.5m downloads and ~400,000 active users ...
... celtx media tool cenzic hailstorm vulnerability assessment and management tool uses gecko chatzilla irc client standalone
version (xulrunner) chromium and google chrome web browser uses mozilla nss and npapi libraries chromeless browser with html-based interface classilla mozilla browser for mac os 9 clines a clone of color lines (game) standalone
version cloud web operating system cloud browse iphone/ipad/ipod touch browser seems to be firefox running remotely on servers that people access through device conkeror keyboard-oriented browser convertigo enterprise mashup server server tool for transactional web scraping and for web ...
...And 12 more matches
Using the Right Markup to Invoke Plugins - Archive of obsolete content
here's an example of this kind of usage for ie: <!-- ie only code --> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#
version=5,0,0,0" width="366" height="142" id="myflash"> <param name="movie" value="javascript-to-flash.swf" /> <param name="quality" value="high" /> <param name="swliveconnect" value="true" /> </object> in the above example, the classid attribute that goes along with the object element points to a "clsid:" urn followed by the unique identifier of an activex control (in the above example, th...
...here is an example of this usage, once again for the macromedia flash plugin: <object type="application/x-shockwave-flash" data="javascript-to-flash.swf" width="366" height="142" id="myflash"> <param name="movie" value="javascript-to-flash.swf" /> <param name="quality" value="high" /> <param name="swliveconnect" value="true" /> <p>you need flash -- get the latest
version from <a href= "http://www.macromedia.com/downloads/">here.</a></p> </object> in the above example, application/x-shockwave-flash is the flash mime type, and will invoke the netscape-specific flash architecture in mozilla-based browsers.
...thus, in the following example, instead of stopping at the activex control, ie will display the same animation twice since it also understands the mime type for flash: <!-- usage will not work as intended --> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#
version=5,0,0,0" width="366" height="142" id="myflash"> <param name="movie" value="javascript-to-flash.swf" /> <param name="quality" value="high" /> <param name="swliveconnect" value="true" /> <object type="application/x-shockwave-flash" data="javascript-to-flash.swf" width="366" height="142" id="myflashnscp"> <param name="movie" value="javascript-to-flash.swf" /> <param name="qua...
...And 12 more matches
Chrome registration
/content/browser.xul chrome://myaddon/content/ffoverlay.xul application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} overlay chrome://messenger/content/mailwindowoverlay.xul chrome://myaddon/content/tboverlay.xul application={3550f703-e582-4d05-9a08-453d09bdfdc6} overlay chrome://songbird/content/xul/layoutbaseoverlay.xul chrome://myaddon/content/sboverlay.xul application=songbird@songbirdnest.com app
version extensions may install into multiple
versions of an application.
... there may be chrome registration lines which only apply to a particular application
version.
... the flag app
version=
version app
version<
version app
version<=
version app
version>
version app
version>=
version indicates that the instruction should only be applied if the extension is installed into the application
version identified.
...And 12 more matches
Obsolete Build Caveats and Tips
this has resulted in many caveats and tips being added to the mdn documentation for building older
versions of the code base or dealing with older build tools.
... these tips, while helpful, are jarring and superfluous to the majority of new mozilla builders who are mainly interested in building the latest
version of firefox.
... obsolete caveats and tips from simple_firefox_build install a
version of visual studio that supports c++ development: vs 2012 for windows desktop pro or express (free), or vc++ 2010 pro or express (free), or vc++ 2008 pro or express with sp1 (free) (warning !
...And 12 more matches
Bytecode Descriptions
the con
version can call .tostring()/.valueof() methods and can throw.
...the con
version can call .tostring()/.valueof() methods and can throw.
...the con
version can call .tostring()/.valueof() methods and can throw.
...And 12 more matches
MCD, Mission Control Desktop, AKA AutoConfig - Archive of obsolete content
file location (not tested since 2012 ...) in thunderbird , firefox, the javascript preference file that calls the centralized preference file is located in $install_dir_moz_app/defaults/pref, for example in thunderbird this would be repectively for windows/linux: c:\program files\mozilla thunderbird\defaults\pref /usr/lib/thunderbird/default/pref ( it used to be in /usr/lib/thunderbird-
version#/default/pref as in /usr/lib/thunderbird-5/default/pref ) for the record/history purpose ...
... that prefcalls.js is now archive in omni.jar file located at the root of the mozilla apps installation, example of tb5: # jar -tvf /usr/lib/thunderbird/omni.jar | grep prefcalls.js 7499 sat nov 05 09:21:34 cet 2011 defaults/autoconfig/prefcalls.js traditionally (previous apps
versions) is was in mozilla_home/default/autoconfig/prefcalls.js.
... thunderbird.cfg (
version 1) here's the complete file, first we get the user login name from environment variables, then configure the ldap address book, create an email account, and configure imap and smtp: [root@calaz /usr/lib/thunderbird] $ cat thunderbird.cfg //put everything in a try/catch try { // 1) env variables if(getenv("user") != "") { // *nix settings var env_user = getenv("user"); var env_home = gete...
...And 11 more matches
Using nsIXULAppInfo - Archive of obsolete content
starting with mozilla/xulrunner 1.8, there now is a way to find out which application, application
version, and gecko
version your code is running on.
... this is useful, for example, for extensions that support several mozilla-based applications or several
versions of a single application.
...you'll need to have additional code for those older
versions.
...And 11 more matches
Notes on TLS - SSL 3.0 Intolerant Servers
netscape 6.x/7.x and mozilla browsers (0.9.1 and later
versions) correctly implement the tls specification, and the users cannot utilize sites which have this problem.
... technical information the ssl 3.0 and tls (aka ssl 3.1) specs both contain a provision -- the same provision -- for detecting "
version rollback attacks".
... it is designed to permit a server to detect a man-in-the-middle that is altering the ssl client hello (connection) requests as they pass from the client to the server, altering them by changing the protocol
version number to a lower
version number.
...And 11 more matches
NSS Tools ssltap
the options for the command are the following: -v print a
version string for the tool.
... command ssltap.exe -sx -p 444 interzone.mcom.com:443 > sx.txt output output connected to interzone.mcom.com:443--> [alloclen = 66 bytes [ssl2] clienthellov2 {
version = {0x03, 0x00} cipher-specs-length = 39 (0x27) sid-length = 0 (0x00) challenge-length = 16 (0x10) cipher-suites = { (0x010080) ssl2/rsa/rc4-128/md5 (0x020080) ssl2/rsa/rc4-40/md5 (0x030080) ssl2/rsa/rc2cbc128/md5 (0x040080) ssl2/rsa/rc2cbc40/md5 (0x060040) ssl2/rsa/des64c...
... type = 22 (handshake)
version = { 3,0 } length = 997 (0x3e5) handshake { 0: 02 00 00 46 |...f type = 2 (server_hello) length = 70 (0x000046) serverhello { server_
version = {3, 0} random = {...} 0: 77 8c 6e 26 6c 0c ec c0 d9 58 4f 47 d3 2d 01 45 |wn&l.ì..xog.-.e 10: 5c 17 75 43 a7 4c 88 c7 88 64 3c 50 41 48 4f 7f |\.uc§l.Ç...
...And 11 more matches
BasicCardResponse - Web APIs
ndroidopera for androidsafari on iossamsung internetbasiccardresponsechrome no support noedge no support ≤18 — 79firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true) and the dom.payments.request.supportedregions preference (needs to be set to a comma-delineated list of one or more 2-character iso country codes indicating the countries in which to support payments (for example, us,ca.).
... webview android no support nochrome android full support 57firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true) and the dom.payments.request.supportedregions preference (needs to be set to a comma-delineated list of one or more 2-character iso country codes indicating the countries in which to support payments (for example, us,ca.).
... full support 7.0billingaddresschrome no support noedge no support ≤18 — 79firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
...And 11 more matches
An Interview With Douglas Bowman of Wired News - Archive of obsolete content
it was a no-brainer to us that wired news was a perfect candidate for the total con
version to xhtml and css.
...i wanted center column content to appear first in browsers that got the un-styled
version.
...however, since some of our stories are broken up into 2 or 3 pages, we created a slightly altered template for print
versions which pulls the entire text of the story into one (web) page.
...And 10 more matches
The First Install Problem - Archive of obsolete content
example: a piece of software called myapplication might create hkey_local_machine\software\mozillaplugins\@mycompany.com/myapplication,
version=5.0.1/ where the plid is something the corporation that makes myapplication (mycompany inc.) determines.
...(note that the file name must still begin with "np", just as it must when the file is loaded from the .\plugins directory.) example: [hkey_local_machine\software\mozillaplugins\@mycompany.com/myapplication,
version=5.01] path=c:\mycompany\myapplication\netscape\npmyapp.dll "xptpath" -- string value -- absolute path to xpt module required for scripting plug-in, if applicable example: [hkey_local_machine\software\mozillaplugins\@mycompany.com/myapplication,
version=5.01] xptpath=c:\mycompany\myapplication\netscape\npmyapp.xpt "gecko
version" -- this is the optional ment...
...ion of the minimal gecko
version that the browser is compatible with.
...And 10 more matches
What is RSS - Archive of obsolete content
the most popular
versions of rss are xml-based markup languages used for syndication.
... this tutorial teaches rss 2.0, but makes an effort to point out issues with other
versions of rss.
...(and yes, that means that there are 2 different
version of rss 0.91.) the difference between the two different
versions of rss 0.91 -- netscape's rss 0.91 and userland's rss 0.91 -- is that userland's rss 0.91 does not have the dtd that netscape's rss 0.91 has; and thus doesn't have the extra entities that netscape's rss 0.91 has (commonly found in html).
...And 10 more matches
Windows Media in Netscape - Archive of obsolete content
netscape 7.1 will work with both the windows media player 6.4 activex control as well as
versions 7 through 9.
...detecting the right browser like internet explorer, netscape 7.1 and later
versions can play windows media files using the popular windows media player activex control.
...netscape 7.1 is the first netscape gecko™ browser to support the windows media player as an activex control -- previous netscape browsers did not support any activex controls, and thus detecting which
versions of netscape support the windows media activex control is an important first step towards building multimedia experiences using html, javascript, and the windows media activex control.
...And 10 more matches
Handling common JavaScript problems - Learn web development
see good-for-loop.html (see the source code also) for a
version that works.
... to install it: install atom (if you haven't got an up-to-date
version already installed) — download it from the atom page linked above.
...this is best done using a minification tool like uglify (there's also an online
version — see jscompress.com) when using apis, make sure you turn off the api features when they are not being used; some api calls can be really expensive on processing power.
...And 10 more matches
SpiderMonkey Build Documentation
when building a
version older than 28, you'll additionally need nspr.
...(if you want to use spidermonkey as a library in your c++ application, or work on improving spidermonkey itself, do a developer/debug build instead, as described below.) cd js/src # this name should end with "_opt.obj" to make the
version control system ignore it.
...thus, in addition to following the steps above, you should also create a debug build using these steps: cd js/src # this name should end with "_dbg.obj" to make the
version control system ignore it.
...And 10 more matches
nsIUpdate
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsiupdatepatch getpatchat(in unsigned long index); nsidomelement serialize(in nsidomdocument updates); attributes attribute type description app
version astring the application
version of this update.
...this lets the system differentiate between several nightly builds with the same
version, for example.
... display
version astring the string to display in the user interface for the
version.
...And 10 more matches
Building a Thunderbird extension 3: install manifest
warning: this content is for older
versions of thunderbird.
... open the file called install.rdf that you created at the top of your extension's directory hierarchy and paste the following text into the file: <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>myfirstext@jen.zed</em:id> <em:name>my first extension</em:name> <em:
version>1.0</em:
version> <em:creator>jenzed</em:creator> <em:targetapplication> <description> <em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id> <em:min
version>1.5</...
...em:min
version> <em:max
version>5.0.*</em:max
version> </description> </em:targetapplication> </description> </rdf> the following items (shown in bold) should be customized for your application: <em:id>myfirstext@jen.zed</em:id>: this is the id of the extension.
...And 10 more matches
StringView - Archive of obsolete content
however, this is slow and error-prone, due to the need for multiple con
versions (especially if the binary data is not actually byte-format data, but, for example, 32-bit integers or floats).
...< 9007199254740992 && math.floor(nval) === nval; }; } /*\ |*| |*| stringview mdndeveloper network |*| |*| revision #12, march 21st, 2017 |*| |*| https://developer.mozilla.org/add-ons/code_snippets/stringview |*| https://developer.mozilla.org/docs/user:fusionchess |*| https://github.com/madmurphy/stringview.js |*| |*| this framework is released under the gnu lesser general public license,
version 3 or later.
...*/ ntranscrtype = 7; } con
versionswitch: switch (ntranscrtype) { case 0: /* both the source and the new stringview have a fixed-length encoding...
...And 9 more matches
Basic concepts - Web APIs
it used to include a synchronous
version also, for use in web workers, but this was removed from the spec due to lack of interest by the web community.
... current
version.
... when a database is first created, its
version is the integer 1 if not specified otherwise.
...And 9 more matches
Using Service Workers - Web APIs
setting up to play with service workers many service workers features are now enabled by default in newer
versions of supporting browsers.
... if however you find that demo code is not working in your installed
versions, you might need to enable a pref: firefox nightly: go to about:config and set dom.serviceworkers.enabled to true; restart browser.
...the primary use of onactivate is for cleanup of resources used in previous
versions of a service worker script.
...And 9 more matches
Enhanced Extension Installation - Archive of obsolete content
when a newer
version fo an existing extension is installed, files for the newer
version are copied into the folder used by the older
version, and obsolete files are not cleaned up.
... in the profile directory, the file compatibility.ini stores information about the
version of the application (build info) that last started this profile - during startup this file is checked and if the
version info held by the running app disagrees with the info held by this file, a compatibility check is run on all installed items.
...the extension manager extracts that file and checks to see if the item is compatible with the running
version of the application.
...And 8 more matches
Chapter 5: Let's build a Firefox extension - Archive of obsolete content
listing 1: content for install.rdf <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <!-- unique id for extension.
... can be in e-mail address format or guid format --> <em:id>helloworld@xuldev.org</em:id> <!-- indicates that this add-on is an extension --> <em:type>2</em:type> <!-- extension name displayed in add-on manager --> <em:name>hello, world!</em:name> <!-- extension
version number.
... there is a
version numbering scheme you must follow --> <em:
version>0.1</em:
version> <!-- brief description displayed in add-on manager --> <em:description>my first extension.</em:description> <!-- name of extension's primary developer.
...And 8 more matches
Using XPInstall to Install Plugins - Archive of obsolete content
in particular, this includes: recent netscape browsers such as netscape 6.2.x and netscape 7.0, which are both based on netscape gecko, which is at the core of the mozilla browser recent beta-only
versions of the aol software based on netscape gecko, the layout engine of the mozilla project.
...the initinstall method is polymorphic, but here is a recommended invocation mechanism: initinstall("my plugin software", "@myplugin.com/myplugin,
version=2.5", "2.5.0.0"); in the code snippet above, the initinstall method is invoked with three parameters: a string for the name of the application a string signifying the plugin identifier associated with the plugin.
... this value is actually entered in the client
version registry upon installation, a mozilla-browser file that stores metadata about the software that has just been installed.
...And 8 more matches
Supporting older browsers - Learn web development
in my experience, developers are often very worried about the experience of 1% of users in an old
version of internet explorer, while not considering at all the far greater number who have accessibility needs.
...at the bottom of this page is a table, which lists major browsers along with the
version they began supporting this property.
...similarly, some of your users will have an old browser
version, and others the latest browser.
...And 8 more matches
Localizing with Mercurial
in mozilla, we use the the mercurial
version control system (hg) to manage our source code and localizations.
...localizing current
versions of firefox, thunderbird and seamonkey includes working with mercurial.
... open a terminal window and enter hg --
version.
...And 8 more matches
Fullscreen API - Web APIs
in a real-world deployment, at this time, you'll want to check for prefixed
versions of this (mozfullscreenelement, msfullscreenelement, or webkitfullscreenelement, for example).
... full support ≤79 full support ≤79alternate name alternate name uses the non-standard name: webkitisfullscreenfirefox full support 64 full support 64 no support 49 — 65disabled disabled from
version 49 until
version 65 (exclusive): this feature is behind the full-screen-api.unprefix.enabled preference (needs to be set to true).
... full support 71 full support 18alternate name alternate name uses the non-standard name: webkitisfullscreenfirefox android full support 64 full support 64 no support 49 — 65disabled disabled from
version 49 until
version 65 (exclusive): this feature is behind the full-screen-api.unprefix.enabled preference (needs to be set to true).
...And 8 more matches
IndexedDB API - Web APIs
custom event interfaces this specification fires events with the following custom interface: idb
versionchangeevent the idb
versionchangeevent interface indicates that the
version of the database has changed, as the result of an idbopendbrequest.onupgradeneeded event handler function.
... obsolete interfaces an early
version of the specification also defined the following, now removed, interfaces.
... they are still documented in case you need to update previously written code: idb
versionchangerequest represents a request to change the
version of a database.
...And 8 more matches
:is() (:matches(), :any()) - CSS: Cascading Style Sheets
note that currently browsers support this functionality as :matches(), or through an older, prefixed pseudo-class — :any(), including older
versions of chrome, firefox, and safari.
... /* selects any paragraph inside a header, main or footer element that is being hovered */ :is(header, main, footer) p:hover { color: red; cursor: pointer; } /* the above is equivalent to the following */ header p:hover, main p:hover, footer p:hover { color: red; cursor: pointer; } /* backwards-compatible
version with :-*-any() and :matches() (it is not possible to group selectors into single rule, because presence of invalid selector would invalidate whole rule.) */ :-webkit-any(header, main, footer) p:hover { color: red; cursor: pointer; } :-moz-any(header, main, footer) p:hover { color: red; cursor: pointer; } :matches(header, main, footer) p:hover { color: red; cursor: pointer; } s...
...efirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internet:is()chrome full support 68notes disabled full support 68notes disabled notes combinators in the selector list argument may not match correctly (see bug 842157).disabled from
version 68: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
...And 8 more matches
HTTP conditional requests - HTTP
validators all conditional headers try to check if the resource stored on the server matches a specific
version.
... to achieve this, the conditional requests need to indicate the
version of the resource.
... as comparing the whole resource byte to byte is impracticable, and not always what is wanted, the request transmits a value describing the
version.
...And 8 more matches
Authoring MathML - MathML
note that ua string sniffing is not the most reliable method and might break from
version to
version: var ua = navigator.useragent; var isgecko = ua.indexof("gecko") > -1 && ua.indexof("khtml") === -1 && ua.indexof('trident') === -1; var iswebkit = ua.indexof('applewebkit') > -1 && ua.indexof('chrome') === -1; mathematical fonts in order to get a good layout or to allow different style, it's important to have mathematical fonts available.
...for example, the xhtml
version of the previous example looks like this: <?xml
version="1.0" encoding="utf-8"?> <!doctype html public "-//w3c//dtd xhtml 1.1 plus mathml 2.0//en" "http://www.w3.org/math/dtd/mathml2/xhtml-math11-f.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>xhtml+mathml example</title> </head> <body> <h1>xhtml+mathml example</h1> <p> square root of two: <math xmlns="http://w...
...moreover, a latex-to-mathml input box has also been integrated into seamonkey since
version 2.28 and into thunderbird since
version 31.
...And 8 more matches
Media container formats (file types) - Web media technologies
edge 16, firefox 51, safari 11 mpeg / mpeg-2 moving picture experts group (1 and 2) — mpeg-4 (mp4) moving picture experts group 4 chrome 3, edge 12, firefox, internet explorer 9, opera 24, safari 3.1 ogg ogg chrome 3, firefox 3.5, edge 173 (desktop only), internet explorer 9, opera 10.50 quicktime (mov) apple quicktime movie only older
versions of safari, plus other browsers that supported apple's quicktime plugin webm web media chrome 6, edge 173 (desktop only), firefox 4, opera 10.6, safari (webrtc only) [1] unless otherwise specified, both mobile and desktop browser compatibility is implied if a browser is listed here.
...t 2 no mpeg-2 part 2 no audio codecs supported by mpeg-1 and mpeg-2 codec browser support chrome edge firefox safari mpeg-1 audio layer i no mpeg-1 audio layer ii no mpeg-1 audio layer iii (mp3) yes mpeg-4 (mp4) mpeg-4 (mp4) is the latest
version of the mpeg file format.
... there are two
versions of the format, defined in parts 1 and 14 of the specification.
...And 8 more matches
How to convert an overlay extension to restartless - Archive of obsolete content
next, what's the minimum
version of firefox we should require (preferably an esr)?
...using the current firefox esr, stable
version, or nightly is generally a better idea if given the option, but some users take forever to upgrade.
... reportedly xmlhttprequest doesn't work reliably when used in jsm under
versions of firefox less than 16, however as previously mentioned, this guide should be taken as requiring firefox 17+.
...And 7 more matches
The Essentials of an Extension - Archive of obsolete content
<em:name>xul school hello world</em:name> <em:description>welcome to xul school!</em:description> <em:
version>0.1</em:
version> <em:creator>appcoast</em:creator> <em:homepageurl>https://developer.mozilla.org/docs/xul_school</em:homepageurl> this is the data that is displayed before and after the extension is installed, that you can see in the add-ons manager.
... <em:targetapplication> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:min
version>4.0</em:min
version> <em:max
version>10.*</em:max
version> </description> </em:targetapplication> this node specifies the target application and target
versions for the extension, specifically firefox, from
version 4 up to
version 10.
...you can have an extension that works on multiple applications and
versions.
...And 7 more matches
Getting Started - Archive of obsolete content
setup download the latest
version of mozilla, install it (install the dom inspector as well), and select the classic skin.
... you can use the same
version as the one you use to browse the web, but if you mess it up, it is possible that you will be unable to access your browser without uninstalling and reinstalling mozilla.
...change the blue part to whatever you want your theme called and then its
version number.
...And 7 more matches
jspage - Archive of obsolete content
var mootools={
version:"1.2.4",build:"0d9113241a90b9cd5643b926795852a2026710d4"};var native=function(k){k=k||{};var a=k.name;var i=k.legacy;var b=k.protect; var c=k.implement;var h=k.generics;var f=k.initialize;var g=k.afterimplement||function(){};var d=f||i;h=h!==false;d.constructor=native;d.$family={name:"native"}; if(i&&f){d.prototype=i.prototype;}d.prototype.constructor=d;if(a){var e=a.tolowercase();d.prototype.$family={name:e};native.typize(d,e);}var j=function(n,l,o,m){if(!b||m||!n.prototype[l]){n.prototype[l]=o; }if(h){native.genericize(n,l,b);}g.call(n,l,o);return n;};d.alias=function(n,l,p){if(typeof n=="string"){var o=this.prototype[n];if((n=o)){return j(this,l,n,p); }}for(var m in n){this.alias(m,n[m],l);}return this;};d.implement=function(m,l,o){if(typeof m=="string"){return j(...
...if(typeof a.length=="number"){if(a.callee){return"arguments"; }else{if(a.item){return"collection";}}}}return typeof a;}function $unlink(c){var b;switch($type(c)){case"object":b={};for(var e in c){b[e]=$unlink(c[e]); }break;case"hash":b=new hash(c);break;case"array":b=[];for(var d=0,a=c.length;d<a;d++){b[d]=$unlink(c[d]);}break;default:return c;}return b;}var browser=$merge({engine:{name:"unknown",
version:0},platform:{name:(window.orientation!=undefined)?"ipod":(navigator.platform.match(/mac|win|linux/i)||["other"])[0].tolowercase()},features:{xpath:!!(document.evaluate),air:!!(window.runtime),query:!!(document.queryselector)},plugins:{},engines:{presto:function(){return(!window.opera)?false:((arguments.callee.caller)?960:((document.getelementsbyclassname)?950:925)); },trident:function(){return(!w...
...eturn(navigator.taintenabled)?false:((browser.features.xpath)?((browser.features.query)?525:420):419); },gecko:function(){return(!document.getboxobjectfor&&window.mozinnerscreenx==null)?false:((document.getelementsbyclassname)?19:18);}}},browser||{});browser.platform[browser.platform.name]=true; browser.detect=function(){for(var b in this.engines){var a=this.engines[b]();if(a){this.engine={name:b,
version:a};this.engine[b]=this.engine[b+a]=true; break;}}return{name:b,
version:a};};browser.detect();browser.request=function(){return $try(function(){return new xmlhttprequest();},function(){return new activexobject("msxml2.xmlhttp"); },function(){return new activexobject("microsoft.xmlhttp");});};browser.features.xhr=!!(browser.request());browser.plugins.flash=(function(){var a=($try(function(){return ...
...And 7 more matches
Install script template - Archive of obsolete content
var plid = "@myplugin.com/myplugin,
version=5.3"; var
version = "5.3.0.0"; var mimetype = "application/x-my-plugin"; var suffix = "my"; var suffix_description = "my plugin files"; var company_name = "mypluginco"; var plugin_description = "my exemplary plugin mine all mine"; // registry constant paths // these will be used when the win32 registry keys are written var hkey_local_machine = "hkey_local_machine"; var hkey_current_user = "h...
...= -4711; var winregisnullerror = -4712; var invalidrootkeyerror = -4713; var registrykeynotwritableerror = -4714; //initinstall block //the installation is initialized here -- if we fail here, cancel the installation // initinstall is quite an overloaded method, but i have invoked it here with three strings // which are globally defined err = initinstall(software_name, plid,
version); if (err != 0) { // call initinstall again in case illegal characters in plid err = initinstall(software_name, software_name,
version); if (err != 0) cancelinstall(err); } //addfiles to current browser block var pluginsfolder = getfolder("plugins"); //verify disk space if(verifydiskspace(pluginsfolder, plugin_size+component_size)) { // start installing plugin shared library reset...
...error(); // install the plugin shared library to the current browser's plugin directory errblock1 = addfile (plid,
version, plugin_file, pluginsfolder, null); if (errblock1!=0) { logcomment("could not add " + plugin_file + " to " + pluginsfolder + ":" + errblock1); cancelinstall(errblock1); } // start installing xpt file if this is a scriptable plugin // install to the plugins directory -- this works well in mozilla 1.0 clients // in mozilla 1.0 clients, the components directory can be avoided for xpt files errblock1 = addfile (plid,
version, component_file, pluginsfolder, null); if (errblock1!=0) { logcomment("could not add " + component_file + " to " + pluginsfolder + ":" + errblock1); cancelinstall(errblock1); } } else { logcomment("cancelling current browser inst...
...And 7 more matches
Cooperative asynchronous JavaScript: Timeouts and intervals - Learn web development
requestanimationframe() the modern
version of setinterval().
...the following two
versions of the code snippet are equivalent to the first one: // with a named function let mygreeting = settimeout(function sayhi() { alert('hello, mr.
...you'll probably want a way to stop such tasks, otherwise you may end up getting errors when the browser can't complete any further
versions of the task, or if the animation being handled by the task has finished.
...And 7 more matches
Introduction to cross browser testing - Learn web development
from other web sites they own, or from previous
versions of the web site you are now working on.
...the site should work entirely in the last few
versions of the most popular desktop and mobile (ios, android, windows phone) browsers — this should include chrome (and opera as it is based on the same rendering engine as chrome), firefox, ie/edge, and safari.
...for example, if the e-commerce site owner wants a webgl-powered 3d tour of each product built into the product pages, they will need to accept that this just won't work in ie
versions before 11.
...And 7 more matches
Strategies for carrying out testing - Learn web development
you probably want to just test the latest
versions of the first three, as these browsers receive regular updates.
... for edge and ie, you probably want to test the last couple of
versions; these should all go in the a grade tier.
... note: you can only have one
version of ie or edge installed on a machine at once, so you will probably have to use virtual machine, or other strategy to do the testing you need.
...And 7 more matches
Testopia
testopia 3.0 (not yet released) if you upgraded to bugzilla 5.0, you probably noticed that testopia 2.5 is not compatible with this
version.
... testopia 2.5 this
versions supports bugzilla 4.2 and 4.4, and the best news is that it no longer requires a patch for bugzilla.
... if you are upgrading, please reverse the existing
version's patch before installing.
...And 7 more matches
Profile Manager
firefox provides a built-in applet to manage these profiles, but it will eventually be going away (see bug 214675), so a new standalone profile manager application has been created, which works with any xulrunner application, and has many features not found in firefox's built-in
version.
... system requirements: mac: an intel processor, i386 or x86_64 linux: any
version capable of running firefox 4.0 windows: xp or later source code you can download the source as well: hg clone http://hg.mozilla.org/automation/profilemanager/ instructions for building can be found in build.txt.
... to use profile manager with an application other than firefox, you need to launch it using the application's name as an argument, for example: profilemanager-bin seamonkey profiles and application
versions profile manager manages two different lists: one of user profiles, and the other of application
versions that can be used with the profiles.
...And 7 more matches
JSS FAQ
jss frequently asked questions newsgroup: mozilla.dev.tech.crypto content: what
versions of jdk and jce do you suggest?
... what
versions of jdk and jre do you suggest?
... jss 3.x works with jdk
versions 1.2 or higher, except
version 1.3.0.
...And 7 more matches
JSAPI reference
a note on
versioning: up until the release of firefox 4, spidermonkey, and thus the jsapi, was
versioned in an ad-hoc way, with releases happening at times that roughly, but not really, corresponded to firefox releases.
...the reference applies this
versioning scheme retroactively starting with firefox 5.
... firefox 4 is the last release that has a corresponding spidermonkey release with the old scheme, where the jsapi has the
version 1.8.5.
...And 7 more matches
Bundling multiple binary components
since binary components are linked against a single gecko sdk, a dependency to a particular
version of gecko is created.
... if the component uses only "frozen" xpcom interfaces, there is a good chance the same binary component will work with different
versions of gecko (
version 1.8 and 1.9, for example).
... the more likely case is that the component uses "unfrozen" interfaces and those interfaces can change between gecko
versions.
...And 7 more matches
mozITXTToHTMLConv
txttohtmlconv); method overview unsigned long citeleveltxt(in wstring line, out unsigned long loglinestart) void findurlinplaintext(in wstring text, in long alength, in long apos, out long astartpos, out long aendpos) wstring scanhtml(in wstring text, in unsigned long whattodo) wstring scantxt(in wstring text, in unsigned long whattodo) constants con
version control attributes these bits allow you to control the con
version of text into html.
... constant type description kentities unsigned long enables con
version of basic special characters to html entities.
... kglyphsubstitution unsigned long enables con
version of smilies and non-ascii special characters.
...And 7 more matches
IDBFactory.open() - Web APIs
may trigger upgradeneeded, blocked or
versionchange events.
... syntax for the current standard: var idbopendbrequest = indexeddb.open(name); var idbopendbrequest = indexeddb.open(name,
version); parameters name the name of the database.
...
version optional optional.
...And 7 more matches
User-Agent - HTTP
the user-agent request header is a characteristic string that lets servers and network peers identify the application, operating system, vendor, and/or
version of the requesting user agent.
... header type request header forbidden header name no syntax user-agent: <product> / <product-
version> <comment> common format for web browsers: user-agent: mozilla/5.0 (<system-information>) <platform> (<platform-details>) <extensions> directives <product> a product identifier — its name or development codename.
... <product-
version>
version number of the product.
...And 7 more matches
Image file type and format guide - Web media technologies
x, internet explorer, opera, safari tiff tagged image file format image/tiff .tif, .tiff none built-in; add-ons required webp web picture format image/webp .webp chrome, edge, firefox, opera the abbreviation for each format links to a longer description of the format, its capabilities, and detailed browser compatibility information; including which
versions introduced support and specific special features that may have been introduced later.
... compression lossless licensing free and open under the creative commons attribution-sharealike license (cc-by-sa)
version 3.0 or later.
... mime type image/bmp file extension(s) .bmp specification no specification; however, microsoft provides general documentation of the format at docs.microsoft.com/en-us/windows/desktop/gdi/bitmap-storage browser compatibility all
versions of chrome, edge, firefox, internet explorer, opera, and safari maximum dimensions either 32,767×32,767 or 2,147,483,647×2,147,483,647 pixels, depending on the format
version supported color modes color mode bits per component (d) description greyscale 1 each bit represents a single pi...
...And 7 more matches
lang/functional - Archive of obsolete content
defer(fn) takes a function and returns a wrapped
version of the function.
... calling the wrapped
version will call the original function during the next event loop.
... returns function : the memoized
version of fn.
...And 6 more matches
cfx - Archive of obsolete content
called with no options it looks for a file called package.json in the current directory, loads the corresponding add-on, and runs it under the
version of firefox it finds in the platform's default install path.
... you can specify a different
version of the host application using the --binary option, passing in the path to the application binary to run.
...but note that the
version must be 4.0b7 or later.
...And 6 more matches
Creating a Microsummary - Archive of obsolete content
to begin building the generator, create a new empty text file and add an xml declaration and empty <generator> tag to it: <?xml
version="1.0" encoding="utf-8"?> <generator xmlns="http://www.mozilla.org/microsummaries/0.1"> </generator> giving it a name generators should have name attributes which are arbitrary descriptions of the microsummaries the generator creates.
...since our generator will be creating microsummaries displaying the firefox download count, let's give it the name "firefox download count": <?xml
version="1.0" encoding="utf-8"?> <generator xmlns="http://www.mozilla.org/microsummaries/0.1" name="firefox download count"> </generator> adding an xslt transform sheet generators must include an xslt transform sheet (also known as an xslt stylesheet) which transforms the page content into its microsummary.
... add the xslt transform sheet to the generator by including it within a <template> element: <?xml
version="1.0" encoding="utf-8"?> <generator xmlns="http://www.mozilla.org/microsummaries/0.1" name="firefox download count"> <template> <transform xmlns="http://www.w3.org/1999/xsl/transform"
version="1.0"> </transform> </template> </generator> note that while microsummary generators can include arbitrary xslt, including xslt that produces rich text output, firefox currently only displays the text
version of the xslt output.
...And 6 more matches
Mozilla Crypto FAQ - Archive of obsolete content
i've updated this
version of the mozilla crypto faq to discuss the situation now that the rsa public key algorithm is in the public domain and a full open source crypto implementation is being added to the mozilla code base.
...shortly thereafter the nss developers began work on an open source implementation of the rsa algorithm; that code, together with code previously developed for other cryptographic algorithms, will be included in a new
version 3.1 of the nss open source cryptographic and pki library.
... this new rsa-capable
version of nss will then be included in a future
version of the open source psm software, which will provide ssl support for mozilla.
...And 6 more matches
Complete - Archive of obsolete content
features of this extension this extension is a more complex
version of the original custom toolbar button extension.
... chrome/allcustom.jar the extension jar defaults/preferences directory containing a preferences file inside the jar there are three directories: content xul, javascript and other content that does not depend on the locale or theme locale files for each locale skin files for each theme
version checks firefox etc.
...these
version checks depend on the
version numbers specified in the install.rdf file.
...And 6 more matches
Manifest Files - Archive of obsolete content
if the xpcnativewrappers flag is specified, it indicates that scripts running in a privileged context don't call these overridden
versions, but the original built-in
versions instead.
... otherwise, if an extension attempted to call the modified
versions, it would likely not work properly, or worse, create a security hole.
...in this case, a
version number is being used as part of the theme name, but that is optional if you are making your own theme.
...And 6 more matches
Deploying XULRunner - Archive of obsolete content
note: to actually install a xulrunner application, a compatible
version of xulrunner must be registered on the system and the app must be deployed per the instructions at xul application packaging.
... if your installer is capable of determining whether or not xulrunner has been registered on the system you could perform the check and register the appropriate
version if necessary.
...the responsibility still lies with the developer to provide the correct
version of xulrunner per platform.
...And 6 more matches
Building a Theme - Archive of obsolete content
other tutorials exist for building themes for earlier
versions of firefox.
... create the install manifest open the file called install.rdf that you created at the top of your extension's folder hierarchy and put this inside: <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>sample@example.net</em:id> <em:
version>1.0</em:
version> <em:type>4</em:type> <!-- target application this theme can install into, with minimum and maximum supported
versions.
... --> <em:targetapplication> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:min
version>29.0</em:min
version> <em:max
version>39.*</em:max
version> </description> </em:targetapplication> <!-- front end metadata --> <em:name>my theme</em:name> <em:internalname>sample</em:internalname> <em:description>a test extension</em:description> <em:creator>your name here</em:creator> <em:homepageurl>http://www.example.com/</em:homepageurl> </description> </rdf> sample@example.net - the id of the extension.
...And 6 more matches
Understanding client-side JavaScript frameworks - Learn web development
if you need to check your code against our
version, you can find a finished
version of the sample react app code in our todo-react repository.
... for a running live
version, see https://mdn.github.io/todo-react-build/.
... ember tutorials note: ember tutorials last tested in may 2020, with ember/ember cli
version 3.18.0.
...And 6 more matches
Localizing with Koala
translating to x-testing will basically consist of converting any strings to uppercase, for example "file" in original
version (en-us) will become "file" in x-testing.
...
version: 3.6.
...n\application\firefox> hg clone http://hg.mozilla.org/releases/mozilla-1.9.2 3.6 requesting all changes adding changesets adding manifests adding file changes added 33099 changesets with 158636 changes to 50664 files (+9 heads) updating working directory 40357 files updated, 0 files merged, 0 files removed, 0 files unresolved configure the locale locale id: x-testing (put your locale's code)
version: 3.6 location: choose the folder where you want to keep the localized files or leave empty for now check "mercurial" if you wish to use mercurial to keep the revision history of your files (very recommended) existing localizations: url: if you're editing an existing localization or you already have a repository set up (either on hg.mozilla.org or bitbucket), type the url of the remote repository...
...And 6 more matches
SpiderMonkey 1.8.8
these release notes are an incomplete draft and were initially seeded from the 1.8.5 release notes, so lots of the information here isn't actually new to spidermonkey 1.8.8 (nor is it even the case that the
version number will be 1.8.8!).
... —insert-actual-release-date-here platform support spidermonkey 1.8.8 is supported on all the platforms where firefox insert-actual-firefox-
version-number-here runs.
... on all other platforms the jit is simply disabled; javascript code runs in an interpreter, as in previous
versions.
...And 6 more matches
Accessing the Windows Registry Using XPCOM
a simple example here's a simple example showing how to read your windows productid: var wrk = components.classes["@mozilla.org/windows-registry-key;1"] .createinstance(components.interfaces.nsiwindowsregkey); wrk.open(wrk.root_key_local_machine, "software\\microsoft\\windows\\current
version", wrk.access_read); var id = wrk.readstringvalue("productid"); wrk.close(); this example, while simple, shows several important things about using the interface.
...here's the simple example again, but using openchild(): var wrk = components.classes["@mozilla.org/windows-registry-key;1"] .createinstance(components.interfaces.nsiwindowsregkey); wrk.open(wrk.root_key_local_machine, "software\\microsoft", wrk.access_read); var subkey = wrk.openchild("windows\\current
version", wrk.access_read); var id = subkey.readstringvalue("productid"); subkey.close(); wrk.close(); once you've opened a registry key, you can begin to make use of it.
...both of these—hasvalue() and haschild()—as demonstrated in this example: var wrk = components.classes["@mozilla.org/windows-registry-key;1"] .createinstance(components.interfaces.nsiwindowsregkey); wrk.open(wrk.root_key_local_machine, "software\\microsoft", wrk.access_read); if (wrk.haschild("windows")) { var subkey = wrk.openchild("windows\\current
version", wrk.access_read); var id; if (subkey.hasvalue("productid")) id = subkey.readstringvalue("productid"); subkey.close(); } wrk.close(); enumerating registry keys and values in some situations, you may want to enumerate a number of keys or values whose names you do not know.
...And 6 more matches
nsIPropertyBag2
note: accessing a property of a different type may attempt con
version to this type.
...note: accessing a property of a different type may attempt con
version to this type.
...note: accessing a property of a different type may attempt con
version to this type.
...And 6 more matches
nsIUpdateItem
method overview void init(in astring id, in astring
version, in astring installlocationkey, in astring minapp
version, in astring maxapp
version, in astring name, in astring downloadurl, in astring xpihash, in astring iconurl, in astring updateurl, in astring updatekey, in long type, in astring targetappid); attributes attribute type description iconurl astring the url of the icon that can be shown for this item.
... maxapp
version astring the maximum
version of the application that this item works with, in fvf format.
... minapp
version astring the minimum
version of the application that this item works with, in fvf format.
...And 6 more matches
IDBDatabase - Web APIs
the interface provides the only way to get and manage
versions of the database.
... idbdatabase.
version read only a 64-bit integer that contains the
version of the connected database.
...
versionchange fired when a database structure change was requested.
...And 6 more matches
IDBOpenDBRequest.onupgradeneeded - Web APIs
the onupgradeneeded property of the idbopendbrequest interface is the event handler for the upgradeneeded event, triggered when a database of a bigger
version number than the existing stored database is loaded.
... the event passed to the listener is an idb
versionchangeevent.
...}; example in the following example you can see the onupgradeneeded handler being used to update the database structure if a database with a higher
version number is loaded.
...And 6 more matches
Using the Notifications API - Web APIs
firefox is already doing this from
version 72, for example, and safari has done it for some time.
...in its simplest form, we just include the following: notification.requestpermission().then(function(result) { console.log(result); }); this uses the promise-based
version of the method.
... if you want to support older
versions, you might have to use the older callback
version, which looks like this: notification.requestpermission(); the callback
version optionally accepts a callback function that is called once the user has responded to the request to display permissions.
...And 6 more matches
USBDevice - Web APIs
usbdevice.device
versionmajor read only the major
version number of the device in a semantic
versioning scheme.
... usbdevice.device
versionminor read only the minor
version number of the device in a semantic
versioning scheme.
... usbdevice.device
versionsubminor read only the patch
version number of the device in a semantic
versioning scheme.
...And 6 more matches
Backwards Compatibility of Flexbox - CSS: Cascading Style Sheets
browser support for the up-to-date
version of the specification is excellent from this point forward.
... there are a few old articles in existence that refer to the older
versions of flexbox, which are pretty easy to identify due to the change in the way that a flex container is created.
...the two browsers you should still keep in mind for cross-browser compatibility are: internet explorer 10, which implemented the display: flexbox
version of the specification with the -ms- prefix.
...And 6 more matches
system/xul-app - Archive of obsolete content
versioninrange(
version, lowinclusive, highexclusive) compares a given
version to a
version range.
... see the mdn documentation for details on
version comparisons.
... parameters
version : string the
version to compare.
...And 5 more matches
Bootstrapped extensions - Archive of obsolete content
this feature was unavailable in firefox
versions before 8.
... backward compatibility because older
versions of firefox don't know about the bootstrap property or bootstrap.js file, it's not overly difficult to create an xpi that will work on both as a bootstrappable extension and as a traditional extension.
...newer
versions of firefox will use the bootstrap.js script, ignoring the components and overlays, while older
versions will use the overlays.
...And 5 more matches
Creating custom Firefox extensions with the Mozilla build system - Archive of obsolete content
this file should be located in the main extension directory and look something like this: <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>myextension@mycompany.com</em:id> <em:
version>0.1</em:
version> <em:targetapplication> <!-- firefox --> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:minv...
...ersion>1.0+</em:min
version> <em:max
version>1.0+</em:max
version> </description> </em:targetapplication> <!-- front-end metadata --> <em:name>my first extension</em:name> <em:description>just an example.</em:description> <em:creator>allpeers.com</em:creator> <em:homepageurl>http://www.allpeers.com/blog/</em:homepageurl> </description> </rdf> there's a detailed description of the format of the install.rdf file.
...you'll also see the "exploded"
version of the xpi (i.e.
...And 5 more matches
Creating a status bar extension - Archive of obsolete content
<?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>status-bar-sample-1@example.com</em:id> <em:
version>1.0</em:
version> <em:type>2</em:type> <!-- front end metadata --> <em:name>status bar sample 1</em:name> <em:description>sample static status bar...
... panel</em:description> <em:creator>my name</em:creator> <em:homepageurl>http://developer.mozilla.org/en/docs/creating_a_status_bar_extension</em:homepageurl> <!-- describe the firefox
versions we support --> <em:targetapplication> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:min
version>1.5</em:min
version> <em:max
version>2.0.0.*</em:max
version> </description> </em:targetapplication> </description> </rdf> let's take a look at some key parts of the manifest.
...
version the extension's
version number.
...And 5 more matches
Migrate apps from Internet Explorer to Mozilla - Archive of obsolete content
they include: html 4.01, xhtml 1.0 and xhtml 1.1 cascade style sheets (css): css level 1, css level 2.1 and parts of css level 3 document object model (dom): dom level 1, dom level 2 and parts of dom level 3 mathematical markup language: mathml
version 2.0 extensible markup language (xml): xml 1.0, namespaces in xml, associating style sheets with xml documents 1.0, fragment identifier for xml xsl transformations: xslt 1.0 xml path language: xpath 1.0 resource description framework: rdf simple object access protocol: soap 1.1 ecma-262, revision 3 (javascript 1.5): ecma-262 general cross-browser coding tips even though web standards do e...
...browser sniffing is usually done through the useragent, such as: mozilla/5.0 (x11; u; linux i686; en-us; rv:1.5) gecko/20031016 while using the useragent to sniff the browser provides detailed information on the browser in use, code that handles useragents often can make mistakes when new browser
versions arrive, thus requiring code changes.
... useragent sniffing makes sense in very limited cases where you really do want to know the exact browser in use, such as when you need to work around a bug in a specific
version of a specific browser.
...And 5 more matches
patch - Archive of obsolete content
method of install object syntax int patch ( string registryname, string xpisourcepath, object localdirspec, string relativelocalpath); int patch ( string registryname, install
version version, string xpisourcepath, object localdirspec, string relativelocalpath); int patch ( string registryname, string
version, string xpisourcepath, object localdirspec, string relativelocalpath); parameters the patch method has the following parameters: registryname the pathname in the client
version registry for the component that is to be patched.this parameter can be an absolute pathname, such as /royalairways/royalsw/executable or a relative pathname, such as executable.
... note that the registry pathname is not the location of the software on the computer; it is the location of information about the software inside the client
version registry.
...
version an install
version object or a string of up to four integer values delimited by periods, such as "1.17.1999.1517".
...And 5 more matches
SeaMonkey - making custom toolbar (SM ver. 1.x) - Archive of obsolete content
supported applications you can use the steps on this page only with seamonkey 1.x
versions.
... note: for a similar tutorial that applies to seamonkey 2, firefox, thunderbird and sunbird, see: custom toolbar button earlier
versions and other mozilla applications also support extensions, but some parts of this tutorial are not appropriate for them.
...paste it into the new file: <?xml
version="1.0" encoding="utf-8"?> <!doctype rdf:rdf> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:chrome="http://www.mozilla.org/rdf/chrome#"> <rdf:seq rdf:about="urn:mozilla:package:root"> <rdf:li rdf:resource="urn:mozilla:package:custombutton"/> </rdf:seq> <rdf:description rdf:about="urn:mozilla:package:custombutton" chrome:displayname="custom butt...
...And 5 more matches
Custom toolbar button - Archive of obsolete content
supported applications you can use the steps on this page with any or all of these mozilla applications: firefox 1.5 or a later
version seamonkey 2.0 or a later
version thunderbird 1.5 or a later
version sunbird 0.3 or a later
version pre-release
versions of these (alphas, betas and release candidates) are also ok.
... note: there is a similar tutorial for seamonkey 1.x on the page: custom toolbar button:seamonkey earlier
versions and other mozilla applications also support extensions, but some parts of this tutorial are not appropriate for them.
...paste it into the new file: <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest" em:name="custom button" em:description="my custom toolbar button" em:creator="my name" em:id="custom-toolbar-button@example.com" em:
version="1.0" em:homepageurl="http://developer.mozilla.org/en/doc...
...And 5 more matches
XUL Application Packaging - Archive of obsolete content
required name example: name=testapplication
version specifies the application
version number.
... required see toolkit
version format for
version numbering details example:
version=0.1 buildid specifies a unique build identifier.
... this is typically a date identifier, and should be different for every released
version of an application.
...And 5 more matches
Introduction to SSL - Archive of obsolete content
the details of the protocol are available in request for comments (rfc): 2246,the tls protocol
version 1.0.
...most other red hat products plan to support the protocol in future
versions.
...clients and servers may support different cipher suites, or sets of ciphers, depending on factors such as the
version of ssl they support, company policies regarding acceptable encryption strength, and government restrictions on export of ssl-enabled software.
...And 5 more matches
Developing cross-browser and cross-platform pages - Archive of obsolete content
it assumes that web authors are able to correctly identify browsers and browser
versions in the first place...
... the browser identification approach relies on functions that check the browser type string value and browser
version string value and that search for certains characters or sub-strings in the navigator.useragent property string.
... // bad sample if (navigator.app
version.charat(0) == "8") { if (navigator.appname == "netscape") { isns8 = true; alert("netscape 8"); }; } else if (navigator.app
version.indexof("msie") != -1) { isie = true; alert("internet explorer"); }; while this kind of checking in the above code can work in a crude sense, sharp readers may wonder what happens when internet explorer 8 is released or when an opera 8.x user visits the page or even when ...
...And 5 more matches
Client-side storage - Learn web development
you can see our finished
version running live here.
... note: in the line <script src="index.js" defer></script> of the source for our finished
version, the defer attribute specifies that the contents of the <script> element will not execute until the page has finished loading.
... inside the window.onload handler, add the following: // open our database; it is created if it doesn't already exist // (see onupgradeneeded below) let request = window.indexeddb.open('notes_db', 1); this line creates a request to open
version 1 of a database called notes_db.
...And 5 more matches
Fetching data from the server - Learn web development
to speed things up even further, some sites also store assets and data on the user's computer when they are first requested, meaning that on subsequent visits they use the local
versions instead of downloading fresh copies when the page is first loaded.
...nsetype = 'text'; request.onload = function() { poemdisplay.textcontent = request.response; }; request.send(); replace all the xhr code with this: fetch(url).then(function(response) { response.text().then(function(text) { poemdisplay.textcontent = text; }); }); load the example in your browser (running it through a web server) and it should work just the same as the xhr
version, provided you are running a modern browser.
...this is the equivalent of the onload event handler in the xhr
version.
...And 5 more matches
Getting started with Svelte - Learn web development
it's recommended that you use the long-term support (lts)
version.
... to create your starter app template, run the following terminal commands: npx degit sveltejs/template moz-todo-svelte cd moz-todo-svelte npm install npm run dev note: degit doesn't do any kind of magic — it just lets you download and unzip the latest
version of a git repo's contents.
...> <html lang="en"> <head> <meta charset='utf-8'> <meta name='viewport' content='width=device-width,initial-scale=1'> <title>svelte app</title> <link rel='icon' type='image/png' href='/favicon.png'> <link rel='stylesheet' href='/global.css'> <link rel='stylesheet' href='/build/bundle.css'> <script defer src='/build/bundle.js'></script> </head> <body> </body> </html> the minified
version of bundle.js weighs a little more than 3kb, which includes the "svelte runtime" (just 300 lines of javascript code) and the app.svelte compiled component.
...And 5 more matches
Introduction to automated testing - Learn web development
once the install completes, test that node is installed by typing the following into the terminal, which returns the installed
versions of node and npm: node -v npm -v if you've got node/npm already installed, you should update them to their latest
versions.
...you can customize it later, but for now it'll look something like this: { "name": "node-test", "
version": "1.0.0", "description": "test for npm projects", "main": "index.js", "scripts": { "test": "test" }, "author": "chris mills", "license": "mit" } with this, you are ready to move on.
... in the input
version of the file, you may have noticed that we put an empty <p> element; htmltidy has removed this by the time the output file has been created.
...And 5 more matches
Creating a spell check dictionary add-on
this file contains information about your add-on such as name and
version number (see below).
... <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>locale-code@dictionaries.addons.mozilla.org</em:id> <em:
version>
version number</em:
version> <em:type>64</em:type> <em:unpack>true</em:unpack> <em:name>name</em:name> <!-- other install.rdf metadata such as em:localized, em:description, em:creator, em:developer, em:translator, em:contributor or em:hom...
...epageurl --> <!-- firefox --> <em:targetapplication> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:min
version>18.0a1</em:min
version> <em:max
version>46.0</em:max
version> </description> </em:targetapplication> <!-- thunderbird --> <em:targetapplication> <description> <em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id> <em:min
version>18.0a1</em:min
version> <em:max
version>22.0</em:max
version> </description> </em:targetapplication> <!-- seamonkey --> <em:targetapplication> <description> <em:id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</em:id> <em:min
version>2.15a1</em:min
version> <em:max
version>2.49</em:maxversio...
...And 5 more matches
Addon
overview of required methods void iscompatiblewith(in string app
version, in string platform
version) void findupdates(in updatelistener listener, in integer reason, in string app
version, in string platform
version) overview of optional methods void uninstall() void canceluninstall() boolean hasresource(in string path) nsiuri getresourceuri(in string path) void getdatadirectory(in datadirectorycallback callba...
...ck) required properties attribute type description appdisabled read only boolean true if this add-on cannot be used in the application based on
version compatibility, dependencies, and blocklisting.
... iscompatible read only boolean true or false depending on whether the add-on is compatible with the current application
version and platform
version.
...And 5 more matches
JS_ConvertArguments
bool js_convertarguments(jscontext *cx, const js::callargs &args, const char *format, ...); // added in spidermonkey 31 bool js_convertarguments(jscontext *cx, unsigned argc, jsval *argv, const char *format, ...); // obsolete since jsapi 30 name type description cx jscontext * the context in which to perform any necessary con
versions.
...(if con
version creates a new gc thing, the corresponding jsval is written back to argv, which is rooted.) description js_convertarguments provides a convenient way to translate a series of js values into their corresponding js types with a single function call.
...argc indicates the number of js values you are passing in for con
version.
...And 5 more matches
JS_ValueToNumber
syntax jsbool js_valuetonumber(jscontext *cx, jsval v, jsdouble *dp); name type description cx jscontext * the context in which to perform the con
version.
... if v is already a number, con
version succeeds.
... if v is undefined, null, false, or true, con
version succeeds, and the result is nan, 0, 0, or 1 respectively.
...And 5 more matches
JS_ValueToString
syntax jsstring * js_valuetostring(jscontext *cx, jsval v); name type description cx jscontext * the context in which to perform the con
version.
... if v is already a string, con
version succeeds.
... if v is true, false, null, or undefined, con
version succeeds, and the result is the string "true", "false", "null", or "undefined", accordingly.
...And 5 more matches
SpiderMonkey 24
(this change was motivated by garbage collector improvements, which lean quite heavily on c++'s support for raii through constructors and destructors.) if you are compiling with microsoft's visual studio, note that the minimum supported
version is msvc10/2010: msvc8/9 support has been dropped.
... on all other platforms the jit is simply disabled; javascript code runs in an interpreter, as in previous
versions.
... the following features in earlier
versions of spidermonkey have been dropped.
...And 5 more matches
XPCOM glue
it allows developers to link only against the frozen xpcom method symbols and maintain compatibility with multiple
versions of xpcom.
...components using internal linkage will have shared-library dependencies against non-frozen symbols in the xpcom libraries, and will not work with any other
versions of xpcom other than the one it was compiled against.
... linking strategy: dependent glue standalone glue compiler flags: cross-platform #include "xpcom-config.h" #include "xpcom-config.h" #define xpcom_glue windows /fi "xpcom-config.h" linux -include "xpcom-config.h" linker flags: windows for older
versions of the firefox sdk: -libpath:c:/path/to/sdk/lib xpcomglue_s.lib xpcom.lib nspr4.lib for recent
versions of the firefox sdk (at least
version 42, but possibly earlier
versions as well): -libpath:c/path/to/sdk/lib xpcomglue_s.lib xul.lib nss3.lib mozcrt.lib -libpath:c:/path/to/sdk/lib xpcomglue.lib mac -l/path/to/sdk/lib -l/path/to/sdk/bin -wl,-executable-pat...
...And 5 more matches
IAccessibleApplication
other-licenses/ia2/accessibleapplication.idlnot scriptable this interface gives access to the application's name and
version information.
... 1.0 66 introduced gecko 1.9 inherits from: iunknown last changed in gecko 1.9 (firefox 3) this interface provides the at with the information it needs to differentiate this application from other applications, from other
versions of this application, or from other
versions of this application running on different
versions of an accessibility bridge or accessibility toolkit.
... servers implementing iaccessible2 should provide access to the iaccessibleapplication interface via queryservice from any object so that ats can easily determine specific information about the application such as its name or
version.
...And 5 more matches
XPCOM
this article will show you how to use the available interfaces in several mozilla products.aggregating the in-memory datasourcealready_addrefedalready_addrefed in association with nscomptr allows you to assign in a pointer without addrefing it.binary compatibilityif mozilla decides to upgrade to a compiler that does not have the same abi as the current
version, any built component may fail.
...since binary components are linked against a single gecko sdk, a dependency to a particular
version of gecko is created.
... if the component uses only "frozen" xpcom interfaces, there is a good chance the same binary component will work with different
versions of gecko (
version 1.8 and 1.9, for example).
...And 5 more matches
Mozilla
it synchronously returns an nsiapplicationcache object representing the most recent cache
version from the most recent cache group containing the entry under the url or a matching namespace.
...compile a recent
version of llvm & clang.
...unlike binary xpcom components, it allows developers to ship a single binary for use with multiple
versions of firefox.
...And 5 more matches
HTMLImageElement.srcset - Web APIs
all of the following are valid image candidate strings: "images/team-photo.jpg 1x, images/team-photo-retina.jpg 2x, images/team-photo-full 2048w" this string provides
versions of an image to be used at the standard pixel density (1x) as well as double that pixel density (2x).
... also available is a
version of the image for use at a width of 2048 pixels (2048w).
... "header640.png 640w, header960.png 960w, header1024.png 1024w, header.png" this string provides
versions of a header image to use when the user agent's renderer needs an image of width 640px, 960px, or 1024px.
...And 5 more matches
Slottable - Web APIs
dopera for androidsafari on iossamsung internetslottable experimentalchrome full support 53edge full support 79firefox full support 63 full support 63 no support 59 — 63disabled disabled from
version 59 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
...— 59disabled disabled until
version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true) and the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
... support 10.1webview android full support 53chrome android full support 53firefox android full support 63 full support 63 no support 59 — 63disabled disabled from
version 59 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
...And 5 more matches
Evolution of HTTP - HTTP
a server to give access to the document, an early
version of httpd.
... http/0.9 – the one-line protocol the initial
version of http had no
version number; it has been later called 0.9 to differentiate it from the later
versions.
... http/1.0 – building extensibility http/0.9 was very limited and both browsers and servers quickly extended it to be more versatile:
versioning information is now sent within each request (http/1.0 is appended to the get line) a status code line is also sent at the beginning of the response, allowing the browser itself to understand the success or failure of the request and to adapt its behavior in consequence (like in updating or using its local cache in a specific way) the notion of http headers has been introduced, both for the r...
...And 5 more matches
Equality comparisons and sameness - JavaScript
briefly: double equals (==) will perform a type con
version when comparing two things, and will handle nan, -0, and +0 specially to conform to ieee 754 (so nan != nan, and -0 == +0); triple equals (===) will do the same comparison as double equals (including the special handling for nan, -0, and +0) but without type con
version; if the types differ, false is returned.
... object.is does no type con
version and no special handling for nan, -0, and +0 (giving it the same behavior as === except on those special numeric values).
...after con
versions (one or both sides may undergo con
versions), the final equality comparison is performed exactly as === performs it.
...And 5 more matches
system - Archive of obsolete content
usage querying your environment using the system module you can access environment variables (such as path), find out which operating system your add-on is running on and get information about the host application (for example, firefox or fennec), such as its
version.
....platform); // processor architecture console.log("architecture = " + system.architecture); // compiler used to build host application console.log("compiler = " + system.compiler); // host application build identifier console.log("build = " + system.build); // host application uuid console.log("id = " + system.id); // host application name console.log("name = " + system.name); // host application
version console.log("
version = " + system.
version); // host application vendor console.log("vendor = " + system.vendor); // host application profile directory console.log("profile directory = " + system.pathfor("profd")); quit the host application to quit the host application, use the exit() function.
... var system = require("sdk/system"); console.log("name = " + system.name);
version the
version of the host application.
...And 4 more matches
package.json - Archive of obsolete content
it looks like this (assuming the add-on's directory is "my-addon"): { "name": "my-addon", "title": "my-addon", "id": "jid1-1fergv45e4f4f@jetpack", "description": "a basic add-on", "author": "", "license": "mpl-2.0", "
version": "0.1" } if you are using the new jpm tool, you can easily access manifest data from package.json by requiring it like any other module: var title = require("./package.json").title; key reference package.json may contain the following keys: author the name of the package's original author; this could be the name of a person or a company.
... engines object with supported applications (key) and required
version numbers (value).
... the
version number can both specify a minimum and maximum
version separated by a space.
...And 4 more matches
Chapter 3: Introduction to XUL—How to build a more intuitive UI - Archive of obsolete content
<?xml
version="1.0" encoding="utf-8"?> <?xml-stylesheet href="chrome://global/skin/"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <!-- contents go here.
... <?xml
version="1.0" encoding="utf-8"?> <?xml-stylesheet href="chrome://global/skin/"?> <dialog xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" title="my dialog" buttons="accept,cancel" ondialogaccept="savevalues(); window.close();" ondialogcancel="window.close();"> <checkbox label="my option"/> </dialog> listing 8: a dialog figure 5: output from listing 8 note: the fun...
... the browser element is essentially a more powerful
version of an inline frame, equipped with all the basic functions of a web browser.
...And 4 more matches
Introduction to XUL - Archive of obsolete content
ui designers and build engineers will need to maintain separate, platform-specific
versions of at least some xul documents.
... xul file preamble xul is xml, and a good xul file begins with the standard xml
version and doctype statements.
...so a xul file will begin <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/xul.css" type="text/css"?> <!doctype window> <window xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> the html namespace is of course the standard one.
...And 4 more matches
Install Scripts - Archive of obsolete content
for example, you may wish to check
versions of files and only install updated files, or perhaps you wish to apply patches to existing files.
...the install script should take the following steps: initialize the installation by specifying what package and
version is being installed.
...the registry also stores the set of files and
version information about the installed components.
...And 4 more matches
Shipping a plugin as a Toolkit bundle - Archive of obsolete content
for a plugin the manifest only needs to be very simple: <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>mypluginid@myplugin.com</em:id> <em:name>my plugin</em:name> <em:
version>1.0</em:
version> <em:targetapplication> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:min
version>1.5</em:min
version> <em:max
version>4.0.*</em:max
version> </description> </em:targetapplication> <em:unpack>true</em:unpack> </description> </rdf> this contains 5 required pieces of information.
... the
version is fairly self-descriptive, it must be a toolkit
version format.
... the target application block says which
versions of an application the plugin is compatible with.
...And 4 more matches
Plug-in Development Overview - Gecko Plugin API Reference
also, the windows
version information for the plug-in dll will be used to determines the mime types, file extensions, file open template, plug-in name, and description.
... for this the
version stamp of the embedded resource of the plug-in dll should contain the following set of string/value pairs: mimetype: for mime types fileextents: for file extensions fileopenname: for file open template productname: for plug-in name filedescription: for description language: for language in use in the mime types and file extensions strings, multiple values are separated by the "|" character, for example: video/quicktime|audio/aiff|image/jpeg the
version stamp will be loaded only if it has been created with the language set to "us english" and the character set to "windows multilingual" in your development environment.
... getting
version and ui information the netscape group of plug-in api methods provides some basic services to the plug-in.
...And 4 more matches
Responsive design - Learn web development
as the mobile web started to become a reality with the first feature phones, companies who wished to embrace mobile would generally create a special mobile
version of their site, with a different url (often something like m.example.com, or example.mobi).
... this meant that two separate
versions of the site had to be developed and kept up-to-date.
...as mobile devices became more powerful and able to display full websites, this was frustrating to mobile users who found themselves trapped in the site's mobile
version and unable to access information they knew was on the full-featured desktop
version of the site.
...And 4 more matches
Web fonts - Learn web development
web fonts but there is an alternative, which works very well, right back to ie
version 6.
...for example, most modern browsers support woff/woff2 (web open font format
versions 1 and 2), the most efficient format around, but older
versions of ie only support eot (embedded open type) fonts, and you might need to include an svg
version of the font to support older
versions of iphone and android browsers.
... note: web fonts as a technology have been supported in internet explorer since
version 4!
...And 4 more matches
Interface Compatibility
the stable
version 1.0 of the jetpack sdk is planned for later in 2010.
... documented apis which are shipped as part of the jetpack sdk are designed to work in future
versions of firefox.
... achieving this compatibility may require rebuilding the extension with a new
version of the jetpack sdk.
...And 4 more matches
NSS 3.35 release notes
starting with
version 3.35, nss uses the sql file format by default.
...without a prefix, the default database type will be used (dbm in
versions prior to 3.35, and sql in
version 3.35 and later.) when using the sql type (either explicitly, or because of the new default), with a database directory which already contains a dbm type database, nss will automatically perform a one time migration of the information contained in the dbm files to the newer sql files.
... nss 3.30 had introduced a regression, preventing nss from reading some aes encrypted data, produced by older
versions of nss.
...And 4 more matches
PKCS11 FAQ
what
version of pkcs #11 does nss support?
... nss requires at least pkcs #11
version 2.0, but can support some features of later
versions of nss, including nss 2.20.
... nss does not use all the features of later
versions of pkcs #11.
...And 4 more matches
PKCS11 Implement
this note will be removed once the document is updated for the current
version of nss.
... this document supplements the information in pkcs #11: cryptographic token interface standard,
version 2.0 with guidelines for implementors of cryptographic modules who want their products to work with mozilla client software: how nss calls pkcs #11 functions.
... future
versions of netscape server products will also support of pkcs #11
version 2.0.
...And 4 more matches
sslerr.html
ssl_error_unsupported_
version -12279 "peer using unsupported
version of security protocol." on a client socket, this means the remote server has attempted to negotiate the use of a
version of ssl that is not supported by the nss library, probably an invalid
version number.
... on a server socket, this means the remote client has requested the use of a
version of ssl older than
version 2.
... ssl_error_post_warning -12275 (unused) ssl_error_ssl2_disabled -12274 "peer only supports ssl
version 2, which is locally disabled." the remote server has asked to use ssl
version 2, and ssl
version 2 is disabled in the local client's configuration.
...And 4 more matches
NSS tools : modutil
ded slot: nss internal cryptographic services token: nss generic crypto services slot: nss user private key and certificate services token: nss certificate db ----------------------------------------------------------- passing a specific module name with the -list returns details information about the module itself, like supported cipher mechanisms,
version numbers, serial numbers, and other information about the module and the token it is loaded on.
... for example: modutil -list "nss internal pkcs #11 module" -dbdir sql:/home/my/sharednssdb ----------------------------------------------------------- name: nss internal pkcs #11 module library file: **internal only module** manufacturer: mozilla foundation description: nss internal crypto services pkcs #11
version 2.20 library
version: 3.11 cipher enable flags: none default mechanism flags: rsa:rc2:rc4:des:dh:sha1:md5:md2:ssl:tls:aes slot: nss internal cryptographic services slot mechanism flags: rsa:rc2:rc4:des:dh:sha1:md5:md2:ssl:tls:aes manufacturer: mozilla foundation type: software
version number: 3.11 firmware
version: 0.0 status: enabled token name: nss generic crypto services token manufacturer: mozilla foundation token model: nss 3 token se...
...rial number: 0000000000000000 token
version: 4.0 token firmware
version: 0.0 access: write protected login type: public (no login required) user pin: not initialized slot: nss user private key and certificate services slot mechanism flags: none manufacturer: mozilla foundation type: software
version number: 3.11 firmware
version: 0.0 status: enabled token name: nss certificate db token manufacturer: mozilla foundation token model: nss 3 token serial number: 0000000000000000 token
version: 8.3 token firmware
version: 0.0 access: not write protected login type: login required user pin: initialized a related command, -rawlist returns information about the database configuration for the modules.
...And 4 more matches
Rhino shell
-
version versionnumber specifies the language
version to compile with.
... the string
versionnumber must be one of 100, 110, 120, 130, 140, 150, 160 or 170.
... see javascript language
versions for more information on language
versions.
...And 4 more matches
SpiderMonkey 17
on all other platforms the jit is simply disabled; javascript code runs in an interpreter, as in previous
versions.
...migrating to spidermonkey 17 the following features in earlier
versions of spidermonkey have been dropped.
... currently only
versions of visual studio prior to 2010 (also known as
version 10) are known to be deficient in this manner, so the custom implementation (which is compatible with the one shipped in visual studio 2010 and later) is only invoked for those compilers.
...And 4 more matches
Finishing the Component
if you use "stuff" that isn't frozen, that stuff is subject to change in future
versions of gecko.
...you build your component using this interface, and it works great with the
version of gecko that you have tested against.
...when your component runs in a
version of gecko in which this interface is updated, your method calls will be routed through a different v-table than the one the component expected, most likely resulting in a crash.
...And 4 more matches
Setting up the Gecko SDK
the sdk is available for windows, linux, and mac operating systems, and
versions for other operating systems are being developed, and can be retrieved from as a single archive from the following platform-specific locations (need correction for last
version (now 1.9.2.8).
... there is now separate archive with gecko-sdk, just xul-runner-sdk.): linux: http://ftp.mozilla.org/pub/mozi....8.0.4.tar.bz2 windows: http://ftp.mozilla.org/pub/mozi...vc-1.8.0.4.zip mac: http://ftp.mozilla.org/pub/mozi...ac-1.8.0.4.zip note that the
version number for the archives above is 1.8.
... the weblock component was built with
version 1.4a, which is no longer available.
...And 4 more matches
nsIHttpChannelInternal
66 introduced gecko 1.0 inherits from: nsisupports last changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) method overview void getrequest
version(out unsigned long major, out unsigned long minor); void getresponse
version(out unsigned long major, out unsigned long minor); void httpupgrade(in acstring aprotocolname, in nsihttpupgradelistener alistener); void setcookie(in string acookieheader); void setupfallbackchannel(in string afallbackkey); attributes attribute type description canceled boolean returns true if and only if the ...
... methods getrequest
version() gets the request's major and minor
version numbers.
... void getrequest
version( out unsigned long major, out unsigned long minor ); parameters major on return, contains the request's major
version number.
...And 4 more matches
Plug-in Development Overview - Plugins
also, the windows
version information for the plug-in dll will be used to determines the mime types, file extensions, file open template, plug-in name, and description.
... for this the
version stamp of the embedded resource of the plug-in dll should contain the following set of string/value pairs: mimetype: for mime types fileextents: for file extensions fileopenname: for file open template productname: for plug-in name filedescription: for description language: for language in use in the mime types and file extensions strings, multiple values are separated by the "|" character, for example: video/quicktime|audio/aiff|image/jpeg the
version stamp will be loaded only if it has been created with the language set to "us english" and the character set to "windows multilingual" in your development environment.
... getting
version and ui information the netscape group of plug-in api methods provides some basic services to the plug-in.
...And 4 more matches
Guide to the Fullscreen API - Web APIs
in chrome and newer
versions of opera however, no such warning is generated.
... for the moment not all browsers are implementing the unprefixed
version of the api (for vendor agnostic access to the fullscreen api you can use fscreen).
...or onmozfullscreenerror onmsfullscreenerror document.exitfullscreen() webkitexitfullscreen() mozcancelfullscreen() msexitfullscreen() element.requestfullscreen() webkitrequestfullscreen() mozrequestfullscreen() msrequestfullscreen() specifications specification status comment fullscreen api living standard initial
version.
...And 4 more matches
Key Values - Web APIs
[1] in internet explorer (tested on release 9 and 11), as well as in all
versions of firefox, the windows key is reported as "os" instead of as "meta".
...firefox did so until
version 37, as did internet explorer 9, 10, and 11.
...accepts the currently selected option or input method sequence con
version.
...And 4 more matches
Migrating from webkitAudioContext - Web APIs
new engines implementing the web audio spec (such as gecko) will only implement the official, final
version of the specification, which means that code using webkitaudiocontext or old naming conventions in the web audio specification may not immediately work out of the box in a compliant web audio implementation.
...w : // old method names var gain = context.creategainnode(); var delay = context.createdelaynode(); var js = context.createjavascriptnode(1024); you can simply rename the methods to look like this: // new method names var gain = context.creategain(); var delay = context.createdelay(); var js = context.createscriptprocessor(1024); the semantics of these methods remain the same in the renamed
versions.
... (audiobuffersourcenode has yet another way of starting output: the notegrainon() method.) the noteon()/notegrainon()/noteoff() methods were the original way to start/stop output in these nodes, and in the newer
versions of the specification, the noteon() and notegrainon() methods were consolidated into a single start() method, and the noteoff() method was renamed to the stop() method.
...And 4 more matches
Browser compatibility and Scroll Snap - CSS: Cascading Style Sheets
firefox initially implemented an early
version of the scroll snap specification, called scroll snap points.
... in firefox 68 the new
version of the specification will be shipped and these old properties removed.
... in this article, we consider questions that might arise related to compatibility across browsers and
versions of browsers when adding support for scroll-snap to your web site or app.
...And 4 more matches
Mozilla CSS extensions - CSS: Cascading Style Sheets
once a given property is standardized and implemented without the prefix, the prefixed
version is typically dropped after a while.
... a -moz-animation [prefixed
version still accepted] -moz-animation-delay [prefixed
version still accepted] -moz-animation-direction [prefixed
version still accepted] -moz-animation-duration [prefixed
version still accepted] -moz-animation-fill-mode [prefixed
version still accepted] -moz-animation-iteration-count [prefixed
version still accepted] -moz-animation-name [prefixed
version still accepted] -moz-animation-play-state [prefixed
version still accepted] -moz-animation-timing-function [prefixed
version still accepted] -moz-appearance b -moz-backface-visibility [prefixed
version still accepted] -moz-background-clipobsolete since gecko 2 -moz-background-originobsolete since gecko 2 -moz-background-inline-policyobsolete since gecko 32 [supersede...
...d by the standard
version box-decoration-break] -moz-background-sizeobsolete since gecko 2 -moz-border-end [superseded by the standard
version border-inline-end] -moz-border-end-color [superseded by the standard
version border-inline-end-color] -moz-border-end-style [superseded by the standard
version border-inline-end-style] -moz-border-end-width [superseded by the standard
version border-inline-end-width] -moz-border-image -moz-border-start [superseded by the standard
version border-inline-start] -moz-border-start-color [superseded by the standard
version border-inline-start-color] -moz-border-start-style [superseded by the standard
version border-inline-start-style] -moz-border-start-width [superseded by the standard
version border-inline-start-width] -moz-box-sizi...
...And 4 more matches
<color> - CSS: Cascading Style Sheets
the three-digit notation (#rgb) is a shorter
version of the six-digit form (#rrggbb).
...likewise, the four-digit rgb notation (#rgba) is a shorter
version of the eight-digit form (#rrggbbaa).
...of input fields fieldtext text in input fields graytext text that is disabled highlight background of items that are selected in a control highlighttext text of items that are selected in a control linktext text of non-active, non-visited links visitedtext text of visited links deprecated system color keywords the following keywords were defined in earlier
versions of the css color module.
...And 4 more matches
HTTP caching - HTTP
infrequently updated files are named in a specific way: in their url, usually in the filename, a revision (or
version) number is added.
...in order to have the new
versions, all the links to them must be changed, that is the drawback of this method: additional complexity that is usually taken care of by the tool chain used by web developers.
...when these are read, the new
versions of the others are also read.
...And 4 more matches
Protocol upgrade mechanism - HTTP
sec-websocket-
version request header specifies the websocket protocol
version the client wishes to use, so the server can confirm whether or not that
version is supported on its end.
... sec-websocket-
version:
version version the websocket protocol
version the client wishes to use when communicating with the server.
... this number should be the most recent
version possible listed in the iana websocket
version number registry.
...And 4 more matches
Caching compiled WebAssembly modules - WebAssembly
in our wasm-utils.js library script, you'll find instantiatecachedurl() — this function fetches the wasm module at url with a
version of db
version, instantiates it with the given importobject, and returns a promise resolving to the finished wasm instance.
... note: the entire site's wasm cache (not just the given url) is
versioned by the specified db
version passed into the function.
... if the wasm module code is updated, or its url changes, you will need to update db
version.
...And 4 more matches
JavaScript Daemons Management - Archive of obsolete content
the following daemons management framework is the major
version of setinterval – a little framework.
... note: a minimalistic
version of it (minidaemon) is published here.
... this more complex
version of it is nothing but a big and scalable collection of methods for the daemon constructor.
...And 3 more matches
Setting Up a Development Environment - Archive of obsolete content
after setting up make, you should be able to open a command line window, run "make -ver", and get the installed
version of make as output.
... build system let's start by downloading the project used to build the second
version of hello world, from the exercise in the last section.
...if you need to compile idls, go to the sdk page and download a compiled
version for your system.
...And 3 more matches
Inner-browsing extending the browser navigation paradigm - Archive of obsolete content
note this article is the
version from 2003 with slight modifications (no images and no links to samples).
...the above example is a simplified
version of the inner-browsing model, but it gives you some idea of the possibilities.
...both netscape 7 and recent
versions of internet explorer provide xmlhttprequest interfaces that allow javascript to dynamically load an xml document given a data source url.
...And 3 more matches
Install.js - Archive of obsolete content
this
version has been developed as part of the effort to port firefox extensions to seamonkey from the xsidebar project.
... pros: this
version consolidates all the changable information at the top of the file.
... install.js install.rdf (optional -- see above) code // install.js // xpiinstaller // by pike (heavily inspired by code from henrik gemal and stephen clavering) var xpiinstaller = { // --- editable items begin --- extfullname: 'sample extension', // the name displayed to the user (don't include the
version) extshortname: 'sampleext', // the leafname of the jar file (without the .jar part) ext
version: '1.0', extauthor: 'insert-your-name-here', extlocalenames: null, // e.g.
...And 3 more matches
Elements - Archive of obsolete content
helloworld.html: <!doctype html public "-//w3c//dtd html 4.01//en"> <html> <head> <title>hello world!</title> <style type="text/css"> p { -moz-binding: url(hello.xml#default); } #p03 { -moz-binding: url(hello.xml#hello2); } </style> </head> <body> <p>default content</p> <p>default content</p> <p id="p03">default content</p> </body> </html> hello.xml: <?xml
version="1.0"?> <bindings xmlns="http://www.mozilla.org/xbl" xmlns:html="http://www.w3.org/1999/xhtml"> <binding id="default"> <content><html:b>hello world!
...this has been fixed for future
versions of mozilla products.
...an explicit encoding declarations may be present to override the default, for example <?xml
version="1.0" encoding="iso-8859-1"?> uri in namespace declarations is an opaque string used to uniquely identify the namespace.
...And 3 more matches
Creating XPI Installer Modules - Archive of obsolete content
these archives are redundant with the subdirectories: mozilla now installs both the compressed and uncompressed
versions of the ui, though you can change this when you build mozilla yourself.
...the barley package ui is a single xul window with an accompanying image: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://communicator/skin/" type="text/css"?> <window title="barley window" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gat...re.is.only.xul" width="175" height="375" x="20" y="20" persist="width height x y" orient="vertical" autostretch="always"> <script src="barley.js"/> <image src="barley.gif" /> <box or...
...in the following listing, the items in red are particular to the barley package and can be edited for your own distribution: <?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:chrome="http://www.mozilla.org/rdf/chrome#"> <!-- list all the packages being supplied --> <rdf:seq about="urn:mozilla:package:root"> <rdf:li resource="urn:mozilla:package:barley"/> </rdf:seq> <!-- package information --> <rdf:description about="urn:mozilla:package:barley" chrome:displayname="barley grain...
...And 3 more matches
addFile - Archive of obsolete content
queues the subcomponent for addition to the client
version registry and installation to its final destination.
... method of install object syntax public int addfile ( string registryname, install
version version, string xpisourcepath, object localdirspec, string relativelocalpath, boolean forceupdate); public int addfile ( string registryname, string
version, string xpisourcepath, object localdirspec, string relativelocalpath, boolean forceupdate); public int addfile ( string xpisourcepath); public int addfile ( string registryname, string xpisourcepath, object localdirspec, string relativelocalpath); public int addfile ( string registryname, string
version, string xpisourcepath, object localdirspec, string relativelocalpath); parameters the addfile method has the following parameters: registryname the pathname in the clien...
...t
version registry about the file.
...And 3 more matches
initInstall - Archive of obsolete content
initinstall initializes the installation of the specified software and
version.
... method of install object syntax int initinstall ( string displayname, string package, install
version version, int flags); int initinstall ( string displayname, string package, string
version, int flags); int initinstall ( string displayname, string package, string
version); int initinstall ( string displayname, string package, install
version version); parameters the initinstall method has the following parameters: displayname a string that contains the name of the software being installed.
... package the client
version registry pathname for the software (for example: plugins/adobe/acrobat or /royalairways/royalpi/).
...And 3 more matches
Learn XPI Installer Scripting by Example - Archive of obsolete content
the initinstall() method on the install object creates a new installation for the specified software and
version.
... the initinstall method takes the following parameters: the display name of the package, the name of the package as it appears in the client registry, and the
version, which can be expressed as a number or as an install
version object.
... in the example above, "netscape seamonkey" is the display name, "browser" is the registry name, and the
version is "6.0.0.2000110807." see initinstall in the xpinstall api reference for more information on the initialization process.
...And 3 more matches
Tree Box Objects - Archive of obsolete content
in earlier
versions, columns are identified with a string, the id of the column.
... in later
versions, a separate column object exists, which can be queried for column data.
... the following line is used so that the example above will work in all
versions.
...And 3 more matches
Using Remote XUL - Archive of obsolete content
<?xml
version="1.0"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" /> a xul document requires only two entities to be valid, an xml processing instruction on the first line that identifies the file as xml, and a window element that defines a xul application window (or in this case web page).
... <?xml
version="1.0"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <iframe src="https://www.mozilla.org/" flex="1" /> </window> the xul iframe element is just like its html counterpart: it defines an area within which web content can be displayed.
... <?xml
version="1.0"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <menubar> <menu label="the mozilla organization" /> <menu label="developer docs" /> <menu label="testing" /> <menu label="tools" /> <button label="faq" /> <button label="search" /> </menubar> <iframe src="https://www.mozilla.org/" flex="1" /> </window> the menubar element is a c...
...And 3 more matches
Application Update - Archive of obsolete content
compiled
versions of mar are available in the gecko sdk under the folder /host/bin for your os.
...use what you need, %product%,%
version%,%build_id%,%channel% for example pref("app.update.url", "https://yourserver.net/update/3/%product%/%
version%/%build_id%/%build_target%/%locale%/%channel%/%os_
version%/%distribution%/%distribution_
version%/update.xml"); // url user can browse to manually if for some reason all update installation // attempts fail.
...//pref("app.update.url.override", ""); // interval: time between checks for a new
version (in seconds) // default=1 day pref("app.update.interval", 86400); // interval: time before prompting the user to download a new
version that // is available (in seconds) default=1 day pref("app.update.nagtimer.download", 86400); // interval: time before prompting the user to restart to install the latest // download (in seconds) default=30 minutes pref("app.update.
...And 3 more matches
XULRunner Hall of Fame - Archive of obsolete content
version updates match the rapid release cycle.
...source chatzilla a standalone
version of the chatzilla irc client.
...source tomtom home 2 pc application to manage tomtom gps devices understanding faith (desktop
version) a multimedia religious education resource for catholic secondary schools in australia.
...And 3 more matches
Archived Mozilla and build documentation - Archive of obsolete content
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").
... whether or not the latest
version of the code is compiling successfully and passing tests).
... creating a skin for firefox/getting started download the latest
version of firefox and install it.
...And 3 more matches
Archive of obsolete content
index of archived content inner-browsing extending the browser navigation paradigm this article is the
version from 2003 with slight modifications (no images and no links to samples).
...there are no real standards for this con
version, but some conventions begin to appear on the web.
...rss has a sordid history and a multitude of different incompatible rss
versions.
...And 3 more matches
Making asynchronous programming easier with async and await - Learn web development
inside the myfetch() function definition you can see that the code closely resembles the previous promise
version, but there are some differences.
...this example expands on the first
version of the code we showed above: async function myfetch() { try { let response = await fetch('coffee.jpg'); if (!response.ok) { throw new error(`http error!
... if you wanted to use the second (refactored)
version of the code that we showed above, you would be better off just continuing the hybrid approach and chaining a .catch() block onto the end of the .then() call, like this: async function myfetch() { let response = await fetch('coffee.jpg'); if (!response.ok) { throw new error(`http error!
...And 3 more matches
The "why" of web performance - Learn web development
(see how much your site costs to download.) improve con
version rates reducing the dowload and render time of a site improves con
version rates and user retention.
... a con
version rate is the rate at which site visitors perform a measured or desired action.
...the action being measured as the con
version rate depends on the website's business goals.
...And 3 more matches
Introducing a complete toolchain - Learn web development
it looks like this: you can see a live
version of the site at near-misses.netlify.com.
...jsx or typescript) in our development process, and then transforms our code so that the production
version still runs on a wide variety of browsers, modern and older.
... revision control can also allow you to branch out your project code, creating a separate
version and try out new functionality on, without those changes affecting your original code.
...And 3 more matches
How to get a stacktrace with WinDbg
(you'll want the 32-bit
version, even if you are using a 64-bit
version of windows) then install it, the standard settings in the installation process are fine.
... a firefox nightly or release you need a firefox
version for which symbols are availables from the mozilla symbol server to use with windbg.
... you can use any official nightly build or released
version of firefox from mozilla.
...And 3 more matches
UpdateListener
for each individual update check, the following methods will be called on the listener: either oncompatibilityupdateavailable() or onnocompatibilityupdateavailable(), depending on whether compatibility information for the requested application
version was seen.
... either onupdateavailable() or onnoupdateavailable(), depending on whether a newer
version of the addon was found.
...don) void onnocompatibilityupdateavailable(in addon addon) void onupdateavailable(in addon addon, in addoninstall install) void onnoupdateavailable(in addon addon) void onupdatefinished(in addon addon, in integer error) methods oncompatibilityupdateavailable() called when the update check found compatibility information for the application and platform
version that the update check was being performed for.
...And 3 more matches
Application Translation with Mercurial
for a windows user, it looks like c:\users\myname , depending on your windows
version: cd /c/users/myname now list all the files here: ls -a if there is no file called .hgrc , create it with > .hgrc this file stores your general mercurial settings (mercurial is the tool which manages the source code and its history of changes).
...the text striked through are texts which have been removed in the english
version and can also be removed from the locale being worked on.
..."firefox <
version number> translation".
...And 3 more matches
Optimizing Applications For NSPR
the mechanism used to implement <tt>pr_interrupt()</tt> on the pthreads
versions of nspr is flawed.
...these different declarations are to accommodate restrictions in watcom's c/c++
version 11.0 and 11.0a compiler.
... win-95 the win-95
version of nspr should really be labeled win-32.
...And 3 more matches
NSS 3.31 release notes
notable changes in nss 3.31 the apis that set a tls
version range have been changed to trim the requested range to the overlap with a systemwide crypto policy, if configured.
... ssl_
versionrangegetsupported can be used to query the overlap between the library's supported range of tls
versions and the systemwide policy.
... previously, ssl_
versionrangeset and ssl_
versionrangesetdefault returned a failure if the requested
version range wasn't fully allowed by the systemwide crypto policy.
...And 3 more matches
NSS 3.39 release notes
notable changes in nss 3.39 the tls 1.3 implementation uses the final
version number from rfc 8446.
... previous
versions of nss accepted an rsa pkcs#1 v1.5 signature where the digestinfo structure was missing the null parameter.
... starting with
version 3.39, nss requires the encoding to contain the null parameter.
...And 3 more matches
NSS tools : modutil
ule slots: 2 slots attached status: loaded slot: nss internal cryptographic services token: nss generic crypto services slot: nss user private key and certificate services token: nss certificate db ----------------------------------------------------------- passing a specific module name with the -list returns details information about the module itself, like supported cipher mechanisms,
version numbers, serial numbers, and other information about the module and the token it is loaded on.
... for example: modutil -list "nss internal pkcs #11 module" -dbdir sql:/home/my/sharednssdb ----------------------------------------------------------- name: nss internal pkcs #11 module library file: **internal only module** manufacturer: mozilla foundation description: nss internal crypto services pkcs #11
version 2.20 library
version: 3.11 cipher enable flags: none default mechanism flags: rsa:rc2:rc4:des:dh:sha1:md5:md2:ssl:tls:aes slot: nss internal cryptographic services slot mechanism flags: rsa:rc2:rc4:des:dh:sha1:md5:md2:ssl:tls:aes manufacturer: mozilla foundation type: software
version number: 3.11 firmware
version: 0.0 status: enabled token name: nss generic crypto services token manufacturer: mozilla foundation token model: nss 3 token serial number: 0000000000000...
...000 token
version: 4.0 token firmware
version: 0.0 access: write protected login type: public (no login required) user pin: not initialized slot: nss user private key and certificate services slot mechanism flags: none manufacturer: mozilla foundation type: software
version number: 3.11 firmware
version: 0.0 status: enabled token name: nss certificate db token manufacturer: mozilla foundation token model: nss 3 token serial number: 0000000000000000 token
version: 8.3 token firmware
version: 0.0 access: not write protected login type: login required user pin: initialized a related command, -rawlist returns information about the database configuration for the modules.
...And 3 more matches
Network Security Services
nss 3.2 test suite archived
version.
... nss performance reports archived
version.
... encryption technologies available in nss 3.11 archived
version.
...And 3 more matches
Introduction to the JavaScript shell
note: starting with spidermonkey 44 (firefox 44 / thunderbird 44 / seamonkey 2.41), the standard, web-compatible javascript
version is used by default (and not js1.7+ anymore).
... the
version() shell builtin is still there for testing legacy features.
...for more information, see the c/c++
version of this function, js_dumpheap.
...And 3 more matches
JS::CompileOptions
constructor js::readonlycompileoptions(); // added in spidermonkey 31 js::owningcompileoptions(jscontext *cx); // added in spidermonkey 31 js::compileoptions(jscontext *cx, js
version version = js
version_unknown); name type description cx jscontext * pointer to a js context from which to derive runtime information.
...
version js
version javascript
version used to compile the script.
... owningcompileoptions &setelement(jsobject *e) owningcompileoptions &setelementattributename(jsstring *p) owningcompileoptions &setintroductionscript(jsscript *s) owningcompileoptions &setmutederrors(bool mute) owningcompileoptions &set
version(js
version v) owningcompileoptions &setutf8(bool u) owningcompileoptions &setcolumn(unsigned c) owningcompileoptions &setcompileandgo(bool cng) owningcompileoptions &setforeval(bool eval) owningcompileoptions &setnoscriptrval(bool nsr) owningcompileoptions &setselfhostingmode(bool shm) owningcompileoptions &setcanlazilyparse(bool clp) ...
...And 3 more matches
Using XPCOM Utilities to Make Things Easier
if you are building with
versions earlier than mozilla 1.3, this macro is still required.
...le code from weblock1.cpp using the macros described in this chapter: weblock2.cpp #include "nsigenericfactory.h" #include "nsisupportsutils.h" #define sample_cid \ { 0x777f7150, 0x4a2b, 0x4301, \ { 0xad, 0x10, 0x5e, 0xab, 0x25, 0xb3, 0x22, 0xaa}} class sample: public nsisupports { public: sample(); virtual ~sample(); ns_decl_isupports }; sample::sample() { // note: in newer
versions of gecko (1.3 or later) // you don't have to do this: ns_init_isupports(); } sample::~sample() { } ns_impl_isupports1(sample, nsisupports); ns_generic_factory_constructor(sample); static const nsmodulecomponentinfo components[] = { { "pretty class name", sample_cid, "@company.com/sample", sampleconstructor } }; ns_impl_nsgetmodule(nssamplemodule, components) string cla...
...additionally, in some
versions of mozilla the string classes support sequences of characters broken up into multiple fragments (fragments which may or may not be null terminated)[nulls-in-strings].
...And 3 more matches
NS_ConvertASCIItoUTF16
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assign ...
...et in string, or knotfound parameters prunichar* astring print32 aoffset print32 rfindcharinset(const nsstring&, print32) const - source parameters nsstring& astring print32 aoffset equalsignorecase prbool equalsignorecase(const char*, print32) const - source parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsacstring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsacstring_internal& astring void assignwithcon
version(const char*, print32) - source parameters char* adata print32 alength appendwithcon
version void appendwithcon
version(const nsacstring_internal&) - source parameters nsacstring_internal& astring void ap...
...And 3 more matches
NS_ConvertUTF16toUTF8
a helper class that converts a utf-16 string to utf-8 method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lo...
... @param astring is the string to check @param aignorecase tells us how to treat case @param acount tells us how many chars to compare @return boolean parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsastring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsastring_internal& astring void assignwithcon
version(const prunichar*, print32) - source parameters prunichar* adata print32 alength appendwithcon
version void appendwithcon
version(const nsastring_internal&) - source parameters nsastring_internal& astring v...
...And 3 more matches
NS_ConvertUTF8toUTF16
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assign ...
...et in string, or knotfound parameters prunichar* astring print32 aoffset print32 rfindcharinset(const nsstring&, print32) const - source parameters nsstring& astring print32 aoffset equalsignorecase prbool equalsignorecase(const char*, print32) const - source parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsacstring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsacstring_internal& astring void assignwithcon
version(const char*, print32) - source parameters char* adata print32 alength appendwithcon
version void appendwithcon
version(const nsacstring_internal&) - source parameters nsacstring_internal& astring void ap...
...And 3 more matches
NS_LossyConvertUTF16toASCII
t converts a utf-16 string to ascii in a lossy manner method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lo...
... @param astring is the string to check @param aignorecase tells us how to treat case @param acount tells us how many chars to compare @return boolean parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsastring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsastring_internal& astring void assignwithcon
version(const prunichar*, print32) - source parameters prunichar* adata print32 alength appendwithcon
version void appendwithcon
version(const nsastring_internal&) - source parameters nsastring_internal& astring v...
...And 3 more matches
nsAdoptingCString
method overview constructors operator= operator const char* operator[] get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsli...
... @param astring is the string to check @param aignorecase tells us how to treat case @param acount tells us how many chars to compare @return boolean parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsastring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsastring_internal& astring void assignwithcon
version(const prunichar*, print32) - source parameters prunichar* adata print32 alength appendwithcon
version void appendwithcon
version(const nsastring_internal&) - source parameters nsastring_internal& astring v...
...And 3 more matches
nsAdoptingString
method overview constructors operator= operator const prunichar* operator[] get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsli...
...et in string, or knotfound parameters prunichar* astring print32 aoffset print32 rfindcharinset(const nsstring&, print32) const - source parameters nsstring& astring print32 aoffset equalsignorecase prbool equalsignorecase(const char*, print32) const - source parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsacstring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsacstring_internal& astring void assignwithcon
version(const char*, print32) - source parameters char* adata print32 alength appendwithcon
version void appendwithcon
version(const nsacstring_internal&) - source parameters nsacstring_internal& astring void ap...
...And 3 more matches
nsAutoString
utostring for wide characters nscautostring for narrow characters method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lo...
...et in string, or knotfound parameters prunichar* astring print32 aoffset print32 rfindcharinset(const nsstring&, print32) const - source parameters nsstring& astring print32 aoffset equalsignorecase prbool equalsignorecase(const char*, print32) const - source parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsacstring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsacstring_internal& astring void assignwithcon
version(const char*, print32) - source parameters char* adata print32 alength appendwithcon
version void appendwithcon
version(const nsacstring_internal&) - source parameters nsacstring_internal& astring void ap...
...And 3 more matches
nsCAutoString
get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalslitera...
... @param astring is the string to check @param aignorecase tells us how to treat case @param acount tells us how many chars to compare @return boolean parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsastring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsastring_internal& astring void assignwithcon
version(const prunichar*, print32) - source parameters prunichar* adata print32 alength appendwithcon
version void appendwithcon
version(const nsastring_internal&) - source parameters nsastr...
...And 3 more matches
nsCString
method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lo...
... @param astring is the string to check @param aignorecase tells us how to treat case @param acount tells us how many chars to compare @return boolean parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsastring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsastring_internal& astring void assignwithcon
version(const prunichar*, print32) - source parameters prunichar* adata print32 alength appendwithcon
version void appendwithcon
version(const nsastring_internal&) - source parameters nsastring_internal& astring v...
...And 3 more matches
nsDependentCString
method overview constructors assertvalid rebind operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lo...
... @param astring is the string to check @param aignorecase tells us how to treat case @param acount tells us how many chars to compare @return boolean parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsastring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsastring_internal& astring void assignwithcon
version(const prunichar*, print32) - source parameters prunichar* adata print32 alength appendwithcon
version void appendwithcon
version(const nsastring_internal&) - source parameters nsastring_internal& astring v...
...And 3 more matches
nsDependentString
method overview constructors assertvalid rebind operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lo...
...et in string, or knotfound parameters prunichar* astring print32 aoffset print32 rfindcharinset(const nsstring&, print32) const - source parameters nsstring& astring print32 aoffset equalsignorecase prbool equalsignorecase(const char*, print32) const - source parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsacstring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsacstring_internal& astring void assignwithcon
version(const char*, print32) - source parameters char* adata print32 alength appendwithcon
version void appendwithcon
version(const nsacstring_internal&) - source parameters nsacstring_internal& astring void ap...
...And 3 more matches
nsFixedCString
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char ...
... @param astring is the string to check @param aignorecase tells us how to treat case @param acount tells us how many chars to compare @return boolean parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsastring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsastring_internal& astring void assignwithcon
version(const prunichar*, print32) - source parameters prunichar* adata print32 alength appendwithcon
version void appendwithcon
version(const nsastring_internal&) - source parameters nsastring_internal& astring v...
...And 3 more matches
nsFixedString
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assign ...
...et in string, or knotfound parameters prunichar* astring print32 aoffset print32 rfindcharinset(const nsstring&, print32) const - source parameters nsstring& astring print32 aoffset equalsignorecase prbool equalsignorecase(const char*, print32) const - source parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsacstring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsacstring_internal& astring void assignwithcon
version(const char*, print32) - source parameters char* adata print32 alength appendwithcon
version void appendwithcon
version(const nsacstring_internal&) - source parameters nsacstring_internal& astring void ap...
...And 3 more matches
nsPromiseFlatCString
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char ...
... @param astring is the string to check @param aignorecase tells us how to treat case @param acount tells us how many chars to compare @return boolean parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsastring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsastring_internal& astring void assignwithcon
version(const prunichar*, print32) - source parameters prunichar* adata print32 alength appendwithcon
version void appendwithcon
version(const nsastring_internal&) - source parameters nsastring_internal& astring v...
...And 3 more matches
nsPromiseFlatString
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assign ...
...et in string, or knotfound parameters prunichar* astring print32 aoffset print32 rfindcharinset(const nsstring&, print32) const - source parameters nsstring& astring print32 aoffset equalsignorecase prbool equalsignorecase(const char*, print32) const - source parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsacstring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsacstring_internal& astring void assignwithcon
version(const char*, print32) - source parameters char* adata print32 alength appendwithcon
version void appendwithcon
version(const nsacstring_internal&) - source parameters nsacstring_internal& astring void ap...
...And 3 more matches
nsString
method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lo...
...et in string, or knotfound parameters prunichar* astring print32 aoffset print32 rfindcharinset(const nsstring&, print32) const - source parameters nsstring& astring print32 aoffset equalsignorecase prbool equalsignorecase(const char*, print32) const - source parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsacstring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsacstring_internal& astring void assignwithcon
version(const char*, print32) - source parameters char* adata print32 alength appendwithcon
version void appendwithcon
version(const nsacstring_internal&) - source parameters nsacstring_internal& astring void ap...
...And 3 more matches
nsXPIDLCString
ow characters method overview constructors operator const char* operator[] operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsli...
... @param astring is the string to check @param aignorecase tells us how to treat case @param acount tells us how many chars to compare @return boolean parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsastring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsastring_internal& astring void assignwithcon
version(const prunichar*, print32) - source parameters prunichar* adata print32 alength appendwithcon
version void appendwithcon
version(const nsastring_internal&) - source parameters nsastring_internal& astring v...
...And 3 more matches
nsXPIDLString
or narrow characters method overview constructors operator const prunichar* operator[] operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithcon
version appendwithcon
version appendint appendfloat beginreading endreading beginwriting endwriting data length isempty isvoid isterminated charat first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsli...
...et in string, or knotfound parameters prunichar* astring print32 aoffset print32 rfindcharinset(const nsstring&, print32) const - source parameters nsstring& astring print32 aoffset equalsignorecase prbool equalsignorecase(const char*, print32) const - source parameters char* astring print32 acount tofloat float tofloat(print32*) const - source perform string to float con
version.
... @param aeliminateleading controls stripping of leading ws @param aeliminatetrailing controls stripping of trailing ws parameters prbool aeliminateleading prbool aeliminatetrailing assignwithcon
version void assignwithcon
version(const nsacstring_internal&) - source assign/append/insert with _lossy_ con
version parameters nsacstring_internal& astring void assignwithcon
version(const char*, print32) - source parameters char* adata print32 alength appendwithcon
version void appendwithcon
version(const nsacstring_internal&) - source parameters nsacstring_internal& astring void ap...
...And 3 more matches
nsIXULAppInfo
it provides application name, application
version, gecko
version and more.
... platform
version acstring the
version of gecko or xulrunner platform, for example "1.8.1.19" or "1.9.3pre".
... in "firefox 3.7 alpha 1" the application
version is "3.7a1pre" while the platform
version is "1.9.3pre" read only.
...And 3 more matches
Using the clipboard
if an application wants to get the data from the clipboard and doesn't understand html, it can use the plain text
version.
... if it does understand html, it can grab that
version.
... if (source instanceof ci.nsidomwindow) // note: in gecko
versions >16, you can import the privatebrowsingutils.jsm module // and use privatebrowsingutils.privacycontextfromwindow(sourcewindow) instead source = source.queryinterface(ci.nsiinterfacerequestor) .getinterface(ci.nsiwebnavigation); res.init(source); } return res; } here, the string "text to copy" will be copied but you can replace...
...And 3 more matches
Xray vision
xray vision helps javascript running in a privileged security context safely access objects created by less privileged code, by showing the caller only the native
version of the objects.
...when a script accesses an object using xray vision it sees only the native
version of the object.
... any expandos are invisible, and if any properties of the object have been redefined, it sees the original implementation, not the redefined
version.
...And 3 more matches
Add to iPhoto
you can download an installable
version of this extension on amo.
...callback record, look like this: typedef const void * (*cfarrayretaincallback)(cfallocatorref allocator, const void *value); typedef void (*cfarrayreleasecallback)(cfallocatorref allocator, const void *value); typedef cfstringref (*cfarraycopydescriptioncallback)(const void *value); typedef boolean (*cfarrayequalcallback)(const void *value1, const void *value2); typedef struct { cfindex
version; cfarrayretaincallback retain; cfarrayreleasecallback release; cfarraycopydescriptioncallback copydescription; cfarrayequalcallback equal; } cfarraycallbacks; cf_export const cfarraycallbacks kcftypearraycallbacks; the kcftypearraycallbacks constant refers to a predefined callback structure referencing callback routines for managing arrays whose values are all cftype-based o...
...to do that, we first need to declare the cfarraycallbacks structure: this.cfarraycallbacks = new ctypes.structtype("cfarraycallbacks", [ {'
version': cfindex}, {'retain': ctypes.voidptr_t}, {'release': ctypes.voidptr_t}, {'copydescription': ctypes.voidptr_t}, {'equal': ctypes.voidptr_t} ]); having done this, we can then import the kcftypearraycallbacks structure.
...And 3 more matches
ByteLengthQueuingStrategy - Web APIs
roidfirefox for androidopera for androidsafari on iossamsung internetbytelengthqueuingstrategy experimentalchrome full support 59edge full support 16firefox full support 57disabled full support 57disabled disabled from
version 57: this feature is behind the dom.streams.enabled preference (needs to be set to true) and the javascript.options.streams preference (needs to be set to true).
... webview android full support 59chrome android full support 59firefox android full support 57disabled full support 57disabled disabled from
version 57: this feature is behind the dom.streams.enabled preference (needs to be set to true) and the javascript.options.streams preference (needs to be set to true).
... full support 7.0bytelengthqueuingstrategy() constructor experimentalchrome full support 59edge full support 16firefox full support 57disabled full support 57disabled disabled from
version 57: this feature is behind the dom.streams.enabled preference (needs to be set to true) and the javascript.options.streams preference (needs to be set to true).
...And 3 more matches
CountQueuingStrategy - Web APIs
r androidfirefox for androidopera for androidsafari on iossamsung internetcountqueuingstrategy experimentalchrome full support 59edge full support 16firefox full support 57disabled full support 57disabled disabled from
version 57: this feature is behind the dom.streams.enabled preference (needs to be set to true) and the javascript.options.streams preference (needs to be set to true).
... webview android full support 59chrome android full support 59firefox android full support 57disabled full support 57disabled disabled from
version 57: this feature is behind the dom.streams.enabled preference (needs to be set to true) and the javascript.options.streams preference (needs to be set to true).
... full support 7.0countqueuingstrategy() constructor experimentalchrome full support 59edge full support 16firefox full support 57disabled full support 57disabled disabled from
version 57: this feature is behind the dom.streams.enabled preference (needs to be set to true) and the javascript.options.streams preference (needs to be set to true).
...And 3 more matches
How whitespace is handled by HTML, CSS, and in the DOM - Web APIs
note: firefox devtools have supported highlighting text nodes since
version 52, making it easier to see exactly what nodes whitespace characters are contained within.
... */ function is_ignorable( nod ) { return ( nod.nodetype == 8) || // a comment node ( (nod.nodetype == 3) && is_all_ws(nod) ); // a text node, all ws } /** *
version of |previoussibling| that skips nodes that are entirely * whitespace or comments.
... */ function node_before( sib ) { while ((sib = sib.previoussibling)) { if (!is_ignorable(sib)) return sib; } return null; } /** *
version of |nextsibling| that skips nodes that are entirely * whitespace or comments.
...And 3 more matches
IDBObjectStore.deleteIndex() - Web APIs
the deleteindex() method of the idbobjectstore interface destroys the index with the specified name in the connected database, used during a
version upgrade.
... note that this method must be called only from a
versionchange transaction mode callback.
... return value undefined exceptions this method may raise a domexception of one of the following types: exception description invalidstateerror occurs if the method was not called from a
versionchange transaction mode callback.
...And 3 more matches
CSS Grid Layout and Progressive Enhancement - CSS: Cascading Style Sheets
in spring of 2017, we saw for the first time a major specification like grid being shipped into browsers almost simultaneously, and we now have css grid layout support in the public
versions of firefox, chrome, opera, safari and edge.
...this early implementation is also the
version of grid layout implemented in edge up to
version 15.
... the ie/edge (≤15)
version of the specification is prefixed with an -ms prefix and the properties implemented in ie/edge (≤15) are as follows: grid-template-columns as -ms-grid-columns grid-template-rows as -ms-grid-rows grid-row-start as -ms-grid-row grid-column-start as -ms-grid-column align-self as -ms-grid-row-align justify-self as -ms-grid-column-align the ie
version has additional properties not required in the new specification of -ms-grid-column-span and -ms-grid-row-span.
...And 3 more matches
filter - CSS: Cascading Style Sheets
a drop shadow is effectively a blurred, offset
version of the input image's alpha mask drawn in a particular color, composited below the image.
...the value of amount defines the proportion of the con
version.
...the value of amount defines the proportion of the con
version.
...And 3 more matches
Audio and Video Delivery - Developer guides
this makes up part of a wider technology known as webrtc (web real-time communications) and is compatible with the latest
versions of chrome, firefox and opera.
... note: currently safari does not support dash although dash.js will work on newer
versions of safari scheduled for release with osx yosemite.
... error handling starting in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1), error handling has been revised to match the latest
version of the html5 specification.
...And 3 more matches
<nextid>: The NeXT ID element (Obsolete) - HTML: Hypertext Markup Language
this element has the distinction of being the first element to become one of the "lost tags" by being eliminated from the official public dtd's of the html
versions.
... html "0.c" - from january 23, 1991 though november 23, 1992 this early
version of html introduced <nextid> in a non-sgml compliant form that simply used the numeric value alone as an "attribute." html "0.d" - from november 26, 1992 through may 24, 1993 during this span, next and the oldest surviving dtd's show <nextid> to take only a number for a value of its newly-introduced attribute n.
... html "1.k" -
version 1 (first release) in this first published draft of html, <nextid> is the same as it would take in html 2, finally allowing the use of a name instead of only a number for its attribute value.
...And 3 more matches
Using the application cache - HTML: Hypertext Markup Language
if the cache manifest has been updated, the browser downloads a new
version of the manifest and the resources listed in the manifest.
... the process for loading documents and updating the application cache is specified in greater detail below: when the browser visits a document that includes the manifest attribute, if no application cache exists, the browser loads the document and then fetches all the entries listed in the manifest file, creating the first
version of the application cache.
...you can make any change you want to the manifest file, but revising a
version number is the recommended best practice.
...And 3 more matches
HTTP Index - HTTP
18 list of default accept values accept, content negotiation, http, reference this article documents the default values for the http accept header for specific inputs and browser
versions.
... 117 etag http, reference, response, header the etag http response header is an identifier for a specific
version of a resource.
... 191 user-agent http, http header, reference, user-agent the user-agent request header contains a characteristic string that allows the network protocol peers to identify the application type, operating system, software vendor or software
version of the requesting software user agent.
...And 3 more matches
Mobile first - Progressive web apps (PWAs)
volo build: builds a minified code
version of your app, ready for production deployment, in a www-built folder.
... volo build base=www-built: runs the built
version through the server instead of the development
version.
...this can be very useful for mobile first, as you may well want to hide bits of code from the "mobile
version" and only include them for the "desktop
version", or vice versa.
...And 3 more matches
Fills and Strokes - SVG: Scalable Vector Graphics
<?xml
version="1.0" standalone="no"?> <svg width="160" height="140" xmlns="http://www.w3.org/2000/svg"
version="1.1"> <line x1="40" x2="120" y1="20" y2="20" stroke="black" stroke-width="20" stroke-linecap="butt"/> <line x1="40" x2="120" y1="60" y2="60" stroke="black" stroke-width="20" stroke-linecap="square"/> <line x1="40" x2="120" y1="100" y2="100" stroke="black" stroke-width="20" stroke-linecap="round...
... <?xml
version="1.0" standalone="no"?> <svg width="160" height="280" xmlns="http://www.w3.org/2000/svg"
version="1.1"> <polyline points="40 60 80 20 120 60" stroke="black" stroke-width="20" stroke-linecap="butt" fill="none" stroke-linejoin="miter"/> <polyline points="40 140 80 100 120 140" stroke="black" stroke-width="20" stroke-linecap="round" fill="none" stroke-linejoin="round"/> <polyline...
... <?xml
version="1.0" standalone="no"?> <svg width="200" height="150" xmlns="http://www.w3.org/2000/svg"
version="1.1"> <path d="m 10 75 q 50 10 100 75 t 190 75" stroke="black" stroke-linecap="round" stroke-dasharray="5,10,5" fill="none"/> <path d="m 10 75 l 190 75" stroke="red" stroke-linecap="round" stroke-width="1" stroke-dasharray="5,5" fill="none"/> </svg> the stroke-dasharray attribute takes a...
...And 3 more matches
Transport Layer Security - Web security
the current
version of tls is 1.3 (rfc 8446).
... tls 1.3 changes much of the protocol fundamentals, but preserves almost all of the basic capabilities as previous
versions of tls.
... implementations of draft
versions of tls 1.3 are available.
...And 3 more matches
Porting the Library Detector - Archive of obsolete content
it adds a tooltip to each icon, which contains the library name and
version.
... you can browse and run the ported
version in the sdk's examples directory.
...each test object contains a function called test(): if the function finds the library, it defines various additional properties for the test object, such as a
version property containing the library
version.
...And 2 more matches
Deploying a Plugin as an Extension - Archive of obsolete content
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.
...here's what a basic install.rdf file looks like: <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>rhapsodyplayerengine@rhapsody.com</em:id> <em:name>rhapsody player engine</em:name> <em:
version>1.0.0.487</em:
version> <em:targetapplication> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:min
version>1.5</em:min
version> <em:max
version>1.5.0.*</em:max
version> </description> </em:targetapplication> </description> </rdf> you can get more detailed information about this file at install.rdf.
...the
version is used for
version checking when we are updating extensions.
...And 2 more matches
Chapter 4: Using XPCOM—Implementing advanced processes - Archive of obsolete content
introduction javascript lacks functions for opening files and character-code con
version, among other things.
... each component is identified with a contract id in the form @domain_name/module_name/component_name;
version_number, and implements one or more interfaces that determine what functions can be called on these components.
... listing 1: calling xpcom functions using xpconnect <?xml
version="1.0" encoding="utf-8"?> <page xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript"><![cdata[ var ioservice = components.classes['@mozilla.org/network/io-service;1'] .getservice(components.interfaces.nsiioservice); alert(ioservice); ]]></script> </page> calling xpconnect using local files try saving the conten...
...And 2 more matches
Appendix D: Loading Scripts - Archive of obsolete content
flexibility: script tags provide a means to specify the character set and javascript
version of the scripts to be loaded, which many other methods do not.
...the script will be read with the utf-8 encoding, based on the encoding of the overlay, and will execute as javascript
version 1.8, based on the
version specified in the script tag.
... <?xml
version="1.0" encoding="utf-8"?> <!doctype overlay> <overlay id="script-overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript;
version=1.8" src="overlay.js"/> </overlay> evalinsandbox the components.utils.evalinsandbox method may be used to load arbitrary code into components.utils.sandbox objects.
...And 2 more matches
Introduction - Archive of obsolete content
version 1.0 of firefox was released in november 2004,
version 2.0 in october 2006, and
version 3.0 in june 2008.
...while most of it should still work for creating extensions in firefox 3 (and even firefox 2), it is strongly recommended that you aim to support modern firefox
versions, to encourage users to stay up to date with security fixes.
...you can identify the level of compatibility of web standards in gecko-based browsers looking at their user agent string, which should include the gecko
version.
...And 2 more matches
XPCOM Objects - Archive of obsolete content
a modified
version of the last code snippet produces an even longer list of available interfaces.
...in your final extension xpi you'll need to include the js implementation file, and the xpt file, which is a compiled
version of your idl file.
... download this
version of the hello world project with xpcom to see how xpcom files are structured in the project and built.
...And 2 more matches
Repackaging Firefox - Archive of obsolete content
you must have written authorization from mozilla to distribute a modified
version of firefox.
...using an extension makes it far easier to keep track of your changes easily when the time comes to upgrade to new
versions of firefox, and also ensures, when set-up correctly, that users are able to safely receive firefox updates from mozilla.
... install.rdf meta-information about your extension, such as the creator (your organization), a unique id, and which
versions of firefox are supported.
...And 2 more matches
Mozilla Application Framework in Detail - Archive of obsolete content
speed: gecko has been designed for speed and is several times faster than previous
versions of internet browsing software.
...in addition, independent software developers and corporate information technology departments now have complete access to the modular source code and freedom to freely license the source, make changes and build customized
versions to accommodate their individual needs.
...xpinstall makes it easy to write both simple installation scripts and complex installations that check
versions, log installation data to the local system, execute other installers, and update the appropriate registry settings.
...And 2 more matches
Tamarin Acceptance Test Template - Archive of obsolete content
this is the test template for tamarin acceptance tests (placed in test/acceptance/feature_name): /* -*- mode: js; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 4 -*- */ /* vi: set ts=4 sw=4 expandtab: (add to ~/.vimrc: set modeline modelines=5) */ /* ***** begin license block ***** *
version: mpl 1.1/gpl 2.0/lgpl 2.1 * * the contents of this file are subject to the mozilla public license
version * 1.1 (the "license"); you may not use this file except in compliance with * the license.
... * * contributor(s): * adobe as3 team * * alternatively, the contents of this file may be used under the terms of * either the gnu general public license
version 2 or later (the "gpl"), or * the gnu lesser general public license
version 2.1 or later (the "lgpl"), * in which case the provisions of the gpl or the lgpl are applicable instead * of those above.
... if you wish to allow use of your
version of this file only * under the terms of either the gpl or the lgpl, and not to allow others to * use your
version of this file under the terms of the mpl, indicate your * decision by deleting the provisions above and replace them with the notice * and other provisions required by the gpl or the lgpl.
...And 2 more matches
Actionscript Acceptance Tests - Archive of obsolete content
testing
versioned bug fixes when testing
versioned bug fixes (using avmplus.system.swf
version) there are a couple of requirements: you must use system.swf
version when looking up the swf
version.
...you must create a testname.as.avm_args file with the uses_swf
version directive.
...there is one special keyword that can be used, uses_swf
version.
...And 2 more matches
Using gdb on wimpy computers - Archive of obsolete content
here's what it looks like in the 4.18
version of the debugger: ^c program received signal sigint, interrupt.
...(gdb) here's what it looks like in a
version 5.x of the debugger ( yet unreleased ): ^c program received signal sigint, interrupt.
...
versions of gdb earlier than 5 use a very slow algorithm for walking the list of already loaded symbols as it adds symbols to its symbol table.
...And 2 more matches
addDirectory - Archive of obsolete content
method of install object syntax public int adddirectory ( string xpisourcepath); public int adddirectory ( string registryname, string xpisourcepath, object localdirspec, string relativelocalpath); public int adddirectory ( string registryname, string
version, string xpisourcepath, object localdirspec, string relativelocalpath); public int adddirectory ( string registryname, string
version, string xpisourcepath, object localdirspec, string relativelocalpath, boolean forceupdate); public int adddirectory ( string registryname, install
version version, string xpisourcepath, object localdirspec, string relativelocalpath, boolean forceupdate); parameters th...
...e adddirectory method has the following parameters: registryname the pathname in the client
version registry for the root directory of the files that are to be installed.this parameter can be an absolute pathname (beginning with a /) or a relative pathname, (not beginning with a slash).
...a relative pathname is appended to the registry name of the package as specified by the package parameter to the initinstall method.this parameter can also be null, in which case the xpisourcepath parameter is used as a relative pathname.note that the registry pathname is not the location of the software on the computer; it is the location of information about the software inside the client
version registry.
...And 2 more matches
Building XULRunner - Archive of obsolete content
a basic minimal mozconfig which will build a release configuration of xulrunner is: mk_add_options moz_co_project=xulrunner mk_add_options moz_objdir=@topsrcdir@/obj-xulrunner ac_add_options --enable-application=xulrunner #uncomment the following line if you don't want to build javaxpcom: #ac_add_options --disable-javaxpcom cvs tags and xulrunner
versions older xulrunner releases where tagged in cvs with (for instance xulrunner_1_8_0_5_release ) up to
version 1.8.0.5 the cvs repository does not have specific tags for xulrunner anymore.
...there is a convention where a certain xulrunner
version maps to a certain tag in the cvs.
... for instance xulrunner 1.8.1.3, the corresponding tag is cvs is : firefox_2_0_0_3_release to find out how those firefox tags and xulrunner
version maps, check out the file mozilla/config/milestone.txt .
...And 2 more matches
Getting started with XULRunner - Archive of obsolete content
the mac
version of xulrunner is distributed as an tar.bz2 archive.
... in ubuntu desktop and its variants (xubuntu, kubuntu, ...), from
version 11.10 (oneiric ocelot), xulrunner is not longer maintained and doesn't exist in ubuntu repository.
...one way to achieve this is to run the following script everytime you want to install a new
version: firefox_
version=`grep -po "\d{2}\.\d+" /usr/lib/firefox/platform.ini` arch=`uname -p` xurl=https://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/$firefox_
version/runtimes/xulrunner-$firefox_
version.en-us.linux-$arch.tar.bz2 cd /opt sudo sh -c "wget -o- $xurl | tar -xj" sudo ln -s /opt/xulrunner/xulrunner /usr/bin/xulrunner sudo ln -s /opt/xulrunner/xpcshell /usr/bin/xpcshell you could also save this script to a file for convenience.
...And 2 more matches
NPClass - Archive of obsolete content
syntax struct npclass { uint32_t struct
version; npallocatefunctionptr allocate; npdeallocatefunctionptr deallocate; npinvalidatefunctionptr invalidate; nphasmethodfunctionptr hasmethod; npinvokefunctionptr invoke; npinvokedefaultfunctionptr invokedefault; nphaspropertyfunctionptr hasproperty; npgetpropertyfunctionptr getproperty; npsetpropertyfunctionptr setproperty; npremovepropertyfunctionptr removeproperty; npenumerationfunctionptr enumerate; npconstructfunctionptr construct; }; warning: don't call these routines directly.
... fields struct
version the
version number of the structure.
... this is set to np_class_struct_
version, which is 1 in mozilla 1.8.*, 2 since mozilla 1.9a1, and 3 since firefox 3.0b1.
...And 2 more matches
XEmbed Extension for Mozilla Plugins - Archive of obsolete content
overview recent
versions of mozilla include an extension for writing plugins that use xembed instead of using the old xt-based mainloop that most plugins have been using since the netscape 3.x days.
...it's good practice to do this in case people try to install your plugin for older
versions of the browser that don't support xembed functionality.
... this is an incomplete example of what a piece of code might look like that tries to check for the proper mozilla
version.
...And 2 more matches
New in JavaScript 1.8 - Archive of obsolete content
this
version was included in firefox 3 and is part of gecko 1.9.
... using javascript 1.8 in order to use some of the new features of javascript 1.8 in html, use: <script type="application/javascript;
version=1.8"> ...
... when using the javascript shell, javascript xpcom components, or xul <script> elements, the latest js
version (js1.8 in mozilla 1.9) is used automatically (bug 381031, bug 385159).
...And 2 more matches
Fundamental text and font styling - Learn web development
courier new monospace some oses have an alternative (possibly older)
version of the courier new font called courier.
... georgia serif times new roman serif some oses have an alternative (possibly older)
version of the times new roman font called times.
...possible values are as follows (you'll rarely use this, unless you want to turn some italic styling off for some reason): normal: sets the text to the normal font (turns existing italics off.) italic: sets the text to use the italic
version of the font if available; if not available, it will simulate italics with oblique instead.
...And 2 more matches
Video and audio content - Learn web development
the embedded video will look something like this: you can try the example live here (see also the source code.) using multiple source formats to improve compatibility there's a problem with the above example, which you may have noticed already if you've tried to access the live link above with an older browser like internet explorer or even an older
version of safari.
...this is supported in all modern browsers, though older
versions may not work.
... one additional thing to keep in mind: mobile browsers may support additional formats not supported by their desktop equivalents, just like they may not support all the same formats the desktop
version does.
...And 2 more matches
Graceful asynchronous programming with Promises - Learn web development
this can also take an options object as an optional second parameter, but we are just using the simplest
version for now.
... note: you can see our
version of the example live (see the source code also).
... note: if you get stuck, you can compare your
version of the code to ours, to see what it is meant to look like — see it live, and see the source code.
...And 2 more matches
What is JavaScript? - Learn web development
,0.4); border-radius: 10px; padding: 3px 10px; display: inline-block; cursor: pointer; } and finally, we can add some javascript to implement dynamic behaviour: const para = document.queryselector('p'); para.addeventlistener('click', updatename); function updatename() { let name = prompt('enter a new name'); para.textcontent = 'player 1: ' + name; } try clicking on this last
version of the text label to see what happens (note also that you can find this demo on github — see the source code, or run it live)!
... note: you can see this
version on github as apply-javascript-internal.html (see it live too).
... note: you can see this
version on github as apply-javascript-external.html and script.js (see it live too).
...And 2 more matches
Setting up your own test automation environment - Learn web development
let driver = new webdriver.builder() .forbrowser('firefox') .build(); note that it is possible to set specific configuration options for browsers to be tested, for example you can set a specific
version and os to test in the forbrowser() method: let driver = new webdriver.builder() .forbrowser('firefox', '46', 'mac') .build(); you could also set these options using an environment variable, for example: selenium_browser=firefox:46:mac let's create a new test to allow us to explore this code as we talk about it.
...sername = '{username}'; // accesskey: accesskey can be generated from automation dashboard or profile section const key = '{accesskey}'; // gridurl: gridurl can be found at automation dashboard const grid_host = 'hub.lambdatest.com/wd/hub'; function searchtextongoogle() { // setup input capabilities const capabilities = { platform: 'windows 10', browsername: 'chrome',
version: '67.0', resolution: '1280x800', network: true, visual: true, console: true, video: true, name: 'test 1', // name of the test build: 'nodejs build' // name of the build }; // url: https://{username}:{accesstoken}@hub.lambdatest.com/wd/hub const gridurl = 'https://' + username + ':' + key + '@' + grid_host; // setup and build selenium driver...
... give it the following contents: const webdriver = require('selenium-webdriver'), by = webdriver.by, until = webdriver.until; // input capabilities let capabilities = { 'browsername' : 'firefox', 'browser_
version' : '56.0 beta', 'os' : 'os x', 'os_
version' : 'sierra', 'resolution' : '1280x1024', 'browserstack.user' : 'your-user-name', 'browserstack.key' : 'your-access-key', 'browserstack.debug' : 'true', 'build' : 'first build' }; let driver = new webdriver.builder().
...And 2 more matches
Git and GitHub - Learn web development
all developers will use some kind of
version control system (vcs), a tool to allow them to collaborate with other developers on a project without danger of them overwriting each other's work, and roll back to previous
versions of the code base if a problem is discovered later on.
... you will also want to be able to roll back to earlier
versions if a problem is later discovered.
... you might have started doing this in your own work by creating different
versions of the same file, e.g.
...And 2 more matches
Theme concepts
add the theme image file to the folder: <mytheme> <your_header_image>.<type> create a file called manifest.json in the folder and edit its content as follows: { "manifest_
version": 2, "
version": "1.0", "name": "<your_theme_name>", "theme": { "images": { "theme_frame": "<your_header_image>.<type>" }, "colors": { "frame": "#ffffff", "tab_background_text": "#000" } } } where: "frame": is the heading area background color for your theme.
... updating static themes if your static theme is hosted on amo, you can upload a new
version using the developer hub with the following steps: visit the product page for your theme through the developer hub select "upload new
version" on the left upload your packaged file for validation or modify it using the theme generator for self-hosted static themes, a new
version can be updated through amo by following the above steps or be handled by you through an updateurl or external app...
...a new
version will need to be signed through the developer hub.
...And 2 more matches
Command line options
user profile -allow-downgrade firefox 67's downgrade protection prevents accidentally starting firefox in a profile running a later
version of firefox.
... depending on changes between the two
versions, some files in a profile may not be downwards compatible.
... you must use an upper case p on linux with
versions older than 7.x, as there lower case invokes purify mode (memory and leak detection).
...And 2 more matches
Gecko SDK
downloading for gecko
versions before 2.0, you should choose the gecko sdk
version for the earliest
version of mozilla you wish to target.
... for gecko
versions 2.0 and higher, you must recompile your component for each release as cross-
version compatibility is no longer supported.
... in addition to the below
versions, you can find other
versions (including beta) here: xulrunner releases (files include "sdk" in the name).
...And 2 more matches
AddonManager
callback, in string mimetype, in string hash, in string name, in string iconurl, in string
version, in nsiloadgroup loadgroup) promise?
... update_when_new_app_detected an update check performed when a new
version of the application has been detected.
... update_when_new_app_installed an update check performed after a new
version of the application has been installed.
...And 2 more matches
AddonUpdateChecker
if all you care about is finding the newest
version for an addon then you probably want to use findupdates() instead.
... to import the addonupdatechecker, use: components.utils.import("resource://gre/modules/addonupdatechecker.jsm"); method overview updateinfo getcompatibilityupdate(in updateinfo updates[], in string
version, in boolean ignorecompatibility, in string app
version, in string platform
version) updateinfo getnewestcompatibleupdate(in updateinfo updates[], in string app
version, in string platform
version) void checkforupdates(in string id, in string type, in string updatekey, string url, in updatechecklistener listener) constants constant description error_timeout the update check timed out.
... updateinfo getcompatibilityupdate( in updateinfo updates[], in string
version, in boolean ignorecompatibility, in string app
version, in string platform
version ) parameters updates an array of update objects
version the
version of the add-on to get new compatibility information for ignorecompatibility an optional parameter to get the first compatibility update that is compatible with any
version of the application or toolkit app
version the
version of the ap...
...And 2 more matches
SVN for Localizers
brief intro to svn svn (abbreviation for sub
version) is a free and open source repository tool we use to manage the localized mozilla web pages.
... it's a handy tool that allows us to grab, change, and store
versions of source files in one location.
... installing svn client: linux users can download the svn client from http://sub
version.apache.org/packages.html or install packages provided within their distribution (for example, in debian, sudo apt-get install sub
version).
...And 2 more matches
Profiling with Xperf
this page applies to xperf
version 4.8.7701 or newer.
... to see your xperf
version, either run 'xperf' on a command line with no arguments, or start 'xperfview' and look at help -> about performance analyzer.
... (note that it's not the first
version number in the about window; that's the windows
version.) if you have an older
version, you will experience bugs, especially around symbol loading for local builds.
...And 2 more matches
Using JSS
jss
version 3.0 linked statically with nss, so it only required nspr.
... jss
versions 3.1 and later link dynamically with nss, so they also require the nss shared libraries.
...you need to select the right
version of the components, based on the
version of jss you are using.
...And 2 more matches
NSS 3.14.3 release notes
this attack is mitigated when using nss 3.14.3 with an nss cryptographic module ("softoken")
version 3.14.3 or later.
... however, this attack is only partially mitigated if nss 3.14.3 is used with the current fips validated nss cryptographic module,
version 3.12.9.1.
... bug 837799 - nss 3.14.2 broke compilation with older
versions of sqlite that lacked the sqlite_fcntl_tempfilename file control.
...And 2 more matches
NSS 3.14 release notes
to better support tls 1.1 and future
versions of tls, a new
version range api was introduced to allow applications to specify the desired minimum and maximum
versions.
...the following functions have been added to the libssl library included in nss 3.14 ssl_
versionrangeget (in ssl.h) ssl_
versionrangegetdefault (in ssl.h) ssl_
versionrangegetsupported (in ssl.h) ssl_
versionrangeset (in ssl.h) ssl_
versionrangesetdefault (in ssl.h) to better ensure interoperability with peers that support tls 1.1, nss has altered how it handles certain ssl protocol layer events.
... when connecting to a server, the record layer
version of the initial clienthello will be at most { 3, 1 } (tls 1.0), even when attempting to negotiate tls 1.1 (https://bugzilla.mozilla.org/show_bug.cgi?id=774547) the choice of client_
version sent during renegotiations has changed.
...And 2 more matches
NSS 3.18 release notes
notable changes in nss 3.18 the highest tls protocol
version enabled by default has been increased from tls 1.0 to tls 1.2.
... similarly, the highest dtls protocol
version enabled by default has been increased from dtls 1.0 to dtls 1.2.
... on mac os x, by default the softokn shared library will link with the sqlite library installed by the operating system, if it is
version 3.5 or newer.
...And 2 more matches
NSS 3.23 release notes
new functions in ssl.h ssl_setdowngradecheck
version - set maximum
version for new serverrandom anti-downgrade mechanism.
... clients that perform a
version downgrade (which is a dangerous practice) call this with the highest
version number that they possibly support.
... this gives them access to the
version downgrade protection from tls 1.3.
...And 2 more matches
NSS 3.27.1 release notes
previous
versions of nss made tls 1.3 (draft) available only when compiled with nss_enable_tls_1_3.
... nss 3.27 set this value on by default, allowing tls 1.3 (draft) to be disabled using nss_disable_tls_1_3, although the maximum
version used by default remained tls 1.2.
... however, some applications query the list of protocol
versions that are supported by the nss library, enabling all supported tls protocol
versions.
...And 2 more matches
NSS 3.28 release notes
note that there is a difference between tls 1.3 and key exporters in older
versions of tls.
... nss includes support for the x25519 key exchange algorithm (bug 957105), which is supported and enabled by default in all
versions of tls.
... for the future nss 3.29 release, it is planned that standard builds of nss will support the tls 1.3 protocol (although the maximum tls protocol
version enabled by default will remain at tls 1.2).
...And 2 more matches
NSS environment variables
variable type description introduced in
version nsrandcount integer (byte count) sets the maximum number of bytes to read from the file named in the environment variable nsrandfile (see below).
... if set to "disabled", softoken will ignore forks, and behave as it did in older
versions.
... variable type description introduced in
version build_opt boolean (1 to enable) do an optimized (not debug) build.
...And 2 more matches
Utility functions
the nss
version column indicates which
versions of nss support the function.
... function name/documentation source code nss
versions atob_asciitodata mxr deprecated 3.2 use nssbase64_decodebuffer atob_convertasciitoitem mxr deprecated 3.2 use nssbase64_decodebuffer btoa_convertitemtoascii mxr deprecated 3.2 use nssbase64_encodeitem btoa_datatoascii mxr deprecated 3.2 use nssbase64_encodeitem der_asciitotime mxr 3.5 and later der_decodetimechoice mxr 3.9 and later der_encode mxr 3.4 and later der_encodetimechoice mxr 3.9 and later der_generalizedtimetotime mxr 3.2 and later der_getinte...
... nss_isinitialized mxr 3.9.2 and later nss_nodb_init mxr 3.2 and later nss_putenv mxr 3.2 and later nss_registershutdown mxr 3.11.1 and later nss_shutdown mxr 3.2 and later nss_unregistershutdown mxr 3.11.1 and later nss_
versioncheck mxr 3.2 and later nssbase64_decodebuffer mxr 3.4 and later nssbase64decoder_create mxr 3.2 and later nssbase64decoder_destroy mxr 3.2 and later nssbase64decoder_update mxr 3.2 and later nssbase64_encodeitem mxr 3.4 and later n...
...And 2 more matches
NSS tools : pk12util
return codes o 0 - no error o 1 - user cancelled o 2 - usage error o 6 - nls init error o 8 - certificate db open error o 9 - key db open error o 10 - file initialization error o 11 - unicode con
version error o 12 - temporary file creation error o 13 - pkcs11 get slot error o 14 - pkcs12 decoder start error o 15 - error read from import file o 16 - pkcs12 decode error o 17 - pkcs12 decoder verify error o 18 - pkcs12 decoder validate bags error o 19 - pkcs12 decoder import bags error o 20 - key db con
version version 3 to
version 2 error ...
...o 21 - cert db con
version version 7 to
version 5 error o 22 - cert and key dbs patch error o 23 - get default cert db error o 24 - find cert by nickname error o 25 - create export context error o 26 - pkcs12 add password itegrity error o 27 - cert and key safes creation error o 28 - pkcs12 add cert and key error o 29 - pkcs12 encode error examples importing keys and certificates the most basic usage of pk12util for importing a certificate or key is the pkcs#12 input file (-i) and some way to specify the security database being accessed (either -d for a directory or -h for a token).
...id encryption algorithm: pkcs #12 v2 pbe with sha-1 and 3key triple des-cbc parameters: salt: 45:2e:6a:a0:03:4d:7b:a1:63:3c:15:ea:67:37:62:1f iteration count: 1 (0x1) certificate: data:
version: 3 (0x2) serial number: 13 (0xd) signature algorithm: pkcs #1 sha-1 with rsa encryption issuer: "e=personal-freemail@thawte.com,cn=thawte personal freemail c a,ou=certification services division,o=thawte consulting,l=cape t own,st=western cape,c=za" ....
...And 2 more matches
JS_AddArgumentFormatter
description js_addargumentformatter establishes formatter as the con
version function for format strings beginning with format in the context cx.
...js_removeargumentformatter removes any con
version functions associated with format.
... callback syntax jsbool (*jsargumentformatter)(jscontext *cx, const char *format, jsbool fromjs, jsval **vpp, va_list *app); name type description cx jscontext * the context in which the con
version is being performed.
...And 2 more matches
SpiderMonkey 38
if you are compiling with microsoft's visual studio, note that the minimum supported
version is msvc10/2010.
... on all other platforms the jit is simply disabled; javascript code runs in an interpreter, as in previous
versions.
... the following features in earlier
versions of spidermonkey have been dropped.
...And 2 more matches
Embedded Dialog API
an embedding application may implement its own
version of all dialogs in gecko.
...to replace these default dialogs with its own
versions, an application must replace the component which implements them.
...(line number accurate in
version 1.30).
...And 2 more matches
XPCOM array guide
nsautotarray<t, n> - a
version of nstarray which includes n entries of internal storage for the array data.
... // old
version, relied on automatic addref // melements is an nsisupportsarray* void getfirstobject(nsielement** aresult) { // no need to call ns_addref - this does it for you melements->queryelementat(0, ns_get_iid(nsielement), (void**)aresult); } // new
version, make sure to call ns_addref() // melements is now a nscomarray<nsielement> void getfirstobject(nsielement** aresult) { *aresult = melements[0]...
...the implementation of the string enumerator interfaces for nstarray<nsstring> and nstarray<nscstring> supports con
version between utf8 and unicode, and can be queryinterface'd back and forth between nsistringenumerator and nsiutf8stringenumerator.
...And 2 more matches
How to build an XPCOM component in JavaScript
you can download an old
version of xpcomviewer that works with firefox 1.5 from mozdev mirrors.
...you can learn how to get mac, linux, and windows
versions of the gecko sdk by reading the article gecko sdk.
... note: the mac
version of the sdk provided for download is powerpc-only.
...And 2 more matches
An Overview of XPCOM
but xpcom also provides several tools and libraries that enable the loading and manipulation of these components, services that help the developer write modular cross-platform code, and
versioning support, so that components can be replaced or upgraded without breaking or having to recreate the application.
...in component-based programming, a component guarantees that the interfaces it provides will be immutable - that they will provide the same access to the same methods across different
versions of the component - establishing a contract with the software clients that use it.
...this is the contract id for the ldap operation component: "@mozilla.org/network/ldap-operation;1" the format of the contract id is the domain of the component, the module, the component name, and the
version number, separated by slashes.
...And 2 more matches
XPCShell Reference
the command line the command-line syntax for xpcshell is: xpcshell [-s] [-w] [-w] [-v
version] [-f scriptfile] [scriptfile] [scriptarg...] -c this option turns on the "compile-only" mode.
... -v
version this allows you to specify a specific
version of js to use, and should be set to an integral value specified by the js
version enumerated type.
... for instance, specifying -v 180 will set the interpreter to use javascript
version 1.8.
...And 2 more matches
nsCStringEncoding
ns_cstring_encoding_ascii con
version between ascii and utf-16 assumes that all bytes in the source string are 7-bit ascii and can be inflated to utf-16 by inserting null bytes.
... reverse con
version is done by truncating every other byte.
... the con
version may result in loss and/or corruption of information if the strings do not strictly contain ascii data.
...And 2 more matches
nsIBidiKeyboard
linux this implementation depends on the gecko and gtk+
version.
...the problem is fixed on gtk+
version 2.10.1 and 2.12.
...on the gtk2 backend, we will have gtk+
version checking, to use gtk+ implementations, if the problem doesn't exist.
...And 2 more matches
nsIDOMOfflineResourceList
onupdateready nsidomeventlistener an event listener to be called when a resource update is ready; this event is not currently used since
versioned application caches aren't supported yet.
... updateready 4 there is a new
version of the application cache available.
... swapcache() swaps in the newest
version of the application cache.
...And 2 more matches
Troubleshooting XPCOM components registration
if your component requires any external libraries, you may need to read using dependent libraries in extension components make sure you are compiling against the right
version.
... note that even your
version of msvc may matter; your test machine may not have the c runtime libraries (msvcr70.dll / msvcp70.dll for msvc 7.0, and similarly named files for 7.1 and 8.0) available.
... this even means that if you are using a component stub, the stub needs to be compiled using a
version which the machine does support; most likely this means msvc 6.0.
...And 2 more matches
WebIDL bindings
it has a con
version operator that produces t&.
...it has a con
version operator that produces t&.
...it has a con
version operator to nsstring& so that it can be passed to methods that take that type or nsastring&, but callees that care about performance, have an nsstringbuffer available, and promise to hold on to the nsstringbuffer at least until the binding code comes off the stack can also take a domstring directly for their string return value and call its setstringbuffer method with the nsstringbuffer and its l...
...And 2 more matches
Plug-in Basics - Plugins
/system/library/frameworks/javavm.framework/
versions/current/resources.
... advanced: you can determine which directories a gecko program checks with the linux strace command, for example: strace -e open /usr/bin/firefox 2>&1 | grep plugin but with
version firefox-41.0.2 we can not check.
... example 1: nesting object elements <html> <head> <title>example 1: nesting object elements</title> <style type="text/css"> .myplugin { width: 470px; height: 231px; } </style> </head> <body><p> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#
version=5,0,30,0" class="myplugin"> <param name="movie" value="foo.swf"/> <param name="quality" value="high"/> <param name="salign" value="tl"/> <param name="menu" value="0"/> <object data="foo_movie.swf" type="application/x-shockwave-flash" class="myplugin"/> <param name="quality" value="high"/> <param name="salign" value="tl"/> ...
...And 2 more matches
Intensive JavaScript - Firefox Developer Tools
there's also a video
version of this walkthrough: the demo website looks like this: it has three controls: a radio button group to control how to run the javascript: as a single blocking operation in the main thread, as a series of smaller operations in the main thread using requestanimationframe(), or in another thread using a worker.
... // not prime isprime = false; break; } } if (isprime) { primes.push(candidate); } // schedule the next var testfunction = testcandidate.bind(this, index + 1); window.requestanimationframe(testfunction); } var primes = []; var testfunction = testcandidate.bind(this, 0); window.requestanimationframe(testfunction); } let's test this
version out: select the radio button labeled "use requestanimationframe" and capture another profile.
... the split-up
version takes much longer to run.
...And 2 more matches
about:debugging - Firefox Developer Tools
note: if the
version of firefox on your remote device is more than one major
version older than the
version running on your computer, you may see a message like the following: in firefox 76 and above, the message can look like the following: see connection for firefox for android 68 for more information.
... connection to firefox for android 68 releases of firefox for android that are based on
version 68 cannot be debugged from desktop firefox
versions 69 or later, because of the difference in release
versions.
... until such time as firefox for android is updated to a newer major release, in synch with desktop firefox, you should use one of the following firefox for android
versions: firefox preview, if your desktop firefox is the main release or developer edition firefox for android nightly if you prefer to test with the main release of firefox for android (i.e., based on release 68), you can do so with the desktop firefox extended support release (esr), which is also based on
version 68.
...And 2 more matches
Cache - Web APIs
make sure to
version caches by name and use the caches only from the
version of the script that they can safely operate on.
... the code snippet also shows a best practice for
versioning caches used by the service worker.
...it maps a shorthand identifier for a cache to a specific,
versioned cache name.
...And 2 more matches
Introduction to the File and Directory Entries API - Web APIs
overview the file and directory entries api includes both asynchronous and synchronous
versions of the interfaces.
... big concepts before you start using the file and directory entries api, you need to understand a few concepts: the file and directory entries api is a virtual representation of a file system the file and directory entries api can use different storage types browsers impose storage quota the file and directory entries api has asynchronous and synchronous
versions when using the asynchronous api, always use the error callbacks the file and directory entries api interacts with other apis the file and directory entries api is case-sensitive the file and directory entries api is a virtual representation of a file system the api doesn't give you access to the local file system, nor is the sandbox really a section of the file system.
... the file and directory entries api has asynchronous and synchronous
versions the file and directory entries api comes with asynchronous and synchronous
versions.
...And 2 more matches
IDBDatabase.deleteObjectStore() - Web APIs
as with idbdatabase.createobjectstore, this method can be called only within a
versionchange transaction.
... exceptions this method may raise a domexception of one of the following types: exception description invalidstateerror occurs if the method was not called from a
versionchange transaction callback.
...has been deleted or removed.) in firefox previous to
version 41, an invalidstateerror was raised in this case as well, which was misleading; this has now been fixed (see bug 1176165.) notfounderror you are trying to delete an object store that does not exist.
...And 2 more matches
IDBDatabaseSync - Web APIs
important: the synchronous
version of the indexeddb api was originally intended for use only with web workers, and was eventually removed from the spec because its need was questionable.
...d overview idbobjectstoresync createobjectstore (in domstring name, in domstring keypath, in optional boolean autoincrement) raises (idbdatabaseexception); idbobjectstoresync openobjectstore (in domstring name, in optional unsigned short mode) raises (idbdatabaseexception); void removeobjectstore (in domstring storename) raises (idbdatabaseexception); void set
version (in domstring
version); idbtransactionsync transaction (in optional domstringlist storenames, in optional unsigned int timeout) raises (idbdatabaseexception); attributes attribute type description description readonly domstring the human-readable description of the connected database.
...
version readonly domstring the
version of the connected database.
...And 2 more matches
IDBRequest.transaction - Web APIs
if a
version upgrade is needed when opening a database then during the upgradeneeded event handler the transaction property will be an idbtransaction with mode equal to "
versionchange", and can be used to access existing object stores and indexes, or abort the the upgrade.
.../ log the transaction that originated this request console.log("the transaction that originated this request is " + updatetitlerequest.transaction); // when this new request succeeds, run the displaydata() // function again to update the display updatetitlerequest.onsuccess = function() { displaydata(); }; }; this example shows how a the transaction property can be used during a
version upgrade to access existing object stores: var openrequest = indexeddb.open('db', 2); console.log(openrequest.transaction); // will log "null".
... openrequest.onupgradeneeded = function(event) { console.log(openrequest.transaction.mode); // will log "
versionchange".
...And 2 more matches
KeyboardEvent - Web APIs
it was part of an old
version of dom level 3 events.
...it was part of an old
version of dom level 3 events.
...in certain older
versions of firefox, this key generated a keypress event; this inconsistent behavior was bug 602812.
...And 2 more matches
RTCPeerConnection - Web APIs
because this method has been deprecated, you should instead use removetrack() if your target browser
versions have implemented it.removetrack()the rtcpeerconnection.removetrack() method tells the local end of the connection to stop sending media from the specified track, without actually removing the corresponding rtcrtpsender from the list of senders as reported by rtcpeerconnection.getsenders().restartice()the webrtc api's rtcpeerconnection interface offers the restartice() method to allow a web appli...
... identityresult in old
versions of the webrtc specification, this event was used to indicate that an identity assertion is available.
... idpassertionerror in old
versions of the webrtc specification, this event was used to indicate that an error occurred while attempting to generate an identity assertion.
...And 2 more matches
Web applications and ARIA FAQ - Accessibility
however, many users may still be using older
versions of these technologies.
... browsers aria is supported in the following browsers: browser minimum
version notes firefox 3.0+ works with nvda, jaws 10+, and orca chrome latest screen reader support still experimental as of chrome 15 safari 4+ safari 5 support is much improved.
... in some cases, earlier
versions may support only some features of aria.
...And 2 more matches
:where() - CSS: Cascading Style Sheets
you can see the result below (although bear in mind that currently :is() and :where() are currently only enabled by default in firefox nightly,
version 77+.
... in other
versions of firefox it is behind a pref — layout.css.is-where-selectors.enabled).
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internet:where()chrome full support 72disabled full support 72disabled disabled from
version 72: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
...And 2 more matches
font-style - CSS: Cascading Style Sheets
syntax font-style: normal; font-style: italic; font-style: oblique; font-style: oblique 30deg; font-style: oblique 30deg 50deg; values normal selects the normal
version of the font-family.
... italic specifies that font-face is an italicized
version of the normal font.
... oblique specifies that the font-face is an artificially sloped
version of the normal font.
...And 2 more matches
@supports - CSS: Cascading Style Sheets
'='<attr-modifier> = i | s examples testing for the support of a given css property @supports (animation-name: test) { … /* css applied when animations are supported without a prefix */ @keyframes { /* other at-rules can be nested inside */ … } } testing for the support of a given css property or a prefixed
version @supports ((perspective: 10px) or (-moz-perspective: 10px) or (-webkit-perspective: 10px) or (-ms-perspective: 10px) or (-o-perspective: 10px)) { … /* css applied when 3d transforms, prefixed or not, are supported */ } testing for the non-support of a specific css property @supports not ((text-align-last: justify) or (-moz-text-align-last: justify)) { … /* css to provide fall...
...ox for androidopera for androidsafari on iossamsung internet@supportschrome full support 28edge full support 12firefox full support 22 full support 22 no support 17 — 22disabled disabled from
version 17 until
version 22 (exclusive): this feature is behind the layout.css.supports-rule.enabled preference (needs to be set to true).
... support 9webview android full support ≤37chrome android full support 28firefox android full support 22 full support 22 no support 17 — 22disabled disabled from
version 17 until
version 22 (exclusive): this feature is behind the layout.css.supports-rule.enabled preference (needs to be set to true).
...And 2 more matches
Event reference
svg events svgabort svgerror svgload svgresize svgscroll svgunload svgzoom database events abort blocked complete error success upgradeneeded
versionchange script events afterscriptexecute beforescriptexecute menu events dommenuitemactive dommenuiteminactive window events close popup events popuphidden popuphiding popupshowing popupshown tab events visibilitychange battery events chargingchange chargingtimechange dischargingtimechange levelchange call events alerting busy callschanged cfstatechange connecting dialing disconnec...
... blocked indexeddb an open connection to a database is blocking a
versionchange transaction on the same database.
... upgradeneeded indexeddb an attempt was made to open a database with a
version number higher than its current
version.
...And 2 more matches
HTTP headers - HTTP
if width occurs in a message more than once, the last value overrides all previous occurrences conditionals last-modified the last modification date of the resource, used to compare several
versions of the same resource.
... etag a unique string identifying the
version of the resource.
... user-agent contains a characteristic string that allows the network protocol peers to identify the application type, operating system, software vendor or software
version of the requesting software user agent.
...And 2 more matches
HTTP resources and specifications - HTTP
1.1): authentication proposed standard rfc 6265 http state management mechanism defines cookies proposed standard draft spec cookie prefixes ietf draft draft spec same-site cookies ietf draft draft spec deprecate modification of 'secure' cookies from non-secure origins ietf draft rfc 2145 use and interpretation of http
version numbers informational rfc 6585 additional http status codes proposed standard rfc 7538 the hypertext transfer protocol status code 308 (permanent redirect) proposed standard rfc 7725 an http status code to report legal obstacles on the standard track rfc 2397 the "data" url scheme proposed standard rfc 3986 uniform resourc...
... proposed standard rfc 7239 forwarded http extension proposed standard rfc 6455 the websocket protocol proposed standard rfc 5246 the transport layer security (tls) protocol
version 1.2 this specification has been modified by subsequent rfcs, but these modifications have no effect on the http protocol.
... proposed standard rfc 8446 the transport layer security (tls) protocol
version 1.3 supersedes tls 1.2.
...And 2 more matches
Web audio codec guide - Web media technologies
for each factor that affects the encoded audio, there is a simple rule that is nearly always true: because the fidelity of digital audio is determined by the granularity and precision of the samples taken to convert it into a data stream, the more data used to represent the digital
version of the audio, the more closely the sampled sound will match the source material.
...this capability was introduced on each platform in different firefox releases: aac support in firefox using external library, by platform platform first firefox
version with aac support windows (vista and later) 22 android 20 linux (depends on gstreamer) 26 macos 35 [2] chrome supports aac only in mp4 containers, and only supports aac's main profile.
...upport yes yes yes[1] 9 yes 3.1 container support mpeg-1, mpeg-2, mp4, adts, 3gp rtp / webrtc compatible no licensing patent-free in the eu as of 2012; patent-free in the united states as of april 16, 2017; now free to use [1] for patent reasons, firefox did not directly support mp3 prior to
version 71; instead, platform-native libraries were used to support mp3.
...And 2 more matches
begin - SVG: Scalable Vector Graphics
examples offset example <svg width="120" height="120" viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"
version="1.1"> <!-- animated rectangles --> <rect x="10" y="35" height="15" width="0"> <animate attributetype="xml" attributename="width" to="100" begin="0s" dur="8s" fill="freeze" /> </rect> <rect x="35" y="60" height="15" width="0"> <animate attributetype="xml" attributename="width" to="75" begin="2s" dur="6s" ...
..."middle">8s</text> <line x1="110" y1="25" x2="110" y2="105" stroke="grey" stroke-width=".5" /> <line x1="10" y1="30" x2="110" y2="30" stroke="grey" stroke-width=".5" /> <line x1="10" y1="105" x2="110" y2="105" stroke="grey" stroke-width=".5" /> </svg> begin-1-offset.svg syncbase example <svg width="120" height="120" viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"
version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink"> <!-- animated rectangles --> <rect x="10" y="35" height="15" width="0"> <animate attributetype="xml" attributename="width" to="50" id="first" begin="0s;third.end" dur="4s" /> </rect> <rect x="60" y="60" height="15" width="0"> <animate attributetype="xml" attributename="width" to="25" ...
...="middle">8s</text> <line x1="110" y1="25" x2="110" y2="105" stroke="grey" stroke-width=".5" /> <line x1="10" y1="30" x2="110" y2="30" stroke="grey" stroke-width=".5" /> <line x1="10" y1="105" x2="110" y2="105" stroke="grey" stroke-width=".5" /> </svg> begin-2-syncbase.svg event example <svg width="120" height="120" viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"
version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink"> <!-- animated rectangle --> <rect x="10" y="35" height="15" width="0"> <animate attributetype="xml" attributename="width" from="0" to="100" begin="startbutton.click" dur="8s" fill="freeze" /> </rect> <!-- trigger --> <rect id="startbutton" style="cursor:pointer;" x="19.
...And 2 more matches
Compiling from Rust to WebAssembly - WebAssembly
this installs a tool called "rustup", which lets you manage multiple
versions of rust.
...when it comes to picking a
version, choose any one you'd like; this tutorial isn't
version-specific.
...open this file, and change its contents to look like this: [package] name = "hello-wasm"
version = "0.1.0" authors = ["your name <you@example.com>"] description = "a sample project with wasm-pack" license = "mit/apache-2.0" repository = "https://github.com/yourgithubusername/hello-wasm" [lib] crate-type = ["cdylib"] [dependencies] wasm-bindgen = "0.2" fill in your own repository and use the same info that git uses for the authors field.
...And 2 more matches
test/assert - Archive of obsolete content
implements the assert interface defined in the commonjs unit testing specification
version 1.1.
... the assert object's interface is defined by the commonjs unit testing specification,
version 1.1.
... strictequal(actual, expected, message) tests that two objects are equal, using the strict equality operator ===: // this test will pass, because "==" will perform type con
version exports["test coercive equality"] = function(assert) { assert.equal(1, "1", "test coercive equality between 1 and '1'"); } // this test will fail, because the types are different exports["test strict equality"] = function(assert) { assert.strictequal(1, "1", "test strict equality between 1 and '1'"); } parameters actual : object the actual result.
... notstrictequal(actual, expected, message) tests that two objects are not equal, using the negation of the strict equality operator ===: // this test will fail, because "==" will perform type con
version exports["test coercive equality"] = function(assert) { assert.notequal(1, "1", "test coercive equality between 1 and '1'"); } // this test will pass, because the types are different exports["test strict equality"] = function(assert) { assert.notstrictequal(1, "1", "test strict equality between 1 and '1'"); } parameters actual : object the actual result.
Developing for Firefox Mobile - Archive of obsolete content
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.
... setting up the environment first you'll need an android device capable of running the native
version of firefox mobile.
... then: install the nightly build of the native
version of firefox mobile on the device.
... enable usb debugging on the device (step 2 of this link only) on the development machine: install
version 1.5 or higher of the add-on sdk install the correct
version of the android sdk for your device using the android sdk, install the android platform tools next, attach the device to the development machine via usb.
Dialogs and Prompts - Archive of obsolete content
<?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> <dialog xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" id="..." title="..." buttons="accept,cancel" ondialogaccept="return onaccept();" ondialogcancel="return oncancel();"> <script src="chrome://..."/> <!-- content --> </dialog> you need to implement onaccept and oncancel functions in...
... example: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <dialog xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" ondialogaccept="alert('ok!');"> <hbox> <label value="hey!"/> <spacer flex="1"/> <vbox> <button dlgtype="accept"/> <button dlgtype="cancel"/> </vbox> </hbox> </dialog> default button since firefox 1.5, there are defaultbut...
...the possible values for the attribute are the names of buttons listed above, and the default is "accept", for compatibility with previous
versions.
... original
version the original
version of this tutorial was written by "ihoss" (it was here).
HTML in XUL for rich tooltips - Archive of obsolete content
this example is what the final xul overlay could look like, assuming a javascript overlay titled overlay.js: <?xml
version="1.0" encoding="utf-8"?> <overlay id="htmltip-overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml"> <script type="application/x-javascript" src="overlay.js"/> <popup id="contentareacontextmenu"> <menuitem id="htmltip1" label="foo1" onmouseover="htmltip.onmousetooltip(event)" tooltip="myhtmltip" /> <menuitem id="htmltip2" l...
...abel="foo2" onmouseover="htmltip.onmousetooltip(event)" tooltip="myhtmltip" /> </popup> <popupset id="mainpopupset"> <tooltip id="myhtmltip"> <html:div id="myhtmltipdiv" type="content"/> </tooltip> </popupset> </overlay> insert your
version of the following into the javascript overlay.
...for security reasons, the con
version will strip out some of the more dangerous elements in the html string, like javascript and iframes.
... <?xml
version="1.0" encoding="utf-8"?> <overlay id="htmltip-overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml"> <script type="application/x-javascript" src="overlay.js"/> <popup id="contentareacontextmenu"> <menuitem id="htmltip3" label="foo3" tooltip="mytip3html" /> </popup> <popupset id="mainpopupset"> <tooltip id="mytip3html"> <html:div type="content"> <html:b>bold foo</html:b> ...
Connecting to Remote Content - Archive of obsolete content
request.open("post", url, true); request.setrequestheader("content-type", "application/x-www-form-urlencoded"); request.send("data=hello&
version=2"); the third parameter for the open method specifies whether the request should be handled asynchronously or not.
...the json page explains in detail how to parse json data in different
versions of firefox and other applications.
...let's assume that the xml returned from remote server is this: <?xml
version="1.0"?> <data> <shops> <shop> <name>apple</name> <code>a001</code> </shop> <shop> <name>orange</name> </shop> </shops> <total>2</total> </data> when a valid xml response comes back from the remote server, the xml document object can be manipulated using different dom methods, to display the data in the ui or store it into a local datasource.
... <?xml
version="1.0" encoding="utf-8"?> <xsl:stylesheet
version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <xsl:template match="/data"> <xul:vbox> <xsl:for-each select="shops/name"> <xul:hbox> <xul:label value="name:" /> <xul:label> <xsl:value-of select="." /> ...
Adding preferences to an extension - Archive of obsolete content
refreshinformation() this method is slightly revised from previous
versions, in that it needs to fetch the preference for the stock to watch and use that to construct the url to monitor, as well as to construct the string to be displayed in the status bar panel.
... <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <prefwindow id="stockwatcher2-prefs" title="stockwatcher 2 options" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <prefpane id="sw2-stock-pane" label="stock settings"> <preferences> <preference id="pref_symbol" name="extensions.stockwatcher2.symbol" type="string"/> </preferences> ...
...your options.xul file would look like this: <?xml
version="1.0" ?> <vbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <setting pref="extensions.stockwatcher2.symbol" type="string" title="stock to watch" /> </vbox> adding the context menu adding the contextual menu is easy; all the work that needs doing is done in the stockwatcher2.xul file.
... « previousnext » override chrome://myaddon/content/options.xul chrome://myaddon/content/oldoptions.xul application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} app
version<=6.* examples github - gist :: _ff-addon-template-bootstrapprefsskeleton - this gist here is a fully working example of a fully funcitonal preferences skeleton, it uses the observer example from above.
Installing plugins to Gecko embedding browsers on Windows - Archive of obsolete content
these keys are written by the installer of mozilla browsers -- the netscape 6.2 installer, for example, writes these keys to the registry, and so does the mozilla installer (for
versions after mozilla 0.9.1).
...some gecko-based browsers provide additional information via the registry, and where appropriate, these registry keys are also mentioned, with the necessary
version caveats.
... to find the
version of gecko used (for plugin compatibility) applicable to compuserve 7.0, netscape 7.0 (windows), and other aol browsers currently in beta only finding the
version of gecko that the browser uses is useful, because plugin vendors may wish to take advantage of certain features (perhaps available via fixes to the netscape plugin api) that are only available in certain
versions of gecko.
...under hkey_local_machine\software\mozilla\compuserve 7.0 you'll find: "plugins folders"="c:\\program files\\common files\\csshare\\plugins0942" "product"="compuserve" "
version"="7.0" "displayname"="compuserve 7.0" the product,
version, and displayname string values are currently only written by compuserve 7.0, and they are written alongside the geckover string value.
Autodial for Windows NT - Archive of obsolete content
a brief history of autodial on windows in the consumer
versions of windows, (windows 95, windows 98, windows me) autodial for all applications is controlled from the control panel, in the internet options applet, under the tab connections.
...it is not present in early
versions of windows until internet explorer is installed.
...starting with windows nt, and in all nt-based
versions (windows nt, windows 2000, and windows xp, including xp home) microsoft has changed the behavior of autodial.
... how the feature works this feature doesn't do anything on linux, mac, or the consumer
versions of windows.
Creating a Firefox sidebar extension - Archive of obsolete content
chrome/content/emptysidebar.xul <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css" ?> <?xml-stylesheet href="chrome://browser/skin/browser.css" type="text/css" ?> <!doctype page system "chrome://emptysidebar/locale/emptysidebar.dtd"> <page id="sbemptysidebar" title="&emptysidebar.title;" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" > <vbox flex="1"> <label id="atest" v...
...chrome/content/firefoxoverlay.xul <?xml
version="1.0"?> <!doctype overlay system "chrome://emptysidebar/locale/emptysidebar.dtd"> <overlay id="emptysidebaroverlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <menupopup id="viewsidebarmenu"> <menuitem key="key_openemptysidebar" observes="viewemptysidebar" /> </menupopup> <keyset id="mainkeyset"> <key id="key_openemptysidebar" command="viewemptysidebar" key="&...
...install.rdf <?xml
version="1.0" encoding="utf-8"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>emptysidebar@yourdomain.com</em:id> <em:name>emptysidebar extension</em:name> <em:
version>1.0</em:
version> <em:creator>your name</em:creator> <em:description>example extension for creatio...
...n and registration of a sidebar.</em:description> <em:targetapplication> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <!-- firefox --> <em:min
version>1.5</em:min
version> <em:max
version>2.0.0.*</em:max
version> </description> </em:targetapplication> </description> </rdf> the other manifest file is chrome.manifest, the chrome manifest file.
contents.rdf - Archive of obsolete content
copy the following text and paste it into a text file, then save that file as "contents.rdf": <?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:chrome="http://www.mozilla.org/rdf/chrome#"> <!-- list all the skins being supplied by this theme --> <rdf:seq about="urn:mozilla:skin:root"> <rdf:li resource="urn:mozilla:skin:myskin/1.0" /> </rdf:seq> <rdf:description about="urn:mozilla:skin:myskin/1.0" chrome:displayname="my skin" chrome:accesskey="m" chrome:author="me" chrome:description="this is my custom skin for mozilla" chrome:name="myskin/1.0" chrome:image="preview.png"> <chrome:packages> <rdf:seq about="urn:mozilla:skin:myskin/1.0:packages"> <rdf:li resource="urn...
...:mozilla:skin:myskin/1.0:communicator"/> <rdf:li resource="urn:mozilla:skin:myskin/1.0:editor"/> <rdf:li resource="urn:mozilla:skin:myskin/1.0:global"/> <rdf:li resource="urn:mozilla:skin:myskin/1.0:messenger"/> <rdf:li resource="urn:mozilla:skin:myskin/1.0:navigator"/> </rdf:seq> </chrome:packages> </rdf:description> <!--
version information.
... state that we work only with major
version 1 of this package.
... --> <rdf:description chrome:skin
version="1.0" about="urn:mozilla:skin:myskin/1.0:communicator"/> <rdf:description chrome:skin
version="1.0" about="urn:mozilla:skin:myskin/1.0:editor"/> <rdf:description chrome:skin
version="1.0" about="urn:mozilla:skin:myskin/1.0:global"/> <rdf:description chrome:skin
version="1.0" about="urn:mozilla:skin:myskin/1.0:messenger"/> <rdf:description chrome:skin
version="1.0" about="urn:mozilla:skin:myskin/1.0:navigator"/> </rdf:rdf> ...
Creating a Skin for Firefox/Getting Started - Archive of obsolete content
download the latest
version of firefox and install it.
...but this list includes everything that we changed, so just modify the blue text to point to match the name/
version that you used in the sections before this.
... <description about="urn:mozilla:install-manifest"> <em:id>{themes_uuid}</em:id> <em:
version>themes_
version</em:
version> the first section requires that you establish a uuid for your theme and that you give your theme a
version number.
... you will also have to update the minimum and maximum compatible
versions for the target application (firefox) in the following section: <em:targetapplication> <description> <!-- firefox's uuid --> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:min
version>min_ff_
version</em:min
version> <em:max
version>max_ff_
version</em:max
version> </description> </em:targetapplication> establishing both minimum and maximum compatible
versions lets you avoid conflicts with
versions of firefox your theme wasn't designed for -- or wasn't tested on.
GRE Registration - Archive of obsolete content
each subkey is searched for gre registration information: hklm/software/mozilla.org/gre/1.8_1
version=1.8 grehome=c:\path\to\installed-dir feature=value feature2=value2 hklm/software/mozilla.org/gre/1.8_2
version=1.8 grehome=c:\path\to\second-installation when installing a gre via the mozilla suite gre installer, the installer will blindly overwrite any previous gre information in hklm/software/mozilla.org/gre/<
version>.
... when installing a gre via the command line <tt>xulrunner.exe -register-global</tt>, xulrunner will detect that there is already an installation at hklm/software/mozilla.org/gre/<
version> and will try alternate keys <
version>_1 _2 until an available key is found.
...this framework is installed either in /library/frameworks/xul.framework/
versions/<
version> or in ~/library/frameworks/xul.framework/
versions/<
version>.
...the <tt>-register-global</tt> flag has special fallback semantics so that multiple xulrunners of the same
version can be installed without overwriting registration files.
Creating a Help Content Pack - Archive of obsolete content
insert into it the following text: <?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:nc="http://home.netscape.com/nc-rdf#"> </rdf:rdf> if you're familiar with html or xml, you might recognize this as the container element for the whole document.
...(the index, table of contents, and search data sources are more likely to be nested, complicating their formats.) create a new rdf file (for now let's name it glossary.rdf), and add the following lines to it: <?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:nc="http://home.netscape.com/nc-rdf#"> <rdf:description rdf:about="urn:root"> <nc:subheadings> <rdf:seq> </rdf:seq> <nc:subheadings> </rdf:description> </rdf:rdf> this forms the outer framework of a glossary description file.
...let's start with a brief sample rdf file with a single level: <?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:nc="http://home.netscape.com/nc-rdf#"> <rdf:description rdf:about="urn:root"> <nc:subheadings> <rdf:seq> <rdf:li><rdf:description nc:link="foo.html" nc:title="foo"/></rdf:li> <rdf:li><rdf:description nc:link="baz.html" nc:title="baz"/></rdf:li> </rdf:seq> <nc:subheadings...
...in some
versions of the viewer, it will be the only data source ever directly displayed.
Abc Assembler Tests - Archive of obsolete content
sample abcasm test /* ***** begin license block ***** *
version: mpl 1.1/gpl 2.0/lgpl 2.1 * * the contents of this file are subject to the mozilla public license
version * 1.1 (the "license"); you may not use this file except in compliance with * the license.
... * * contributor(s): * adobe as3 team * * alternatively, the contents of this file may be used under the terms of * either the gnu general public license
version 2 or later (the "gpl"), or * the gnu lesser general public license
version 2.1 or later (the "lgpl"), * in which case the provisions of the gpl or the lgpl are applicable instead * of those above.
... if you wish to allow use of your
version of this file only * under the terms of either the gpl or the lgpl, and not to allow others to * use your
version of this file under the terms of the mpl, indicate your * decision by deleting the provisions above and replace them with the notice * and other provisions required by the gpl or the lgpl.
... if you do not delete * the provisions above, a recipient may use your
version of this file under * the terms of any one of the mpl, the gpl or the lgpl.
Venkman Introduction - Archive of obsolete content
if you don't already have venkman or would like to upgrade, you can easily get the latest
version from firefox add-ons.
...first, from within the browser you want to host the debugger application, visit the firefox add-ons page and click on the "install" link for the most recent
version.
... to see which
version of venkman you have, type /
version in the interactive session view.
... for more information about the latest improvements and
versions, see the venkman development page.
toString - Archive of obsolete content
summary converts an install
version init object to a string.
... method of install
version object syntax string
version = install
version.tostring ( initobj ); parameters the tostring method has the following parameter: initobj initobj is an install
version object whose init method has been called.
...the init() function can input the
version number as a single string or as a series of parameters representing the
version numbers of the installation.
... to get the
version number out of an install
version object in order to compare it with other
versions, you can call tostring() and get back the
version as a string in the format "maj.min.rev.bld." example var vi = new install
version(); vi.init("999.888.777.666"); //random string vistring = vi.tostring(); ...
Properties - Archive of obsolete content
properties major most siginificant element of the install
version object.
...major
version of netscape 6 is "6" minor second most siginificant element of the install
version object.e.g.
... minor
version of netscape communicator 4.7 is "7" release second least siginificant element of the install
version object.
... build least siginificant element of the install
version object.e.g.
XUL accessibility tool - Archive of obsolete content
future
versions of the extension will be available from addons.mozilla.org.
... the
version currently on xulplanet is compatible with the following xul applications: firefox 1.5+ thunderbird 3.0a+ recent sunbird builds recent songbird builds.
... future work the following things have been suggested or are planned for a future
version of the tool: new tests: (aaronlev) warning: hardcoded color and pixel sizings (aaronlev) error: duplicate accesskey in a dialog (already have this for menus) (aaronlev) error: form control without accesskey (aaronlev) warning: accesskey as lowercase letter with descender (underlined g,j,y,q,p are hard to read, not recommended) (aaronandy) list of things to check manually, such as a list of...
... (aaronandy) xul runner
version that can run from the command line, check a text file, and output the results somewhere.
XULRunner 1.9.2 Release Notes - Archive of obsolete content
current
version the current
version of xulrunner 1.9.2 is 3.6.26, matching firefox 3.6.26 detailed release notes can be found here.
... mac os x if you have multiple
versions of xulrunner installed on mac os x, it is not possible to uninstall only one
version.
... to remove all installed
versions of xulrunner, remove the /library/frameworks/xul.framework directory.
... you also need to remove the receipt, especially if you plan on reinstalling a different
version.
XULRunner 1.9 Release Notes - Archive of obsolete content
it replaces
version 1.8.0.4; all users should upgrade.
... current
version the current
version of xulrunner is 1.9.0.17, matching firefox 3.0.17 detailed release notes can be found here.
... mac os x if you have multiple
versions of xulrunner installed on mac os x, it is not possible to uninstall only one
version.
... to remove all installed
versions of xulrunner, remove the /library/frameworks/xul.framework directory.
XULRunner 2.0 Release Notes - Archive of obsolete content
current
version the current
version of xulrunner 2.0 is 2.0, matching firefox 4.0 detailed release notes can be found here.
...xulrunner 1.9.2 and earlier
versions had powerpc (ppc) and i386 architectures.
... mac os x if you have multiple
versions of xulrunner installed on mac os x, it is not possible to uninstall only one
version.
... to remove all installed
versions of xulrunner, remove the /library/frameworks/xul.framework directory.
Sunbird Theme Tutorial - Archive of obsolete content
this tutorial is a step-by-step guide to making a theme for sunbird 0.3a1 and later
versions.
...copy and paste the content from here, making sure that you scroll to get all of it: <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest" em:id="just-testing@example.com" em:name="just testing" em:creator="rod whiteley" em:description="a test theme for sunbird" em:homepageurl="http://developer.mozilla.org/" em:
version="0.1" em:internalna...
...me="testing" em:type="4" > <em:targetapplication><!-- sunbird --> <description em:id="{718e30fb-e89b-41dd-9da7-e25a45638b28}" em:min
version="0.2.9" em:max
version="0.4" /> </em:targetapplication> </description> </rdf> in the line that starts <tt>em:id</tt>, paste your identifier between the double-quote characters, replacing the identifier that is there now.
...note: if your theme is for a
version of sunbird later than 0.4, then also change the max
version.
Common Firefox theme issues and solutions - Archive of obsolete content
to fix this issue you need to copy the following file from the latest
version of firefox to your theme: chrome://global/content/aboutmemory.css.
...ctor-breadcrumbs-button { .inspector-breadcrumbs-button[checked] > .inspector-breadcrumbs-tag { .inspector-breadcrumbs-button[checked] > .inspector-breadcrumbs-id { .inspector-breadcrumbs-id, .inspector-breadcrumbs-classes { style inspector breadcrumb button backgrounds are not consistent between pre-ff14 and ff14+ the use of the styling rule fill in -moz-border-image is incompatible with
versions of firefox older than firefox14, however, its use is needed for firefox 14 and later.
... themes that use -moz-border-image and support both firefox 14 and newer as well as older
versions of firefox need to use both the older and newer methodologies like the following example.
...this issue needs to be corrected in the next
version of your theme.
contents.rdf - Archive of obsolete content
copy the following text and paste it into a text file, then save that file as "contents.rdf": <?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:chrome="http://www.mozilla.org/rdf/chrome#"> <!-- list all the skins being supplied by this theme --> <rdf:seq about="urn:mozilla:skin:root"> <rdf:li resource="urn:mozilla:skin:my_theme"/> </rdf:seq> <rdf:description about="urn:mozilla:skin:my_theme" chrome:displayname="my theme" chrome:accesskey="n" chrome:author="" chrome:authorurl="" chrome:description="" chrome:name="my_theme" chrome:image="preview.png"> <chrome:packages> <rdf:seq about="urn:mozilla:skin:my_theme:packages"> <rdf:li resource="urn:mozilla:skin:my_them...
...e:browser"/> <rdf:li resource="urn:mozilla:skin:my_theme:communicator"/> <rdf:li resource="urn:mozilla:skin:my_theme:global"/> <rdf:li resource="urn:mozilla:skin:my_theme:mozapps"/> <rdf:li resource="urn:mozilla:skin:my_theme:help"/> </rdf:seq> </chrome:packages> </rdf:description> <!--
version information.
... state that we work only with major
version 1 of this package.
... --> <rdf:description chrome:skin
version="1.5" about="urn:mozilla:skin:my_theme:browser"/> <rdf:description chrome:skin
version="1.5" about="urn:mozilla:skin:my_theme:communicator"/> <rdf:description chrome:skin
version="1.5" about="urn:mozilla:skin:my_theme:global"/> <rdf:description chrome:skin
version="1.5" about="urn:mozilla:skin:my_theme:mozapps"/> <rdf:description chrome:skin
version="1.5" about="urn:mozilla:skin:my_theme:help"/> </rdf:rdf> ...
Theme changes in Firefox 2 - Archive of obsolete content
browser/feeds/feedicon16.png new file; the 16x16 pixel
version of the rss feed icon.
... browser/safebrowsing/warning16x16.png new file; this is the 16x16 pixel
version of the warning icon displayed in the url bar when the safe browsing warning window is displayed.
...in the default theme, these look something like this: the top row contains dimmed
versions of the icons below them.
...it skins the firefox about box, and needs to provide at least the following styles: #aboutlogocontainer #aboutpagecontainer #
version the default theme also skins the following styles: body, html, img, ul, and ul > li.
Using workers in extensions - Archive of obsolete content
how this differs from previous
versions this
version of the stock ticker extension moves the xmlhttprequest call that fetches updated stock information into a worker thread, which then passes that information back to the main body of the extension's code to update the display in the status bar.
... then it sets the worker's onmessage event handler to a function which looks at the event passed into it, and does one of two things: if there is a data field on the event, the stock symbol being tracked is set to the upper case
version of that value.
... the refreshinformation() method is fairly similar to the previous
versions, with two notable exceptions: if the ticker symbol has not been set yet, an exception is thrown (lines 4-6).
...this code is essentially identical to what's done in the previous
version, except that it's done in response to an event instead of within the refreshinformation() method.
New in JavaScript 1.7 - Archive of obsolete content
this
version was included in firefox 2 (october 2006).
...in html or xul code, use: <script type="application/javascript;
version=1.7"></script> when using the javascript shell, you need to set the
version you wish to use using the -
version 170 switch on the command line or using the
version() function:
version(170); the features that require the use of the new keywords "yield" and "let" require you to specify
version 1.7 because existing code might use those keywords as variable or function names.
... the features that do not introduce new keywords (destructuring assignment and array comprehensions) can be used without specifying the javascript
version.
...in more recent firefox
versions, the implementation is updated to work with semantics as specified in ecmascript edition 6.
Building Mozilla XForms - Archive of obsolete content
the following table gives you an overview of which
version you want to build: firefox
version gecko/toolkit
version source code notes status firefox 2.0 gecko 1.8.1 cvs, branch mozilla_1_8_branch not developed any more last release: 0.8.5ff2 firefox 3.0 gecko 1.9.0 cvs, branch head not developed any more last release: 0.8.5ff3 firefox 3.5 gecko 1.9.1 xforms/schema-validation code does not build with firefox 3.5 any more not supported firef...
...the built xpi file will only install on a nightly snapshot from the same day or your self-built firefox
version.
... if you are sure that older or newer firefox
versions are compatible with your extension, you can unzip the xpi file (it's a regular zip file), edit the install.rdf and change the min
version and max
version entries.
... the following scheme usually works (replace {gecko
version} with the used gecko/toolkit
version): <em:min
version>{gecko
version}.0</em:min
version> <em:max
version>{gecko
version}.*</em:max
version> for example, for the firefox 3.5
version of the extension, it might look like that: <em:min
version>1.9.1.0</em:min
version> <em:max
version>1.9.1.*</em:max
version> then zip the files again (or use an editor like vim that can edit files inside a zip archive).
Implementing controls using the Gamepad API - Game development
opera supports the api in
version 22+ (not surprising given that they now use chrome's blink engine.) and microsoft implemented support for the api in edge recently, which means four main browsers now supporting the gamepad api.
... demo the full
version of the hungry fridge game was built first, and then to showcase the gamepad api in action and show the javascript source code, a simple demo was created.
... the code explained below is from the full
version of the hungry fridge game, but it's almost identical to the one from the demo — the only difference is that the full
version uses the turbo variable to decide whether or not the game will be launched using super turbo mode.
...you can play the full
version of the hungry fridge game directly in your browser, install it from the firefox marketplace or check the source code of the demo along with all the other resources on the gamepad api content kit.
How do I use GitHub Pages? - Learn web development
it allows you to upload code repositories for storage in the git
version control system.
... publishing content github is a very important and useful community to get involved in, and git/github is a very popular
version control system — most tech companies now use it in their workflow.
...this is the underlying
version control system software that github works on top of.
... go to the github pages section again, and you should see a line of the form "your site is ready to be published at https://xxxxxx." if you click on this url, you should go to a live
version of your example, provided the home page is called index.html — it goes to this entry point by default.
Advanced form styling - Learn web development
newer implementations are more consistent in behavior; interestingly enough, both chromium-based browsers (chrome, opera, edge), safari, and firefox all support the -webkit- prefixed
version (-webkit-appearance).
... firefox settled on this because web developers mostly seemed to be using the -webkit- prefixed
version, so it was better for compatibility.
... note: while internet explorer doesn't support any
version of appearance, the input[type=checkbox]::-ms-check enables the targeting of checkboxes in ie only.
...this is a simplified
version of the example found on the <input type="file"> reference page.
Tips for authoring fast-loading HTML pages - Learn web development
other tools can "compress" javascript by reformatting the source or by obfuscating the source and replacing long identifiers with shorter
versions.
...cdns store cached
versions of your website and serve them to visitors via the network node closest to the user, thereby reducing latency.
...do not require your content to appear pixel-perfect in all browsers, especially not in down-
version browsers.
...this can include recent
versions of firefox, internet explorer, google chrome, opera, and safari.
Mozilla splash page - Learn web development
the following subsections detail what you need to do: preparing images using your favourite image editor, create 400px wide and 120px wide
versions of: firefox_logo-only_rgb.png firefox-addons.jpg mozilla-dinosaur-head.png call them something sensible, e.g.
... next, create a 1200px wide landscape
version of red-panda.jpg, and a 600px wide portrait
version that shows the panda in more of a close up shot.
... adding a logo to the header inside the <header> element, add an <img> element that will embed the small
version of the firefox logo in the header.
... in each case (except one — which one is inherently responsive?) we want the browser to serve the 120px wide
version when the viewport width is 500px wide or less, or the 400px wide
version otherwise.
Responsive images - Learn web development
an improvement would be to display a cropped
version of the image which displays the important details of the image when the site is viewed on a narrow screen.
... note: the new features discussed in this article — srcset/sizes/<picture> — are all supported in release
versions of modern desktop and mobile browsers (including microsoft's edge browser, although not internet explorer.) how do you create responsive images?
...the 800px picture is 128kb on disk, whereas the 480px
version is only 63kb — a saving of 65kb.
...create a web-sized
version of it using a graphics editor, then crop it to show a smaller part that zooms in on the detail, and create a second image (about 480px wide is good for this).
Choosing the right approach - Learn web development
full support 0.12promise() constructorchrome full support 32edge full support 12firefox full support 29notes full support 29notes notes constructor requires a new operator since
version 37.ie no support noopera full support 19safari full support 8notes full support 8notes notes constructor requires a new operator since
version 10.webview android full support ...
... 4.4.3chrome android full support 32firefox android full support 29notes full support 29notes notes constructor requires a new operator since
version 37.opera android full support 19safari ios full support 8notes full support 8notes notes constructor requires a new operator since
version 10.samsung internet android full support 2.0nodejs full support 0.12notes full support 0.12notes notes constr...
...uctor requires a new operator since
version 4.all()chrome full support 32edge full support 12firefox full support 29ie no support noopera full support 19safari full support 8webview android full support 4.4.3chrome android full support 32firefox android full support 29opera android full support 19safari ios full support ...
... 42safari ios full support 10.3samsung internet android full support 6.0nodejs full support 7.6.0 full support 7.6.0 full support 7.0.0disabled disabled from
version 7.0.0: this feature is behind the --harmony runtime flag.legend full support full support no support no supportuser must explicitly enable this feature.user must explicitly enable this feature.
Drawing graphics - Learn web development
the simplest
version takes three parameters — a reference to the image you want to render, and the x and y coordinates of the image's top left corner.
...we can do both with the more complex
version of drawimage().
... ctx.fillrect(-(width/2), -(height/2), width, height); next, we'll draw our image using drawimage — the 9-parameter
version.
... function draw() { if(pressed) { ctx.fillstyle = colorpicker.value; ctx.beginpath(); ctx.arc(curx, cury-85, sizepicker.value, degtorad(0), degtorad(360), false); ctx.fill(); } requestanimationframe(draw); } draw(); note: the <input> range and color types are supported fairly well across browsers, with the exception of internet explorer
versions less than 10; also safari doesn't yet support color.
Basic math in JavaScript — numbers and operators - Learn web development
there is a way to solve this problem — passing the string value into the number() constructor to return a number
version of the same value.
...the former
versions test whether the values are the same but not whether the values' datatypes are the same.
... the latter, strict
versions test the equality of both the values and their datatypes.
... the strict
versions tend to result in fewer errors, so we recommend you use them.
Advanced Svelte: Reactivity, lifecycle, accessibility - Learn web development
repl to code along with us using the repl, start at https://svelte.dev/repl/76cc90c43a37452e8c7f70521f88b698?
version=3.23.2 working on the moreactions component now we'll tackle the check all and remove completed buttons.
... another solution is to assign a new array to todos containing a copy of all the todos with the completed property updated accordingly, like this: const checkalltodos = (completed) => { todos = todos.map(t => { // shorter
version: todos = todos.map(t => ({...t, completed})) return {...t, completed: completed} }) } in this case we are using the map() method, which returns a new array with the results of executing the provided function for each item.
... update the contents of todosstatus.svelte like so: <script> export let todos $: totaltodos = todos.length $: completedtodos = todos.filter(todo => todo.completed).length let headingel export function focus() { // shorter
version: export const focus = () => headingel.focus() headingel.focus() } </script> <h2 id="list-heading" bind:this={headingel} tabindex="-1">{completedtodos} out of {totaltodos} items completed</h2> note that we've added a tabindex attribute to the <h2> to allow the element to receive focus programmatically.
... repl to see the current state of the code in a repl, visit: https://svelte.dev/repl/d1fa84a5a4494366b179c87395940039?
version=3.23.2 summary in this article we have finished adding all the required functionality to our app, plus we've taken care of a number of accessibility and usability issues.
Implementing feature detection - Learn web development
we will add the html5 shiv to our example too so that the html5 semantic elements will style properly in older
versions of ie.
... download the latest
version (see manual installation), unzip the zip file, copy the html5shiv-printshiv.min.js and html5shiv.min.js files into your example directory, and link to one of the files by putting the following under your <title> element: <script src="html5shiv.min.js"></script> have a look at your example css files — you'll see that basic-styling.css handles all the styling that we want to give to every browser, whereas the other two css files contain the css we want to selectively apply to browser depending on their support levels.
... note: if you have trouble getting this to work, you can compare it to our css-feature-detect-finished.html code (see also the live
version).
...the problem here is browser support — @supports is not supported at all in ie, and only supported in very recent
versions of safari/ios webkit (9+/9.2+), whereas the javascript
version should work in much older browsers (probably back to ie8 or 9, although older
versions of ie will have additional problems, such as not supporting document.queryselector, and having a messed up box model).
Application cache implementation overview
it synchronously returns an nsiapplicationcache object representing the most recent cache
version from the most recent cache group containing the entry under the url or a matching namespace.
...this new cache
version is now pending to be activated after all following long and complicated download process passes.
...all files downloaded are deleted and the new cache
version is discarded.) an md5 hash is then calculated from the manifest content we download from the server to be compared to existing md5 (in case of an “update”).
...if so, its marked as valid in the new cache
version and processnexturi() is called.
Simple Sunbird build
you can build a bleeding-edge, development
version of sunbird using the commands below.
...(for some mac os x
versions, you will find it in a directory called "optional installs".) install macports.
...see windows sdk
versions for a quick guide.
...see this section for information on how to easily integrate lightning into a nightly
version of thunderbird.
Developer guide
managing multiple profiles when working with prerelease
versions of firefox, it's often helpful to have multiple firefox profiles, such as one for each channel, or for different kinds of testing.
... customizing firefox information about creating customized
versions of firefox.
... task-graph generation what controls the jobs that run on a push to
version control?
... obsolete build caveats and tips a place to put build tips which are no longer relevant to building the latest
version of the code from main but are relevant when building old codebases.
HTMLIFrameElement.getMuted()
syntax there are two
versions of this method, a callback
version: var request = instanceofhtmliframeelement.getmuted(); and a promise
version: instanceofhtmliframeelement.getmuted().then(function(muted) { ...
... }); returns callback
version: a domrequest that represents the get muted request.
... promise
version: a promise that resolves with the muted value — a boolean where true means muted, and false means unmuted.
... example callback
version: var browser = document.queryselector('iframe'); var request = browser.getmuted(); request.onsuccess = function() { if(request.result) { console.log('the browser is muted.'); } else { console.log('the browser is unmuted.'); } } promise
version: var browser = document.queryselector('iframe'); browser.getmuted().then(function(muted) { if(muted) { console.log('the browser is muted.'); } else { console.log('the browser is unmuted.'); } }); specification not part of any specification.
HTMLIFrameElement.getVolume()
syntax there are two
versions of this method, a callback
version: var request = instanceofhtmliframeelement.getvolume(); and a promise
version: instanceofhtmliframeelement.getvolume().then(function(volume) { ...
... }); returns callback
version: a domrequest that represents the get volume request.
... promise
version: a promise that resolves with the volume value — a floating point number between 0 and 1.
... example callback
version: var browser = document.queryselector('iframe'); var request = browser.getvolume(); request.onsuccess = function() { console.log('the current browser volume is ' + request.result); } promise
version: var browser = document.queryselector('iframe'); browser.getvolume().then(function(volume) { console.log('the current browser volume is ' + volume); }); specification not part of any specification.
Internationalized Domain Names (IDN) Support in Mozilla Browsers
con
version of half-width kana characters in japanese into full-width ones (normalization), eliminate prohibited characters (e.g.
...some country will complete the con
version quickly, e.g.
...if you find idn test sites under the .com and .net top domains, and if you cannot successfully access these sites, you can use the following workaround until the con
version to punycode is completed for these top domains: using netscape 7.1 or mozilla 1.4: type about:config into the location/url bar.
...non-ascii names are not always correctly displayed in the location bar due to the fact that ace to unicode con
version is not implemented yet.
OS.File for the main thread
let decoder = new textdecoder(); // this decoder can be reused for several reads let promise = os.file.read("file.txt"); // read the complete file as an array promise = promise.then( function onsuccess(array) { return decoder.decode(array); // convert this array to a text } ); this example requires firefox 18 or a more recent
version.
... these examples require firefox 19 or a more recent
version.
... let promise = os.file.copy("oldname.txt", "newname.txt"); this example requires firefox 16 or a more recent
version.
... firefox 25 note tmppath is required in firefox 24 or lower
version, but optional in firefox 25 or higher
version nooverwrite if specified and true, and if path already exists, this function will throw an error without overwriting path.
Sqlite.jsm
getschema
version() the user-set
version associated with the schema for the current database.
... if no schema
version has been set, this will return the string "0".
... setschema
version(value) sets value as the new
version associated with the schema for the current database.
... this is a wrapper around the pragma user_
version statement.
Bootstrapping a new locale
in mozilla, we use the the mercurial
version control system (hg) to help manage our localizations.
... installing mercurial depending on your operating system, you will need to install the correct
version of hg on your machine.
... (you should "cd" to the directory before beginning.) in the terminal, type the following command: $ hg clone http://hg.mozilla.org/releases/mozilla-x.x.x/ where "x.x.x" is the existing release branch
version.
... the "-cd" part is only necessary to differentiate between
versions of a language that are subtly different from country to country, such as in "en-us" and "en-gb" for united states english and british english.
Localization prerequisites
perl 5.6 or higher older perl
versions may work if you upgrade file::spec to
version 0.8 gnu make 3.79.1 or higher.
...let’s try our entry points: $ hg --
version mercurial distributed scm (
version 1.3.1) copyright (c) 2005-2009 matt mackall <mpm@selenic.com> and others this is free software; see the source for copying conditions.
... $ make –
version gnu make 3.81.90 … make works, too.
... don’t bother the
version string here, as long as you’re 3.79.1 or better.
Fonts for Mozilla 2.0's MathML engine
for the latest
version see, this page.
... on mac os x lion (10.7) and higher
versions, stix fonts are already installed and can be used for mathml.
...for example asana math is available in truetype format and there is an unofficial truetype con
version for stix fonts.
... reset old preferences if users have previously changed the "font.mathfont-family" preference for a previous
version of mozilla, then it is best to reset this to the default value.
Mozilla Web Developer FAQ
in earlier
versions the doctype declarations that now activate the almost standards mode activated the standards mode.
...(there is partial undetectable support for document.all, though, in newer
versions of mozilla.
... in older
versions of mozilla as well as in old mozilla-based products, there is no pseudo-dtd catalog and the use of externally defined character entities (other than the five pre-defined ones) leads to an xml parsing error.
... in
versions prior to gecko 1.9/firefox 3, the document is not loaded and rendered incrementally.
Scroll-linked effects
below are a couple of examples of effects that would not work well with asynchronous scrolling, along with equivalent
versions that would work well: example 1: sticky positioning here is an implementation of a sticky-positioning effect, where the "toolbar" div will stick to the top of the screen as you scroll down.
...one way to implement this without the scroll event listener is to use the css property designed for this purpose: <body style="height: 5000px"> <div id="toolbar" style="position: sticky; top: 0px; margin-top: 100px; width: 100px; height: 20px; background-color: green"></div> </body> this
version works well with asynchronous scrolling because position of the "toolbar" div is updated by the browser as the user scrolls.
... <body style="height: 5000px"> <style> body, /* blink currently has bug that requires declaration on `body` */ html { scroll-snap-type: y proximity; } .snaptarget { scroll-snap-align: start; position: relative; top: 200px; height: 200px; background-color: green; } </style> <div class="snaptarget"></div> </body> this
version can work smoothly in the browser even if there is slow-running javascript on the browser's main thread.
...in all cases, however, firefox will display a warning to the developer console (starting in
version 46) if it detects the presence of a scroll-linked effect on a page.
NSPR release procedure
release checklist change the nspr
version in mozilla/nsprpub/pr/include/prinit.h.
... change the nspr
version in mozilla/nsprpub/{configure.in,configure}.
... change the nspr
version in mozilla/nsprpub/pr/tests/vercheck.c.
... change the nspr
version in mozilla/nsprpub/admin/repackage.sh.
NSS 3.12.4 release notes
major changes in nss 3.12.4 nss 3.12.4 is the
version that we submitted to nist for fips 140-2 validation.
... new functions in the nss shared library: pk11_isinternalkeyslot (see pk11pub.h) secmod_opennewslot (see pk11pub.h) new error codes (see secerr.h): sec_error_bad_info_access_method sec_error_crl_import_failed new oids (see secoidt.h) sec_oid_x509_any_policy the nssckbi pkcs #11 module's
version changed to 1.75.
...bug 505858: nss_registershutdown can return without unlocking nssshutdownlist.lock bug 507041: invalid build options for vc6 bug 507228: coreconf.dep doesn't need to contain the nss
version number bug 507422: crash [[@ port_freearena - lg_mksecretkeyrep] when port_newarena fails bug 507482: nss 3.12.3 (and later) doesn't build on aix 5.1 bug 507937: pwdecrypt program problems bug 508259: pk11mode crashed on linux2.4 bug 508467: libpkix ocsp checker should use date argument to obtain the time for cert validity verification bug 510367: fix the utf8 characters in the nickname string fo...
... furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.14.1 release notes
bug 802429 - in previous
versions of nss, the "cipherorder" slot configuration flag was not respected, causing the most recently added slot that supported the requested pkcs#11 mechanism to be used instead.
...in previous
versions of nss, these algorithms would be handled by the most recently added pkcs#11 token that supported them.
... bug 611451 - when built with the current
version of apple xcode on mac os x, the nss shared libraries will now only export the public nss functions.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.22 release notes
new functions in pk11pub.h pk11_signwithmechanism - this function is an extended
version pk11_sign().
... pk11_verifywithmechanism - this function is an extended
version of pk11_verify().
... new macros in nss.h nss_rsa_min_key_size nss_dh_min_key_size nss_dsa_min_key_size nss_tls_
version_min_policy nss_tls_
version_max_policy nss_dtls_
version_min_policy nss_dtls_
version_max_policy in pkcs11t.h ckp_pkcs5_pbkd2_hmac_gostr3411 - prf based on hmac with gostr3411 for pbkdf (not supported) ckp_pkcs5_pbkd2_hmac_sha224 - prf based on hmac with sha-224 for pbkdf ckp_pkcs5_pbkd2_hmac_sha256 - prf based on hmac with sha-256 for pbkdf ckp_pkcs5_pbkd2_hmac_sha384 ...
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.28.3 release notes
bugs fixed in nss 3.28.3 nss
version 3.28, 3.28.1 and 3.28.2 contained changes that were in violation with the nss compatibility promise.
... compatibility nss 3.28.3 shared libraries are backward compatible with most older nss 3.x shared libraries, but depending on your application, may be incompatible, if you application has been compiled against header files of
versions 3.28, 3.28.1, or 3.28.2.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
...you should avoid using nss 3.29, and rather use nss 3.29.1 or a newer
version.
NSS 3.28.5 release notes
it backports the changes that were initially released in nss
version 3.30.2.
...fc:84:b3:8a:d6:af:00:90:35:dd:94:57 trust flags: email cn = tubitak kamu sm ssl kok sertifikasi - surum 1 sha-256 fingerprint: 46:ed:c3:68:90:46:d5:3a:45:3f:b3:10:4a:b8:0d:ca:ec:65:8b:26:60:ea:16:29:dd:7e:86:79:90:64:87:16 trust flags: websites technically constrained to: gov.tr, k12.tr, pol.tr, mil.tr, tsk.tr, kep.tr, bel.tr, edu.tr, org.tr the
version number of the updated root ca list has been set to 2.14.
... (the
version numbers 2.12 and 2.13 for the root ca list have been skipped.) bugs fixed in nss 3.28.5 bug 1350859 - march 2017 batch of root ca changes.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.37 release notes
nss now requires the sqlite apis of
version 3.5.0 or newer.
... starting with nss
version 3.31, an alternative implementation for rng seeding on the linux/unix platform was available (bug 1346735), which performed seeding exclusively based on /dev/urandom.
... the ca certificates list was updated to
version 2.24.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.48 release notes
notable changes in nss 3.48 tls 1.3 is the default maximum tls
version.
...because using an iteration count higher than 1 with the legacy dbm (key3.db) storage creates files that are incompatible with previous
versions of nss, applications that wish to enable it for key3.db are required to set environment variable nss_allow_legacy_dbm_iteration_count=1.
... bugs fixed in nss 3.48 bug 1600775 - require nspr 4.24 for nss 3.48 bug 1593401 - fix race condition in self-encrypt functions bug 1599545 - fix assertion and add test for early key update bug 1597799 - fix a crash in nssckfwobject_getattributesize bug 1591178 - add entrust root certification authority - g4 certificate to nss bug 1590001 - prevent negotiation of
versions lower than 1.3 after helloretryrequest bug 1596450 - added a simplified and unified mac implementation for hmac and cmac behind pkcs#11 bug 1522203 - remove an old pentium pro performance workaround bug 1592557 - fix prng known-answer-test scripts bug 1586176 - encryptupdate should use maxout not block size (cve-2019-11745) bug 1593141 - add `notbefore` or similar "beginning-of-validity-per...
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
Build instructions
use_debug_rtl: if set to 1, on windows, causes build with debug
version of the c run-time library.
...(the free edition works, and other
versions like visual studio 2008 and visual studio 2012 may also work.) use start-shell-msvc2010.bat from mozillabuild to get a bash shell with the path already configured, and execute these instructions from within that bash shell.
... build instructions for recent
versions (mercurial) clone the nspr and nss repositories.
... build instructions for older
versions (cvs) set the environment variable cvsroot to :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot cvs login (if you haven't before).
FC_GetInfo
on return, the ck_info structure that pinfo points to has the following information: cryptoki
version: pkcs #11 interface
version number implemented by the pkcs #11 library.
... the
version is 2.20 (major=0x02, minor=0x14).
... library
version: pkcs #11 library
version number, for example, 3.11 (major=0x03, minor=0x0b).
... /* invoke fc_getinfo as pfunctionlist->c_getinfo */ crv = pfunctionlist->c_getinfo(&info); assert(crv == ckr_ok); printf("general information about the pkcs #11 library:\n"); printf(" pkcs #11
version: %d.%d\n", (int)info.cryptoki
version.major, (int)info.cryptoki
version.minor); printf(" manufacturer id: %.32s\n", info.manufacturerid); printf(" flags: 0x%08lx\n", info.flags); printf(" library description: %.32s\n", info.librarydescription); printf(" library
version: %d.%d\n", (int)info.library
version.major, (int)info.library
version.minor); printf("\n"); see also nsc_geti...
certutil
for example: $ certutil -t -d sql:/home/my/sharednssdb -h nethsm -0 secret upgrading or merging the security databases many networks or applications may be using older berkeleydb
versions of the certificate database (cert8.db).
... databases can be upgraded to the new sqlite
version of the database (cert9.db) using the --upgrade-merge command option or existing databases can be merged with the new cert9.db databases using the ---merge command.
... the last
versions of these legacy databases are: o cert8.db for certificates o key3.db for keys o secmod.db for pkcs #11 module information berkeleydb has performance limitations, though, which prevent it from being easily used by multiple applications simultaneously.
...licensed under the gnu public license
version 2.
Rhino optimization
arguments are passed as object/number pairs to reduce con
version overhead.
... future
versions may allocate more aggressive optimizations to higher optimization levels.
... for compatibility with future
versions, use level 1.
... for maximal optimization, use level 9, but retest your application when upgrading to new
versions.
JSAPI User Guide
to get the latest javascript language features, applications may use js_set
version.
...the "uc"
versions of these calls provide support for unicode-encoded scripts.
... the jsapi provides jschar-based
versions of many api functions that operate on strings, object properties, and javascript code.
... js_compilefunction js_compileucfunction js_compilefunctionforprincipals js_compileucfunctionforprincipals js_evaluatescript js_evaluateucscript js_evaluatescriptforprincipals js_evaluateucscriptforprincipals jschar-based functions work exactly like their char-based namesakes, except that where traditional functions take a char * argument, the unicode
versions take a jschar * argument, usually with a separate argument specifying the length of the string in jschars.
JS_EvaluateScriptForPrincipals
(jscontext *cx, jsobject *obj, jsprincipals *principals, const char *src, unsigned int length, const char *filename, unsigned int lineno, jsval *rval); jsbool js_evaluatescriptucforprincipals(jscontext *cx, jsobject *obj, jsprincipals *principals, const jschar *src, unsigned int length, const char *filename, unsigned int lineno, jsval *rval); jsbool js_evaluatescriptforprincipals
version(jscontext *cx, jsobject *obj, jsprincipals *principals, const char *bytes, unsigned int length, const char *filename, unsigned int lineno, jsval *rval, js
version version); jsbool js_evaluateucscriptforprincipals
version(jscontext *cx, jsobject *obj, jsprincipals *principals, const jschar *chars, unsigned int length, const char *filename, unsigned int lineno, jsval *rval, js
version...
...
version); name type description cx jscontext * the context in which to run the script.
...
version js
version javascript
version for the script.
...js_evaluateucscriptforprincipals is the unicode
version of the function.
JS_ValueToFunction
syntax jsfunction * js_valuetofunction(jscontext *cx, js::handlevalue v); jsfunction * js_valuetoconstructor(jscontext *cx, js::handlevalue v); name type description cx jscontext * the context in which to perform the con
version.
... this con
version is dangerous and almost entirely useless, because the resulting jsfunction is not a real function object and therefore cannot be safely passed to any other jsapi function.
...(implementation note: the actual con
version is performed by the object itself.
...if con
version fails with an error or exception, js_valuetofunction returns null.
SpiderMonkey 31
if you are compiling with microsoft's visual studio, note that the minimum supported
version is msvc10/2010: msvc8/9 support has been dropped.
... on all other platforms the jit is simply disabled; javascript code runs in an interpreter, as in previous
versions.
... the following features in earlier
versions of spidermonkey have been dropped.
... js_threadsafe is going away, with future
versions supporting only thread-safe builds a new debugging api is on the way to replace jsd.
Setting up an update server
beta builds are those with a b in the
version string.
... after locating the desired
version, the mars will be in the update directory.
...then run these commands, substituting <obj dir>, <mar output path>, <
version> and <channel> appropriately: ./mach package touch "<obj dir>/dist/firefox/precomplete" mar="<obj dir>/dist/host/bin/mar.exe" moz_product_
version=<
version> mar_channel_id=<channel> ./tools/update-packaging/make_full_update.sh <mar output path> "<obj dir>/dist/firefox" for a local build, <channel> can be default, and <
version> can be the value from browser/config/
version.txt (or something arbit...
... <?xml
version="1.0" encoding="utf-8"?> <updates> <update type="minor" display
version="2000.0a1" app
version="2000.0a1" platform
version="2000.0a1" buildid="21181002100236"> <patch type="complete" url="http://127.0.0.1:8000/<mar name>" hashfunction="sha512" hashvalue="<hash>" size="<size>"/> </update> </updates> if you've downloaded the mar you're using, you'll find the sha512 value in a file cal...
Building the WebLock UI
the "shell" for the xul file, then, looks like this: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <dialog id="weblock_ui" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" title="web lock manager" persist="screenx screeny" screenx="24" screeny="24"> </dialog> note that this part of the xul file also contains a stylesheet declaration, which imports css rules and appli...
... weblock.xul <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <dialog id="weblock_mgg" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" title="web lock manager" style="width: 30em;" persist="screenx screeny" screenx="24" screeny="24"> <script src="chrome://weblock/content/weblock.js"/> <hbox> <separator orient="vertical" c...
...here is that xul file in its entirety: the weblock overlay <?xml
version="1.0"?> <?xml-stylesheet href="chrome://navigator/content/weblock.css" type="text/css"?> <overlay id="weblockoverlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript" src="chrome://weblock/content/weblock.js"/> <statusbar id="status-bar"> <statusbarpanel class="statusbarpanel-iconic" id="...
...distribution of substantively modified
versions of this document is prohibited without the explicit permission of the copyright holder.
nsIEditorIMESupport
obsolete since gecko 1.9.1 void getrecon
versionstring(in nsrecon
versioneventreplyptr areply); native code only!
...void getquerycaretrect( in nsquerycaretrecteventreplyptr areply ); parameters areply native code only!getrecon
versionstring obsolete since gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0)this feature is obsolete.
...get the recon
version string.
... void getrecon
versionstring( in nsrecon
versioneventreplyptr areply ); parameters areply notifyimeonblur() obsolete since gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0)this feature is obsolete.
nsIPropertyBag
goodies obtained from window.navigator are: appcodename:"mozilla" appname:"netscape" app
version:"5.0 (windows)" battery:batterymanager buildid:"20140529161749" cookieenabled:true donottrack:"yes" geolocation:geolocation language:"en-us" mimetypes:mimetypearray mozalarms:null mozapps:xpcwrappednative_nohelper mozcameras:cameramanager mozconnection:mozconnection mozcontacts:contactmanager mozid:null mozkeyboard:xpcwrappednative_nohelper mozpay:null mozpermissionsettings:null mozphonenumberser...
...vice:phonenumberservice mozpower:mozpowermanager moztcpsocket:null online:true oscpu:"windows nt 5.1" platform:"win32" plugins:pluginarray product:"gecko" productsub:"20100101" useragent:"mozilla/5.0 (windows nt 5.1; rv:30.0) gecko/20100101 firefox/30.0" vendor:"" vendorsub:"" __proto__:navigatorprototype from here we can easily see the operating system
version.
...to do this use nsipropertybag: services.sysinfo.getproperty("
version"); //output 5.1 services.sysinfo.getproperty("name"); //output windows_nt services.sysinfo.getproperty("arch"); //output x86 services.sysinfo.getproperty("haswindowstouchinterface"); //outputs false or true if windows touch is there consult the uxp repo (//github.com/realityripple/uxp/blob/master/xpcom/base/nssysteminfo.cpp) for the properties supported.
...on android there is
version and kernel_
version).
Using the Gecko SDK
(more information on xpcom is available at the xpcom project page.) the intent of this guide is to help you build your components "the right way" such that they will remain compatible with future
versions of mozilla.
...an xpcom component will be compatible with future
versions of mozilla if it only makes use of frozen gecko apis.
...(ports of this guide are welcome.) a "frozen" interface or function is guaranteed to be supported by future
versions of same major
version of the platform.
... linking (link line,
version script to only expose nsgetmodule, etc.) ...
Index
18 cookies in thunderbird cookies, guide, thunderbird in
versions of thunderbird prior to 3 the cookie policy was very restrictive (to rss only).
...mozilla's site also provides users with easier installation and will automatically make new
versions available to users of your existing
versions when you upload them.
...by example, to modify the mail subject : 104 get thunderbird
version thunderbird on thunderbird
version 3.0b3pre and later, you can use the following snippet to get the thunderbird
version.
... (
version 3.0b3pre was the first build to include steel.) 105 modify folder pane display missing, thunderbird see https://addons.mozilla.org/thu...er-categories/ for an example.
Theme Packaging
install.rdf your install.rdf manifest will look something like this: <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:type>4</em:type> more properties </description> </rdf> required install.rdf properties your install.rdf file must have the following properties.
... see the install.rdf reference for more information: em:id em:
version em:type em:targetapplication em:name em:internalname optional install.rdf properties em:description em:creator em:contributor em:homepageurl em:updateurl note that if your theme will be made available on the https://addons.mozilla.org website, it may not include an updateurl.
... sample install.rdf file <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>{18b64b56-d42f-428d-a88c-baa413bc413f}</em:id> <em:
version>1.0</em:
version> <em:type>4</em:type> <!-- target application this extension can install into, with minimum and maximum supported
versions.
... --> <em:targetapplication> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:min
version>0.8</em:min
version> <em:max
version>0.9</em:max
version> </description> </em:targetapplication> <!-- front end metadata --> <em:name>new theme 1</em:name> <em:description>a test theme for thunderbird</em:description> <em:creator>ben goodger</em:creator> <em:contributor>john doe</em:contributor> <em:homepageurl>http://www.bengoodger.com/</em:homepageurl> <!-- front end integration hooks (used by theme manager)--> <em:internalname>newtheme1</em:internalname> </description> </rdf> the following are some common target application guids that you can use in your targetapplication properties: thunderbird {3550f703...
Standard OS Libraries
the most common, found on all windows os
version, is "winapi".
...attempting to install firefox on a a non-gtk+ based linux build such as kaosx, which is qt based (details on kaosx at the time of this writing: kdelibs
version 4.1.4.3, qt
version 4.8.6, 64bit) would install gtk+ libraries along with it in order to enable firefox to work on the qt system.
...gdk has
version 2 and 3, typically
version 2 is referred to as just gdk and
version 3 is referred to as gdk3.
...there are updates that happen to x11; at the time of this writing, the latest
version is 4.4.0.
Constants - Plugins
nperr_incompatible_
version_error 8
versions of plug-in and communicator do not match.
... plug-in
version constants constant value description np_
version_major 0 major
version number; changes with major code release number.
... np_
version_minor 22 minor
version number; changes with point release number.
...
version feature constants npvers constant:
version feature information value description npvers_has_streamoutput 8 streaming data.
Gecko Plugin API Reference - Plugins
play nesting rules for html elements using the appropriate attributes using the embed element for plug-in display using custom embed attributes plug-in references plug-in development overview writing plug-ins registering plug-ins ms windows unix mac os x drawing a plug-in instance handling memory sending and receiving streams working with urls getting
version and ui information displaying messages on the status line making plug-ins scriptable building plug-ins building, platforms, and compilers building carbonized plug-ins for mac os x type libraries installing plug-ins native installers xpi plug-ins installations plug-in installation and the windows registry initialization and destruction initialization insta...
... mode sending a stream creating a stream pushing data into the stream deleting the stream example of sending a stream urls getting urls getting the url and displaying the page posting urls posting data to an http server uploading files to an ftp server sending mail memory allocating and freeing memory mac os flushing memory (mac os only)
version, ui, and status information displaying a status line message getting agent information getting the current
version finding out if a feature exists reloading a plug-in plug-in side plug-in api this chapter describes methods in the plug-in api that are available from the plug-in object.
... npn_
version returns
version information for the plug-in api.
...property npn_setproperty npn_removeproperty npn_hasproperty npn_hasmethod npn_setexception npclass structures npanycallbackstruct npbyterange npembedprint npevent npfullprint npp np_port npprint npprintcallbackstruct nprect npregion npsaveddata npsetwindowcallbackstruct npstream npwindow constants error codes result codes plug-in
version constants
version feature constants external resources external projects and articles for plugin creation original document information copyright information: netscape communication ...
Network request details - Firefox Developer Tools
earlier
versions appeared similarly, but might not include some functionality.
...
version: the
version of http used.
...
version: the http
version used transferred: the amount of data transferred with the request the referrer policy, which governs which referrer information, sent in the referer header, should be included with requests.
... note: future
versions will also show this information when entries in the network monitor timeline graph are moused over (see bug 1580493).
Animating CSS properties - Firefox Developer Tools
there's also a video
version of this walkthrough: animating using margin leaving the "use margin" option set, start the animation, open the performance tool, and make a recording.
...it will look something like this: waterfall overview compared with the
version that uses margin, we're seeing a lot less green and a lot more pink, which could be either layout or style recalculation.
... frame rate compared with the
version that uses margin, this is looking pretty good.
...compared with the
version that uses margin, we're not spending any time time in layout or (more importantly in this case) in paint: in this case, using transform significantly improved the site's performance, and the performance tools were able to show how and why it did.
Fetch API - Web APIs
the following browsers shipped and outdated native fetch, and were updated in these
versions: firefox
version 61.0b13.
... safari
version 12.
... chrome
version 68.
... if you are targetting older
versions of these browsers, be sure to include credentials: 'same-origin' init option on all api requests that may be affected by cookies/user login state.
Using the Gamepad API - Web APIs
note that in older
versions of chrome navigator.getgamepads() is implemented with a webkit prefix.
... we attempt to detect and handle both the prefixed
version and the standard
version of the function for backwards compatibility.
... in current
versions of chrome (
version 34 as of this writing) the button values are stored as an array of double values, instead of gamepadbutton objects.
... this is fixed in development
versions.
HTMLSlotElement.name - Web APIs
ndroidopera for androidsafari on iossamsung internetname experimentalchrome full support 53edge full support 79firefox full support 63 full support 63 no support 59 — 63disabled disabled from
version 59 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
...— 59disabled disabled until
version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true) and the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
... support 10.1webview android full support 53chrome android full support 53firefox android full support 63 full support 63 no support 59 — 63disabled disabled from
version 59 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
...— 59disabled disabled until
version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true) and the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
IDBDatabase.createObjectStore() - Web APIs
this method can be called only within a
versionchange transaction.
... exceptions this method may raise a domexception with a domerror of one of the following types: exception description invalidstateerror occurs if the method was not called from a
versionchange transaction callback.
...has been deleted or removed.) in firefox previous to
version 41, an invalidstateerror was raised in this case as well, which was misleading; this has now been fixed (see bug 1176165.) constrainterror an object store with the given name (based on case-sensitive comparison) already exists in the connected database.
... example // let us open our database var request = window.indexeddb.open("todolist", 4); // this handler is called when a new
version of the database // is created, either when one has not been created before // or when a new
version number is submitted by calling // window.indexeddb.open().
IDBObjectStore.createIndex() - Web APIs
note that this method must be called only from a
versionchange transaction mode callback.
... invalidstateerror occurs if either: the method was not called from a
versionchange transaction mode callback, i.e.
...has been deleted or removed.) in firefox previous to
version 41, an invalidstateerror was raised in this case as well, which was misleading; this has now been fixed (see bug 1176165.) example in the following example you can see the idbopendbrequest.onupgradeneeded handler being used to update the database structure if a database with a higher
version number is loaded.
... db = request.result; // run the displaydata() function to populate the task list with // all the to-do list data already in the idb displaydata(); }; // this handler fires when a new database is created and indicates // either that one has not been created before, or a new
version // was submitted with window.indexeddb.open().
IDBObjectStore - Web APIs
idbobjectstore.createindex() creates a new index during a
version upgrade, returning a new idbindex object in the connected database.
... idbobjectstore.deleteindex() destroys the specified index in the connected database, used during a
version upgrade.
... db = dbopenrequest.result; }; // this event handles the event whereby a new
version of // the database needs to be created either one has not // been created before, or a new
version number has been // submitted via the window.indexeddb.open line above dbopenrequest.onupgradeneeded = function(event) { var db = event.target.result; db.onerror = function(event) { note.innerhtml += '<li>error loading database.</li>'; }; // create an objectstore for this database va...
... 24 full support 24 no support 23 — 57prefixed prefixed implemented with the vendor prefix: webkitedge full support 12firefox full support 44disabled full support 44disabled disabled from
version 44: this feature is behind the dom.indexeddb.experimental preference.
IDBOpenDBRequest: blocked event - Web APIs
the blocked handler is executed when an open connection to a database is blocking a
versionchange transaction on the same database.
... bubbles no cancelable no interface idb
versionchangeevent event handler property onblocked examples using addeventlistener(): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore...
....createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); }; dbopenrequest.onsuccess = (event) => { // let's try to open the same database with a higher revision
version const req2 = indexeddb.open('todolist', 5); // in this case the onblocked handler will be executed req2.addeventlistener('blocked', () => { console.log('request was blocked'); }); }; using the onblocked property: // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', { keypath: 'taskt...
...('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); }; dbopenrequest.onsuccess = (event) => { // let's try to open the same database with a higher revision
version const req2 = indexeddb.open('todolist', 5); // in this case the onblocked handler will be executed req2.onblocked = () => { console.log('request was blocked'); }; }; ...
IDBOpenDBRequest.onblocked - Web APIs
this event is triggered when the upgradeneeded should be triggered because of a
version change but the database is still in use (that is, not closed) somewhere, even after the
versionchange event was sent.
... // this is used a lot below db = request.result; // run the displaydata() function to populate the task list with // all the to-do list data already in the idb displaydata(); }; // this event handles the event whereby a new
version of the // database needs to be created.
... either one has not been created // before, or a new
version number has been submitted via the // window.indexeddb.open line above //it is only implemented in recent browsers request.onupgradeneeded = function(event) { var db = event.target.result; db.onerror = function(event) { note.innerhtml += '<li>error loading database.</li>'; }; // create an objectstore for this database var objectstore = db.createobjectstore("todolist", { keypath: "tasktitle" }); ...
... }; request.onblocked = function() { console.log("your database
version can't be upgraded because the app is open somewhere else."); } specifications specification status comment indexed database api 2.0the definition of 'onblocked' in that specification.
IDBOpenDBRequest - Web APIs
blocked fired when an open connection to a database is blocking a
versionchange transaction on the same database.
... upgradeneeded fired when an attempt was made to open a database with a
version number higher than its current
version.
... example in the following example you can see the onupgradeneeded handler being used to update the database structure if a database with a higher
version number is loaded.
...this is used a lot below db = dbopenrequest.result; // run the displaydata() function to populate the task // listwith all the to-do list data already in the idb displaydata(); }; // this event handles the event whereby a new
version of // the database needs to be created either one has not // been created before, or a new
version number has been // submitted via the window.indexeddb.open line above // it is only implemented in recent browsers dbopenrequest.onupgradeneeded = function(event) { var db = this.result; db.onerror = function(event) { note.innerhtml += '<li>error loading database.</li>'; }; // create a...
NavigatorPlugins.plugins - Web APIs
examples the following example function returns the
version of the shockwave flash plugin.
... function getflash
version() { var flash = navigator.plugins.nameditem('shockwave flash'); if (typeof flash != 'object') { // flash is not present return undefined; } if(flash.
version){ return flash.
version; } else { //no
version property (e.g.
... var pluginslength = navigator.plugins.length; document.body.innerhtml = pluginslength + " plugin(s)<br>" + '<table id="plugintable"><thead>' +'<tr><th>name</th><th>filename</th><th>description</th><th>
version</th></tr>' +'</thead><tbody></tbody></table>'; var table = document.getelementbyid('plugintable'); for(var i = 0; i < pluginslength; i++) { let newrow = table.insertrow(); newrow.insertcell().textcontent = navigator.plugins[i].name; newrow.insertcell().textcontent = navigator.plugins[i].filename; newrow.insertcell().textcontent = navigator.plugins[i].description; newrow.insertcell().textcontent = navigator.plugins[i].ve...
...rsion?navigator.plugins[i].
version:""; } notes the plugin object exposes a small interface for getting information about the various plugins installed in your browser.
Node.isSupported() - Web APIs
syntax boolvalue = element.issupported(feature,
version) parameters feature is a domstring containing the name of the feature to test.
...
version is a domstring containing the
version number of the feature to test.
... in dom level 2,
version 1, this is the string 2.0.
... if the
version is not specified, supporting any
version of the feature will cause the method to return true.
PaymentAddress.toJSON() - Web APIs
desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internettojson()chrome full support 61disabled full support 61disabled disabled from
version 61: this feature is behind the #web-payments preference (needs to be set to enabled).
...requires the comma-delineated list in dom.payments.request.supportedregions to contain one or more of the supported 2-character iso locales, currently us and ca.disabled from
version 62: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... noopera no support nosafari full support yeswebview android no support nochrome android full support 61disabled full support 61disabled disabled from
version 61: this feature is behind the #web-payments preference (needs to be set to enabled).
...requires the comma-delineated list in dom.payments.request.supportedregions to contain one or more of the supported 2-character iso locales, currently us and ca.disabled from
version 62: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentResponse.complete() - Web APIs
note: in older
versions of the specification, an empty string, "", was used instead of unknown to indicate a completion without a known result state.
...opera for androidsafari on iossamsung internetcomplete()chrome full support 61edge full support 15firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... no support nosafari full support yeswebview android no support nochrome android full support 56 full support 56 no support 53 — 56disabled disabled from
version 53 until
version 56 (exclusive): this feature is behind the #web-payments preference (needs to be set to enabled).
... to change preferences in chrome, visit chrome://flags.firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PluginArray - Web APIs
note: own properties of pluginarray objects are no longer enumerable in the latest browser
versions.
... examples the following example function returns the
version of the shockwave flash plugin.
... var pluginslength = navigator.plugins.length; document.body.innerhtml = pluginslength + " plugin(s)<br>" + '<table id="plugintable"><thead>' +'<tr><th>name</th><th>filename</th><th>description</th><th>
version</th></tr>' +'</thead><tbody></tbody></table>'; var table = document.getelementbyid('plugintable'); for(var i = 0; i < pluginslength; i++) { let newrow = table.insertrow(); newrow.insertcell().textcontent = navigator.plugins[i].name; newrow.insertcell().textcontent = navigator.plugins[i].filename; newrow.insertcell().textcontent = navigator.plugins[i].description; newrow.insertcell().textcontent = navigator.plugins[i].
version?navigator.plugins[i].
version:""; } the following example displays information about the installed plugin(s).
... var pluginslength = navigator.plugins.length; document.write( pluginslength.tostring() + " plugin(s)<br>" + "name | filename | description<br>" ); for(var i = 0; i < pluginslength; i++) { document.write( navigator.plugins[i].name + " | " + navigator.plugins[i].filename + " | " + navigator.plugins[i].description + " | " + navigator.plugins[i].
version + "<br>" ); } specifications specification status comment html living standardthe definition of 'pluginarray' in that specification.
RTCPeerConnection.setLocalDescription() - Web APIs
type of the description parameter the description is of type rtcsessiondescriptioninit, which is a serialized
version of a rtcsessiondescription browser object.
... deprecated parameters in older code and documentation, you may see a callback-based
version of this function used.
...you should update any existing code to use the promise-based
version of setlocaldescription() instead.
... deprecated exceptions when using the deprecated callback-based
version of setlocaldescription(), the following exceptions may occur: invalidstateerror the connection's signalingstate is "closed", indicating that the connection is not currently open, so negotiation cannot take place.
Slottable: assignedSlot - Web APIs
era for androidsafari on iossamsung internetassignedslot experimentalchrome full support 53edge full support 79firefox full support 63 full support 63 no support 59 — 63disabled disabled from
version 59 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
...— 59disabled disabled until
version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true) and the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
... support 10.1webview android full support 53chrome android full support 53firefox android full support 63 full support 63 no support 59 — 63disabled disabled from
version 59 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
...— 59disabled disabled until
version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true) and the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
Improving compatibility using WebRTC adapter.js - Web APIs
what adapter.js does for each
version of each browser that supports webrtc, adapter.js implements the needed polyfills, establishes the non-prefixed names of apis, and applies any other changes needed to make the browser run code written to the webrtc specification.
... for example, on firefox
versions older than 38, the adapter adds the rtcpeerconnection.urls property; firefox doesn't natively support this property until firefox 38, while on chrome, the adapter adds support for the promise based api is added if it's not present.
... using adapter.js in order to use adapter.js, you need to include adapter.js on any page that uses webrtc apis: download a copy of the latest
version of adapter.js from github.
... keep in mind that even a good shim like this one doesn't mean you don't need to test your code on different browsers (and ideally different
versions of each browser).
Writing WebSocket servers - Web APIs
the client will send a pretty standard http request with headers that looks like this (the http
version must be 1.1 or greater, and the method must be get): get /chat http/1.1 host: example.com:8000 upgrade: websocket connection: upgrade sec-websocket-key: dghlihnhbxbszsbub25jzq== sec-websocket-
version: 13 the client can solicit extensions and/or subprotocols here; see miscellaneous for details.
...if the server doesn't understand that
version of websockets, it should send a sec-websocket-
version header back that contains the
version(s) it does understand.
... in the example above, it indicates
version 13 of the websocket protocol.
...in this
version of websockets, 0x3 to 0x7 and 0xb to 0xf have no meaning.
Using the Web Animations API - Web APIs
safari supports web animations in its technology preview
version and there is also a handy polyfill that tests for feature support and adds it where necessary.
... the css
version here’s a tumbling animation written in css showing alice falling down the rabbit hole that leads to wonderland (see the full code on codepen): notice that the background moves, alice spins, and her color changes at an offset from her spinning.
... bring the pieces together now it’s time to bring them both together with the element.animate() method: document.getelementbyid("alice").animate( alicetumbling, alicetiming ) and boom: the animation starts playing (see the finished
version on codepen).
... conclusion these are the basic features of the web animations api, most of which are already supported across the latest release
versions of firefox and chrome.
Window.customElements - Web APIs
r androidopera for androidsafari on iossamsung internetcustomelementschrome full support 54edge full support 79firefox full support 63 full support 63 no support 59 — 63disabled disabled from
version 59 until
version 63 (exclusive): this feature is behind the dom.webcomponents.customelements.enabled preference (needs to be set to true).
...— 59disabled disabled until
version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true) and the dom.webcomponents.customelements.enabled preference (needs to be set to true).
... support 10.1webview android full support 54chrome android full support 54firefox android full support 63 full support 63 no support 59 — 63disabled disabled from
version 59 until
version 63 (exclusive): this feature is behind the dom.webcomponents.customelements.enabled preference (needs to be set to true).
...— 59disabled disabled until
version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true) and the dom.webcomponents.customelements.enabled preference (needs to be set to true).
WindowOrWorkerGlobalScope.setInterval() - Web APIs
callback arguments as previously discussed, internet explorer
versions 9 and below do not support the passing of arguments to the callback function in either settimeout() or setinterval().
... for a more complex but still modular
version of it (daemon) see javascript daemons management.
... this more complex
version is nothing but a big and scalable collection of methods for the daemon constructor.
... minidaemon.js /*\ |*| |*| :: minidaemon :: |*| |*| revision #2 - september 26, 2014 |*| |*| /docs/web/api/window.setinterval |*| https://developer.mozilla.org/user:fusionchess |*| https://github.com/madmurphy/minidaemon.js |*| |*| this framework is released under the gnu lesser general public license,
version 3 or later.
WindowOrWorkerGlobalScope.setTimeout() - Web APIs
function() { vcallback.apply(null, aargs); } : vcallback, ndelay); }; }, 0, 'test'); }()) ie-only fix if you want a completely unobtrusive fix for every other mobile or desktop browser, including ie 9 and below, you can either use javascript conditional comments: /*@cc_on // conditional ie < 9 only fix @if (@_jscript_
version <= 9) (function(f){ window.settimeout = f(window.settimeout); window.setinterval = f(window.setinterval); })(function(f){return function(c,t){var a=[].slice.call(arguments,2);return f(function(){c instanceof function?c.apply(this,a):eval(c)},t)}}); @end @*/ ...
...gecko started to treat setinterval() like this in
version 56 (it already did this with settimeout(); see below).
... firefox implements this behavior since
version 5 (see bug 633421, the 1000ms constant can be tweaked through the dom.min_background_timeout_value preference).
... chrome implements this behavior since
version 11 (crbug.com/66078).
Using XMLHttpRequest - Web APIs
) { ui8data[nidx] = sdata.charcodeat(nidx) & 0xff; } /* send as arraybufferview...: */ this.send(ui8data); /* ...or as arraybuffer (legacy)...: this.send(ui8data.buffer); */ }; } /*\ |*| |*| :: ajax form submit framework :: |*| |*| https://developer.mozilla.org/docs/dom/xmlhttprequest/using_xmlhttprequest |*| |*| this framework is released under the gnu public license,
version 3 or later.
..."&" : "?") + (new date()).gettime()); oreq.send(null); security firefox 3 note
versions of firefox prior to firefox 3 allowed you to set the preference capability.policy.<policyname>.xmlhttprequest.open</policyname> to allaccess to give specific sites cross-site access.
... firefox 5 note
versions of firefox prior to firefox 5 could use netscape.security.privilegemanager.enableprivilege("universalbrowserread"); to request cross-site access.
... specifications specification status comment xmlhttprequest living standard live standard, latest
version ...
Generating HTML - Web APIs
figure 2 xml file :(example2.xml)view example | view source xml document (example2.xml): <?xml
version="1.0"?> <?xml-stylesheet type="text/xsl" href="example2.xsl"?> <myns:article xmlns:myns="http://devedge.netscape.com/2002/de"> <myns:title>my article</myns:title> <myns:authors> <myns:author company="foopy corp.">mr.
... figure 3 : xsl stylesheet with 2 namespaces (example2.xsl) xsl stylesheet (example2.xsl): <?xml
version="1.0"?> <xsl:stylesheet
version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform" xmlns:myns="http://devedge.netscape.com/2002/de"> <xsl:output method="html"/> ...
... </xsl:stylesheet
version="1.0"> a template matching the root node of the xml document is created and used to create the basic structure of the html page.
... the final xslt stylesheet looks as follows: figure 6 : final xslt stylesheetview example | view source xsl stylesheet: <?xml
version="1.0"?> <xsl:stylesheet
version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform" xmlns:myns="http://devedge.netscape.com/2002/de"> <xsl:output method="html" /> <xsl:template match="/"> <html> <head> <title> <xsl:value-of select="/myns:article/myns:title"/> </title> <s...
Implementing a Microsoft Active Accessibility (MSAA) Server - Accessibility
event_system_dragdropstart event_system_dragdropend event_system_dialogstart event_system_dialogend event_system_scrollingstart event_system_scrollingend [possibly important, talk to at vendor] event_system_switchstart event_system_switchend event_system_minimizestart event_system_minimizeend event_object_create [don't implement, watching system generated
versions of this event causes assistive technology crashes] event_object_destroy [don't implement, watching system generated
versions of this event causes assistive technology crashes] event_object_show [can be important, depending on project] event_object_hide [can be important, depending on project] event_object_reorder [important for mutating docs] event_object_focus [important] ...
...don't change window class names after you have shipped a
version.
...time and
version commitments often fall through.
... there is always a belated new
version due around corner, after which you will be promised to be the next priority.
Web Accessibility: Understanding Colors and Luminance - Accessibility
con
versions between the color spaces are usually needed.
... con
versions it's important to know that there are variations even within one color space, such as the rgb color space.
... em { color: #f00; } /* #rgb */ em { color: #ff0000; } /* #rrggbb */ em { color: #ff0000ff; } /* #rrggbbaa */ em { color: rgb(255, 0, 0); } em { color: rgb(100%, 0%, 0%); } em { color: rgb(255, 0, 0, 1); } em { color: rgba(100%, 0%, 0%, 100%); } con
versions are not casual.
... (see the video, the photosensitive epilepsy analysis tool) measuring color & luminance methods that measures color exploring the rgb color space further, as it is the color space used by the data type <color>, note that there are actually multiple "
versions" of the rgb color space, such as srgb, scrgb, and rgba.
CSS Scrollbars - CSS: Cascading Style Sheets
era for androidsafari on iossamsung internetscrollbar-widthchrome no support noedge no support nofirefox full support 64 full support 64 full support 63disabled disabled from
version 63: this feature is behind the layout.css.scrollbar-width.enabled preference (needs to be set to true).
... nowebview android no support nochrome android no support nofirefox android full support 64 full support 64 full support 63disabled disabled from
version 63: this feature is behind the layout.css.scrollbar-width.enabled preference (needs to be set to true).
... full support 63disabled disabled from
version 63: this feature is behind the layout.css.scrollbar-color.enabled preference (needs to be set to true).
... nowebview android no support nochrome android no support nofirefox android full support 64 full support 64 full support 63disabled disabled from
version 63: this feature is behind the layout.css.scrollbar-color.enabled preference (needs to be set to true).
Adapting to the new two-value syntax of display - CSS: Cascading Style Sheets
the single values of display are described in the specification as legacy values, and currently you gain no benefit from using the two-value
versions, as there is a direct mapping for each two-value
version to a legacy
version, as demonstrated in the table above.
...display-inside> value is specified but <display-outside> is omitted, the element’s outer display type defaults to block—except for ruby, which defaults to inline." finally, we have some legacy pre-composed inline-level values of: inline-block inline-table inline-flex inline-grid if a supporting browser comes across these as single values then it treats them the same as the two-value
versions: inline flow-root inline table inline flex inline grid so all of the current situations are neatly covered, meaning that we maintain compatibility of existing and new sites that use the single values, while allowing the spec to evolve.
... as demonstrated above, there is not a lot of advantage in using the two-value
version right now; if you did your page would only work in firefox!
... other browsers do not yet implement the two-value
versions.
font-size-adjust - CSS: Cascading Style Sheets
desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetfont-size-adjustchrome full support 43disabled full support 43disabled disabled from
version 43: this feature is behind the enable experimental web platform features preference.
... to change preferences in chrome, visit chrome://flags.edge full support 79disabled full support 79disabled disabled from
version 79: this feature is behind the enable experimental web platform features preference.firefox full support 40 full support 40 full support 3notes notes before firefox 40, font-size-adjust: 0 was incorrectly interpreted as font-size-adjust: none (bug 1144885).
... full support 1notes notes before firefox 3, font-size-adjust was supported on windows only.ie no support noopera full support 30disabled full support 30disabled disabled from
version 30: this feature is behind the enable experimental web platform features preference.safari no support nowebview android no support nochrome android full support 43disabled full support 43disabled disabled from
version 43: this feature is behind the enable exper...
...to change preferences in chrome, visit chrome://flags.firefox android full support 4opera android full support 30disabled full support 30disabled disabled from
version 30: this feature is behind the enable experimental web platform features preference.safari ios no support nosamsung internet android no support nolegend full support full support no support no supportsee implementation notes.see impl...
font-style - CSS: Cascading Style Sheets
italic font faces are generally cursive in nature, usually using less horizontal space than their unstyled counterparts, while oblique faces are usually just sloped
versions of the regular face.
...if no italic
version of the face is available, one classified as oblique is used instead.
...if no oblique
version of the face is available, one classified as italic is used instead.
...if no oblique faces are available, the browser will synthesize an oblique
version of the font by slanting a normal face by the specified amount.
Creating a cross-browser video player - Developer guides
alas it has been implemented in browsers in a number of weird and wonderful ways which requires a lot of extra code to check for various prefixed
versions of attributes and methods so as to call the right one.
...the final tested value, document.createelement('video').webkitrequestfullscreen is required for the last presto
version of opera (12.14).
... setfullscreendata(true); } } first of all the function checks if the browser is already in fullscreen mode by calling another function isfullscreen: var isfullscreen = function() { return !!(document.fullscreen || document.webkitisfullscreen || document.mozfullscreen || document.msfullscreenelement || document.fullscreenelement); } this function checks all the various browser prefixed
versions to try and determine the correct result.
...support for the different prefixed
versions of the relevant action are checked in order to call the correct one.
<content>: The Shadow DOM Content Placeholder element (obsolete) - HTML: Hypertext Markup Language
note: though present in early draft of the specifications and implemented in several browsers, this element has been removed in later
versions of the spec, and should not be used.
... it is documented here to assist in adapting code written during the time it was included in the spec to work with newer
versions of the specification.
...asafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetcontent deprecatednon-standardchrome full support 35edge full support 79firefox no support 33 — 59disabled no support 33 — 59disabled disabled from
version 33 until
version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true).
...ull support 26safari no support nowebview android full support 37chrome android full support 37firefox android no support 33 — 59disabled no support 33 — 59disabled disabled from
version 33 until
version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true).
<html>: The HTML Document / Root element - HTML: Hypertext Markup Language
version specifies the
version of the html document type definition that governs the current document.
... this attribute is not needed, because it is redundant with the
version information in the document type declaration.
... obsoleted the
version attribute html 4.01 specificationthe definition of '<html>' in that specification.
... recommendation deprecated the
version attribute ...
<picture>: The Picture element - HTML: Hypertext Markup Language
the html <picture> element contains zero or more <source> elements and one <img> element to offer alternative
versions of an image for different display/device scenarios.
...cropping or modifying images for different media conditions (for example, loading a simpler
version of an image which has too many details, on smaller displays).
... if providing higher-density
versions of an image for high-dpi (retina) display, use srcset on the <img> element instead.
... this lets browsers opt for lower-density
versions in data-saving modes, and you don't have to write explicit media conditions.
Quirks Mode and Standards Mode - HTML: Hypertext Markup Language
in the old days of the web, pages were typically written in two
versions: one for netscape navigator, and one for microsoft internet explorer.
...earlier
versions of the html standard recommended other variants, but all existing browsers today will use full standards mode for this doctype, even the dated internet explorer 6.
...older
versions of the html standard gave additional meaning to the doctype, but no browser has ever used the doctype for anything other than switching between quirks mode and standards mode.
...note however that serving your pages as application/xhtml+xml will cause internet explorer 8 to show a download dialog box for an unknown format instead of displaying your page, as the first
version of internet explorer with support for xhtml is internet explorer 9.
Upgrade - HTTP
syntax connection: upgrade upgrade: protocol_name[/protocol_
version] notes: the connection header with type upgrade must always be sent with the upgrade header (as shown above).
...protocol
version is optional.
... for example: connection: upgrade upgrade: a_protocol/1, example ,another_protocol/2.2 directives any comma-separated list protocol names (each with optional protocol
version) one or more protocol names with optional
version ("/" separated).
... examples connection: upgrade upgrade: http/2.0, shttp/1.3, irc/6.9, rta/x11 connection: upgrade upgrade: websocket specifications specification hypertext transfer protocol (http/1.1): message syntax and routing (http/1.1)# header.upgrade hypertext transfer protocol (http/1.1): semantics and content (http/1.1)# status.426 hypertext transfer protocol
version 2 (http/2) (http/2)# informational-responses ...
An overview of HTTP - HTTP
http pipelining has proven difficult to implement in existing networks, where old pieces of software coexist with modern
versions.
...even if only part of the original http message is sent in this
version of http, the semantics of each message is unchanged and the client reconstitutes (virtually) the original http/1.1 request.
... the
version of the http protocol.
... responses an example response: responses consist of the following elements: the
version of the http protocol they follow.
HTTP response status codes - HTTP
it tells the client that the response has not been modified, so the client can continue to use the same cached
version of the response.
... 305 use proxy defined in a previous
version of the http specification to indicate that a requested response must be accessed by a proxy.
...it was used in a previous
version of the http/1.1 specification.
... 505 http
version not supported the http
version used in the request is not supported by the server.
Introduction - JavaScript
there are also more advanced server side
versions of javascript such as node.js, which allow you to add more functionality to a website than simply downloading files (such as realtime collaboration between multiple computers).
...this standardized
version of javascript, called ecmascript, behaves the same way in all applications that support the standard.
...see new in javascript to learn more about different
versions of javascript and ecmascript specification editions.
...this guide includes some javascript features which are only currently available in the latest
versions of firefox, so using the most recent
version of firefox is recommended.
Strict mode - JavaScript
prohibits some syntax likely to be defined in future
versions of ecmascript.
...yet because of its historical functionality, arguments.caller for a strict mode function is also a non-deletable property which throws when set or retrieved: 'use strict'; function fun(a, b) { 'use strict'; var v = 12; return arguments.caller; // throws a typeerror } fun(1, 2); // doesn't expose v (or a or b) paving the way for future ecmascript
versions future ecmascript
versions will likely introduce new syntax, and strict mode in ecmascript 5 applies some restrictions to ease the transition.
...however, don't blindly depend on it since there still are numerous browser
versions used in the wild that only have partial support for strict mode or do not support it at all (e.g.
... internet explorer below
version 10!).
Web video codec guide - Web media technologies
[2]
version 1 of h.263 specifies a set of picture sizes which are supported.
... later
versions may support additional resolutions.
... how old is the oldest
version of web browser you need to support?
... if you are only able to offer a single
version of each video, you can choose the format that's most appropriate for your needs.the first one is recommended as being a good combnination of quality, performance, and compatibility.
Animation performance and frame rate - Web Performance
there's also a video
version of this walkthrough: animating using margin leaving the "use margin" option set, start the animation, open the performance tool, and make a recording.
...it will look something like this: waterfall overview compared with the
version that uses margin, we're seeing a lot less green and a lot more pink, which could be either layout or style recalculation.
... frame rate compared with the
version that uses margin, this is looking pretty good.
...compared with the
version that uses margin, we're not spending any time time in layout or (more importantly in this case) in paint: in this case, using transform significantly improved the site's performance, and the performance tools were able to show how and why it did.
Introduction to progressive web apps - Progressive web apps (PWAs)
re-engaging with users through the use of system notifications and push messages, leading to more engaged users and better con
version rates.
...india's largest e-commerce site was rebuilt as a progressive web app in 2015, which resulted in 70% increase in con
versions.
... the aliexpress pwa has also seen much better results than either the web or the native app, with a 104% increase in con
version rates for new users.
... given their profit increase, and the relatively low amount of work required for the con
version of these apps to pwas, the advantage is clear.
The building blocks of responsive design - Progressive web apps (PWAs)
one approach to this is to create different
versions of your site/app for different platforms or browsers and serve them appropriately after detecting which browser or platform is looking at your site.
... it is usually much better to create a single
version of your code which doesn't care about what browser or platform is accessing the site, but instead uses feature tests to find out what code features the browser supports or what the values of certain browser features are, and then adjusts the code appropriately.
...you don't get caught in the situation of having to bring out more new site
versions as more new browsers and platforms come out, and adjust code as feature support in existing browsers changes.
...some available solutions are as follows: hisrc a jquery plugin that allows you to create small, medium, and large
versions of an image, and then serves the appropriate one according to the browser's resolution and available network speed.
Gradients in SVG - SVG: Scalable Vector Graphics
basic example <svg width="120" height="240"
version="1.1" xmlns="http://www.w3.org/2000/svg"> <defs> <lineargradient id="gradient1"> <stop class="stop1" offset="0%"/> <stop class="stop2" offset="50%"/> <stop class="stop3" offset="100%"/> </lineargradient> <lineargradient id="gradient2" x1="0" x2="0" y1="0" y2="1"> <stop offset="0%" stop-color="red"/> <stop offset="50%" stop-color="black" ...
... basic example <?xml
version="1.0" standalone="no"?> <svg width="120" height="240"
version="1.1" xmlns="http://www.w3.org/2000/svg"> <defs> <radialgradient id="radialgradient1"> <stop offset="0%" stop-color="red"/> <stop offset="100%" stop-color="blue"/> </radialgradient> <radialgradient id="radialgradient2" cx="0.25" cy="0.25" r="0.25"> <stop offset="0%" stop-color="red"/> ...
... center and focal point <?xml
version="1.0" standalone="no"?> <svg width="120" height="120"
version="1.1" xmlns="http://www.w3.org/2000/svg"> <defs> <radialgradient id="gradient" cx="0.5" cy="0.5" r="0.5" fx="0.25" fy="0.25"> <stop offset="0%" stop-color="red"/> <stop offset="100%" stop-color="blue"/> </radialgradient> </defs> <rect x="10" y="10" rx="15" ry="15" width="100" height="10...
... spreadmethod <?xml
version="1.0" standalone="no"?> <svg width="220" height="220"
version="1.1" xmlns="http://www.w3.org/2000/svg"> <defs> <radialgradient id="gradientpad" cx="0.5" cy="0.5" r="0.4" fx="0.75" fy="0.75" spreadmethod="pad"> <stop offset="0%" stop-color="red"/> <stop offset="100%" stop-color="blue"/> </radialgradient> <radialgradient id="gradientrepea...
Compiling an Existing C Module to WebAssembly - WebAssembly
$ git clone https://github.com/webmproject/libwebp to start off simple, expose webpgetencoder
version() from encode.h to javascript by writing a c file called webp.c: #include "emscripten.h" #include "src/webp/encode.h" emscripten_keepalive int
version() { return webpgetencoder
version(); } this is a good simple program to test whether you can get the source code of libwebp to compile, as it doesn't require any parameters or complex data structures to invoke this function.
... now you only need some html and javascript to load your new module: <script src="./a.out.js"></script> <script> module.onruntimeinitialized = async _ => { const api = {
version: module.cwrap('
version', 'number', []), }; console.log(api.
version()); }; </script> and you will see the correct
version number in the output: note: libwebp returns the current
version a.b.c as a hexadecimal number 0xabc.
... get an image from javascript into wasm getting the encoder's
version number is great, but encoding an actual image would be more impressive.
...after exposing the function to javascript using cwrap, you can use that number to find the start of our buffer and copy the image data: const api = {
version: module.cwrap('
version', 'number', []), create_buffer: module.cwrap('create_buffer', 'number', ['number', 'number']), destroy_buffer: module.cwrap('destroy_buffer', '', ['number']), }; const image = await loadimage('./image.jpg'); const p = api.create_buffer(image.width, image.height); module.heap8.set(image.data, p); // ...
Interacting with page scripts - Archive of obsolete content
with unsafewindow you can see javascript objects that have been defined by page scripts, and if a page script has modified the behavior of native dom functions, you'll get the modified
version of them as well.
... also, unsafewindow isn't a supported api, so it could be removed or changed in a future
version of the sdk.
...message()">send message</button> </body> </html> finally, the content script "listen.js" uses window.addeventlistener() to listen for messages from the page script: // listen.js window.addeventlistener('message', function(event) { console.log(event.data); // message from page script console.log(event.origin); }, false); postmessage() before firefox 31 if your add-on is running in a
version of firefox before firefox 31, then your content script can't access the postmessage() or addeventlistener() apis using window, but must access them using document.defaultview instead.
/loader - Archive of obsolete content
options.
version:
version of js used, defaults to '1.8'.
... // load script from the given location to a given sandbox: evaluate(sandbox, 'resource://path/to/script.js') // evaluate `code` as if it was from `foo/bar.js`: evaluate(sandbox, 'foo/bar.js', { source: code,
version: '1.7' // you could also use other options described above.
...in such cases you can create a requirer module instance and a
version of require exposed to it with this function: let requirer = module(requirerid, requireruri); let require = require(loader, requirer); let boostrap = require(bootstrapid); resolveuri() this function is used by the loader to resolve module uri from an id using a mapping array generated from the loader's paths option.
loader/sandbox - Archive of obsolete content
evaluate(scope, 'a ++', 'http://foo.com/bar.js', 2);
version of javascript can be also specified via an optional argument: evaluate(scope, 'let b = 2;', 'bar.js', 1, '1.5'); // throws cause `let` is not defined in js 1.5.
... evaluate(sandbox, code, uri, line,
version) evaluate code in sandbox, and return the result.
...
version : string evaluate the code using this
version of javascript.
Getting Started (jpm) - Archive of obsolete content
prerequisites to create add-ons for firefox using the sdk, you'll need: firefox
version 38 or later.
... if you need to work with earlier
versions of firefox, you'll need to use the old cfx tool.
... install firefox developer
version for testing your add-on.
Embedding SVG - Archive of obsolete content
<?xml
version="1.0" encoding="utf-8"?> <!doctype html public "-//w3c//dtd xhtml 1.0 strict//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <body> <!-- html and svg go here --> </body> </html> example: <?xml
version="1.0" encoding="utf-8"?> <!doctype html public "-//w3c//dtd xhtml 1.0 strict//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" ...
... xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <body> <p>hello</p> <svg:svg
version="1.1" baseprofile="full" width="150" height="150"> <svg:rect x="10" y="10" width="100" height="100" fill="red"/> <svg:circle cx="50" cy="50" r="30" fill="blue"/> </svg:svg> <p>world</p> </body> </html> embedding into xul make sure you use the right namespace when embedding <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <!-- xul and svg go here --> </window> example: <?xml
version="1.0"?> <?xml-stylesheet href="chro...
...me://global/skin/" type="text/css"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <vbox> <label value="hello"/> <svg:svg
version="1.1" baseprofile="full" width="150" height="150"> <svg:rect x="10" y="10" width="100" height="100" fill="red"/> <svg:circle cx="50" cy="50" r="30" fill="blue"/> </svg:svg> <label value="world"/> </vbox> </window> ...
Examples and demos from articles - Archive of obsolete content
[article] note: the filereader() constructor was not supported by internet explorer for
versions before 10.
... xml to json con
version snippets (jxon) 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 con
version, but some conventions begin to appear on the web.
Preferences - Archive of obsolete content
(this is not exactly how it's coded in libpref, but it's equivalent) where the default values are read from all mozilla-based applications read (application directory)/defaults/preferences/*.js in addition to that, recent
versions of toolkit applications (firefox 1.0, thunderbird 1.0, and the like but not the mozilla suite) read extension defaults -- usually located in (profile folder)/extensions/(id)/defaults/preferences/ these files use simple javascript-like syntax.
..., like this: + | +-- accessibility | | | +-- typeaheadfind | | | | | +-- autostart (accessibility.typeaheadfind.autostart) | | | | | +-- enablesound (accessibility.typeaheadfind.enablesound) | | | +-- usebrailledisplay (accessibility.usebrailledisplay) | +-- extensions | +-- lastapp
version (extensions.lastapp
version) this is the metaphor behind nsiprefbranch.
...iprefbranch we're observing (after appropriate qi) // adata is the name of the pref that's been changed (relative to asubject) switch (adata) { case "pref1": // extensions.myextension.pref1 was changed break; case "pref2": // extensions.myextension.pref2 was changed break; } } } myprefobserver.register(); and next, here is a more evolved
version of the previous code better fit for code reuse both within a project and across projects (for example, using javascript code modules): /** * @constructor * * @param {string} branch_name * @param {function} callback must have the following arguments: * branch, pref_leaf_name */ function preflistener(branch_name, callback) { // keeping a reference to the observed preference branch or it ...
Migrating from Internal Linkage to Frozen Linkage - Archive of obsolete content
you need to supply the appropriate con
version yourself.
... the following functions, however, are implemented in the glue library and can be used from frozen-linkage code: ns_newarrayenumerator (excluding deprecated nsisupportsarray
version) ns_newemptyenumerator ns_newunionenumerator nscrt functions in nscrt.h are not available to frozen-linkage code.
...#define appendutf16toutf8(a16, a8) (a8).append(ns_convertutf16toutf8(a16)) and similarly for the other con
versions.
Migrating raw components to add-ons - Archive of obsolete content
what's worse, though, is that these components don't have a mechanism for specifying the
versions of firefox with which they are compatible, leading to poor integration and instability as users upgrade their firefox installations.
... the firefox extension mechanism allows you to do everything that you could do through direct component drops, but also gives you and your users extra flexibility and more sophisticated
versioning support.
...this leads to a better compatibility path as new
versions of firefox are released.
Appendix B: Install and Uninstall Scripts - Archive of obsolete content
instead of a boolean preference, it would be best to use a string preference with the last-installed add-on
version.
... and then do a
version comparison to decide which code to run.
... the current
version number can be hard-coded in the first run function, or you can use the add-on manager to dynamically get it.
Local Storage - Archive of obsolete content
during development you should use the "all" level, but for release
versions it's usually better to move the level up to "warn", so that the log is compact and execution is more efficient.
...adding or removing columns, or making other changes to your db structure from one
version of your extension to the next will probably cause breakage of user data in older
versions.
... you'll need to carefully add migration code that moves the data from the old db format to the new, and this becomes increasingly complex as you add new
versions and new structure changes.
User Notifications and Alerts - Archive of obsolete content
the main disadvantage of using alerts is that support for the alerts service is not guaranteed for all platforms and firefox
versions.
...on linux systems, we have confirmed that it works on firefox 3 on ubuntu linux, but we haven't tested all distributions and firefox
versions.
...another problem you need to take into account is that transparency of floating xul on the mac os
version of firefox 2 doesn't work.
Firefox addons developer guide - Archive of obsolete content
these articles are all tagged as covering firefox 3.1 using the fx_min
version_header template, but i don't think that's the case.
... certainly appendix 2 doesn't care what
version of firefox you're using, since it's just about open source software licenses.
...the original
version of this guide was written as a first step guide for beginners.
Index of archived content - Archive of obsolete content
a plugin as an extension developing add-ons displaying web content in an extension without security issues downloading json and javascript in extensions enhanced extension installation extension etiquette extension library extension packaging extension samples extension theming guidelines extension
versioning, update and compatibility extensions support in seamonkey 2 firefox addons developer guide hiding browser chrome hotfix extension how to convert an overlay extension to restartless inline options install manifests installing extensions and themes from web pages interaction between privileged and non-privi...
... trigger scripts and install scripts windows install file object methods install object methods properties install
version object methods properties return codes winprofile object methods winreg object methods winregvalue ...
...fy npn_releaseobject npn_releasevariantvalue npn_reloadplugins npn_removeproperty npn_requestread npn_retainobject npn_setexception npn_setproperty npn_setvalue npn_setvalueforurl npn_status npn_utf8fromidentifier npn_useragent npn_
version npn_write npobject npp nppvariable npp_destroy npp_destroystream npp_getvalue npp_handleevent npp_new npp_newstream npp_print npp_setvalue npp_setwindow npp_streamasfile npp_urlnotify npp_write n...
List of Former Mozilla-Based Applications - Archive of obsolete content
applications that switched to another technology name description additional information angelsoft tools for startups, vcs, and angel investors switched from xulrunner-based client to a web application autodesk maya 3d modeling tool switched off of gecko for help browser in
version 8.5 blam feed reader switched to webkit in
version 1.8.6 boxee media center software switched to webkit in
version 1.0 epiphany browser switched from gecko to webkit flock social browsing flock switched from being firefox-based to chromium-based when it released a new beta on june 16, 2010 jolicloud web operating system as...
... of march 2010, rw/w reports jolicloud is on chrome/chrome os joost tv over internet switched from xulrunner-based client to a web application liferea news aggregator switched to webkit in
version 1.6 manyone browser browser originally mozilla-based but now i believe the have a web-based tool (need reference for that) miro (formerly democracy player) video switched from xulrunner to webkit in
version 3.0.2 moblin browser browser when moblin became meego it switched from a custom gecko-based browser to chrome nautilus file manager hasn't used mozilla code since
version 2.0 raptr client gaming client was a xulrunner app initially but now uses adobe air rift technologies software inst...
...userve client internet software no longer available doczilla sgml/xml/html browser last release on site from july 2005 fabula language learning application inactive galeon browser last news item on site from september 2006 gencatrss rss reader domain switched over to domain parking service ghostzilla browser archived
version of ghostzilla site from 2005 homebase desktop operating environment for internet computers no longer available hp printer assistant printer utility hall of fame page mentions that this used an embedded
version of mozilla at some point but i can't find reference to current status (may still be using mozilla code?) icebrowser java browser sdk uses mozill...
Locked config settings - Archive of obsolete content
this file also needs to be "called" from c:\program files\mozilla.org\mozilla\defaults\pref\all.js by appending the following line at the end: pref("general.config.filename", "mozilla.cfg"); note: newer
versions of mozilla or firefox store the all.js file in greprefs rather than defaults\pref the moz-byteshift.pl script allows to encode...: moz-byteshift.pl -s 13 <mozilla.cfg.txt >mozilla.cfg ...
...if you have trouble getting the moz-byteshift.pl script to work locally, there is also an online
version available.
... note: in recent
versions of mozilla (tested on windows and linux, with 1.5, 1.6 and 1.7b), the mozilla.cfg file needs to be placed in mozilla's root directory, rather than default\pref where all.js resides.
Getting Started - Archive of obsolete content
but this list includes everything that we changed, so just modify the blue text to point to match the name/
version that you used in the sections before this.
... <description about="urn:mozilla:install-manifest"> <em:id>{themes_uuid}</em:id> <em:
version>themes_
version</em:
version> the first section requires that you establish a uuid for your theme and that you give your theme a
version number.
...you will also have to update the minimum and maximum compatible
versions for the target application (seamonkey) in the following section: <em:targetapplication> <description> <!-- seamonkey's uuid --> <em:id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</em:id> <em:min
version>min_sm_
version</em:min
version> <em:max
version>max_sm_
version</em:max
version> </description> </em:targetapplication> establishing both minimum and maximum compatible
versions lets you avoid conflicts with
versions of seamonkey your theme wasn't designed for -- or wasn't tested on.
Dehydra Function Reference - Archive of obsolete content
include example include("map.js") // includes map.js into toplevel var map = {} include("map.js", map) // includes map.js into the map object require({
version:, strict:, werror:, gczeal:}) require is used to set runtime execution flags.
...
version integer: this sets js
version similar to
version() in js 1.7.
...builtin objects sys this.sys is a container for miscellaneous properties exposes by dehydra sys.gcc_
version is a gcc
version string sys.include_path exposes the search path used by include().
Java in Firefox Extensions - Archive of obsolete content
the following approach is taken from the extension xquseme (note you must use the latest
version, currently still in the sandbox, as prior
versions only worked with liveconnect before java 6 update 11) which borrows some of the code of the java firefox extension in order to grant full privileges to java within a firefox extension, but it is easier to understand and doesn't require creation of a xpcom component.
... [note: a simpler hello world
version than that below is now available at http://brett-zamir.me/java_demo/ ] for privileges, the basic procedure is: download and include http://simile.mit.edu/repository/jav...nsionutils.jar within your extension (you can also build your own from the source files at http://simile.mit.edu/repository/jav...xtensionutils/ ) build and add references leading to this jar and all other jars in your extension within an array of java.net.url's, pass to java.net.urlclassloader to get a class loader, and finally pass the classloader and array to a function which gives the necessary privileges: // this function will be called to give the necessary privileges to your jar files // however, the policy never comes into play, because // (1) adding permissions doesn't add t...
...]); var greeting = astaticmethod.invoke(null, []); alert(greeting); another, perhaps simpler approach is as follows: var myclass = loader.loadclass('com.example.myclass'); // use the same loader from above var myobj = myclass.newinstance(); var binval = myobj.mymethod(arg1, arg2); // pass whatever arguments you need (they'll be auto-converted to java form, taking into account the liveconnect con
version rules) for more complex cases, in which you need to call a specific constructor with arguments, you will need reflection.
Makefile.mozextension.2 - Archive of obsolete content
original makefile.mozextention reconstructs http://kb.mozillazine.org/getting_started_with_extension_development # call with: # make -f makefile.mozextension2 make_structure ## (without args for 'all') # note: @echo silent; without @ the command is written in stdout project=test project_name=testworld #~ project_id={xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} project_id=test@testworld.ext project_
version=1.0 project_desc="a $(project_name) project with advanced features" project_author=author name # mkdir=$(shell which mkdir) mkdir=/bin/mkdir zipprog=/usr/bin/zip shell = /bin/sh noop = $(shell) -c true noecho = @ rm_rf=rm -f cp=/bin/cp -i .phony: all all :: make_structure make_files $(noecho) $(noop) package:: make_xpi $(noecho) $(noop) #install :: make_xpi make_install # $(noecho) $(n...
...640} #seamonkey {92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a} #sunbird {718e30fb-e89b-41dd-9da7-e25a45638b28} #netscape browser {3db10fab-e461-4c80-8b97-957ad5f8ea47} ###### define install_rdf <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <id>$(project_id)</id> <name>$(project_name)</name> <
version>$(project_
version)</
version> <description>$(project_desc)</description> <creator>$(project_author)</creator> <contributor>here is a place for you who helped me</contributor> <homepageurl>http://$(project).mozdev.org/</homepageurl> <optionsurl>chrome://$(project)/content/settings.xul</optionsurl> <abouturl>chrome://$(project)/content/about.xul</abouturl> <iconurl>chrome://$(project)/skin/mainico...
...n.png</iconurl> <updateurl>http://$(project).mozdev.org/update.rdf</updateurl> <type>2</type> <targetapplication> <description> <id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</id> <min
version>2.0</min
version> <max
version>9.0</max
version> </description> </targetapplication> </description> </rdf> endef export install_rdf install.rdf: @echo generating $(project)/install.rdf @echo "$$install_rdf" > $(project)/install.rdf ###### define overlay_xul <overlay id="$(project)-overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"><script src="overlay.js"/></overlay> ...
Microsummary topics - Archive of obsolete content
for example, the following code snippet installs the microsummary generator from the creating a microsummary tutorial: var generatortext = ' \ <?xml
version="1.0" encoding="utf-8"?> \ <generator xmlns="http://www.mozilla.org/microsummaries/0.1" \ name="firefox download count" \ uri="urn:{835daeb3-6760-47fa-8f4f-8e4fdea1fb16}"> \ <template> \ <transform xmlns="http://www.w3.org/1999/xsl/transform"
version="1.0"> \ <output method="text"/> \ <template match="/"> \ <value-of select="id(\'dow...
...in the future, firefox may access source urls to download updated
versions of generators, so unless you are installing generators which are available from urls, you should not use this form for your programmatically-installed generators.
...thus if your cache headers tell firefox not to refresh a page on your site more than once per hour, and the user reloads the page within that time period, the user will see the cached
version of your page, which may not be what you want.
How to Write and Land Nanojit Patches - Archive of obsolete content
nanojit was removed during the development of (firefox 11 / thunderbird 11 / seamonkey 2.8), so this information is relevant to earlier
versions of the codebase.
...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.
...the first
version of this document was written just after that merge occurred.) resources nanojit development now takes place on a single shared repository nanojit-central.
BundleLibrary - Archive of obsolete content
note: these bundles have not be tested with the latest
version of prism and probably won't run.
... we are working on a new bundle library compatible with the current prism
version and welcome any contributions from the developer community.
... bundles gmail: gmail.webapp google calendar: gcalendar.webapp google docs: gdocs.webapp google groups: groups.webapp google analytics: ganalytics.webapp google reader: greader.webapp facebook: facebook.webapp twitter: twitter.webapp user contributed bundles gmail w/gtalk: gmail.webapp (note: work with latest
version of prism!) 32 online todo lists: zip file with web apps for 32 online todo lists anywhere.fm: anywhere.fm@prism.app.webapp a service that lets you upload your entire music library to their servers and listen from anywhere through a slick flash interface.
New Skin Notes - Archive of obsolete content
--dria external link icons missing on ie
version of skin.
...thanks again --mmondor future fixes in l10n
versions there all heading links are wrong - main link and documentation leads to english devmo, and devnews and webwatch should be hidden or localized too.
...when i'm on polish devmo and i click on documentation or main devmo logo i'm redirected to english
version.
Tamarin build documentation - Archive of obsolete content
tamarin source
versions the following instructions are for obtaining and building the tamarin central source code.
... the configurations in this initial
version cover 32- and 64-bit builds for mac os with the gcc 4.0 toolchain (installed with xcode 3.x).
... download and build the asc source code using the sub
version client $ svn co http://opensource.adobe.com/svn/open...box/asc-redux/ asc $ cd asc/build/java $ ant ...
The new nsString class implementation (1999) - Archive of obsolete content
class based -- making it unsuitable for cross-dll usage due to fragility little intrinsic i18n support few efficiencies, notably a lack of support for narrow (1-byte) character strings no support for external memory management policy lack of xpcom interface notable features of the new nsstrimpl implementation are: intrinsic support for 1 and 2 byte character widths provides automatic con
version between strings with different character sizes inviolate base structure eliminates class fragility problem; safe across dll boundaries offers c-style function api to manipulate nsstrimpl offers simple memory allocator api for specialized memory policy shares binary format with bstring coming soon: a new xpcom (nsistring) interface non-templatized; this is a requirement for gecko very effic...
...first, nsstrimpl offers charset con
version hooks for use during construction, comparison and assignment.
...to wit: they want to ensure that the underlying buffers cannot be corrupted or altered erroneously they want to ensure that the appropriate set of con
version functions get applied they want some control over the usage pattern of strings, such that the 2-byte (ucs2) form is used whenever possible, and some restrictions are applied to the use of 1-byte (ascii) nscstrings.
Venkman - Archive of obsolete content
getting venkman firefox and thunderbird the latest
version of javascript debugger is available from firefox add-ons.
... nvu and kompozer javascript debugger extension
version 0.9.84 is available from nvu's downloads page.
... we encourage you to use the latest available
version 0.9.87.1 (or higher) with firefox instead.
Windows stub installer - Archive of obsolete content
note that there are several macro strings--a macro name wrapped in dollar ($) signs--which may be used in the .jsts, including: $
version$ which is replaced at packages time with the browser
version.
... other macro strings listed in makejs.pl can be found by searching for "
version", which is one of the macro strings, until you find the line $line =~ s/\$
version\$/$in
version/i; other macro strings are grouped in this section.
... as with "
version", the macro name will be the first string in the substitution statement on each line.
init - Archive of obsolete content
method of install
version object syntax init ( int maj, int min, int rev, int bld ); init ( string
version ); parameters the init method has the following parameters: maj the major
version number.
... min minor
version number.
...
version a string representing
version information in the format "4.1.2.1234".
Methods - Archive of obsolete content
methods compareto compares the
version information specified in this object to the
version information specified in the
version parameter.
... init initialize an install
version object.
... tostring converts an install
version init to a string.
confirm - Archive of obsolete content
previous gecko
versions only support the first, one-parameter method and will throw an error on occuring the extended form.
...also: user closed the dialog window 1 'ok' or button 0 2 the third button previous
versions of the xpinstall api stated the return value of confirm() to be a boolean.
... that is incorrect, confirm() always returned a plain integer (in pre-gecko-1.8
versions either 0 or 1).
deleteRegisteredFile - Archive of obsolete content
deleteregisteredfile (netscape 6 and mozilla do not currently support this method.) deletes the specified file and removes its entry from the client
version registry.
... method of install object syntax int deleteregisteredfile (string registryname); parameters the deleteregisteredfile method has the following parameter: registryname the pathname in the client
version registry for the file that is to be deleted.
...description the deleteregisteredfile method deletes the specified file and removes the file's entry from the client
version registry.
Methods - Archive of obsolete content
deleteregisteredfile deletes the specified file and its entry in the client
version registry.
... initinstall initializes installation for the given software and
version.
... patch applies a set of differences between two
versions.
Index - Archive of obsolete content
(this one has no post data parameter, see loaduriwithflags for a
version that does) 531 loaduriwithflags xul methods, xul reference (see nsiwebnavigation.loaduri() for details on the referrer and postdata parameters.) 532 makeeditable xul methods, xul reference no summary!
... 967 using nsixulappinfo add-ons, extensions starting with mozilla/xulrunner 1.8, there now is a way to find out which application, application
version, and gecko
version your code is running on.
...in newer
versions of mozilla, a statusbar may be placed directly inside the wizard element which will be shared among all pages.
Custom Tree Views - Archive of obsolete content
in the older
versions of mozilla (before firefox 1.5 or mozilla 1.8), the columns are supplied as the values of the id attribute on the columns.
... if you need a id attribute like older
versions, the id property of treecolumn can be used.
... example custom tree source <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window title="tree example" id="tree-window" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload="setview();"> <script> //moz 1.8 var treeview = { rowcount : 10000, getcelltext : function(row,column){ if (column.id == "namecol") return "row "+row; else return "february 18"...
Introduction to XBL - Archive of obsolete content
the following example shows the basic skeleton of an xbl file: <?xml
version="1.0"?> <bindings xmlns="http://www.mozilla.org/xbl"> <binding id="binding1"> <!-- content, property, method and event descriptions go here --> </binding> <binding id="binding2"> <!-- content, property, method and event descriptions go here --> </binding> </bindings> the bindings element is the root element of an xbl file and contains one or more binding elements.
...xul (example.xul): <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <?xml-stylesheet href="chrome://example/skin/example.css" type="text/css"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <box class="okcancelbuttons"/> </window> css (example.css): box.okcancelbuttons { -moz-binding: url('chrome://example/skin/example.xml#okcancel'); } xbl (exampl...
...e.xml): <?xml
version="1.0"?> <bindings xmlns="http://www.mozilla.org/xbl" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <binding id="okcancel"> <content> <xul:button label="ok"/> <xul:button label="cancel"/> </content> </binding> </bindings> this example creates a window with a single box.
Using Visual Studio as your XUL IDE - Archive of obsolete content
grab the xsd
version and add it in the same way, you added the xul schema.
...visual assist and file extensions since
version 10.5, visual assist supports javascript and xml.
...all va options can be found at: hkey_current_user\software\whole tomato\visual assist x\ find the folder that represents your visual studio
version ((vanet8, vanet9, etc.) and add your extensions to the corresponding registry entries extjs and extxml.
tree - Archive of obsolete content
in newer
versions of mozilla, the builderview property is actually a synonym for the view property, since the two interfaces are flattened together into a single interface in javascript.
...in newer
versions of mozilla, the contentview property is actually a synonym for the view property, since the two interfaces are flattened together into a single interface in javascript.
... xul for the tree: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <?xml-stylesheet href="file://c:/main.css" type="text/css"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <row><button label="getrowvalues" oncommand="getrowcellvalues();"/></row> <tree flex="1" editable="true" id="mytree"> <treecols> <treecol label="active" type="checkbox" editable=...
XULRunner 1.8.0.1 Release Notes - Archive of obsolete content
xulrunner 1.8.0.4 is now available as a security/stability update; all users should install this new
version.
... mac os x if you have multiple
versions of xulrunner installed on mac os x, it is not possible to uninstall only one
version.
... to remove all installed
versions of xulrunner, remove the /library/frameworks/xul.framework directory.
XULRunner 1.8.0.4 Release Notes - Archive of obsolete content
it replaces
version 1.8.0.1; all users should upgrade.
... mac os x if you have multiple
versions of xulrunner installed on mac os x, it is not possible to uninstall only one
version.
... to remove all installed
versions of xulrunner, remove the /library/frameworks/xul.framework directory.
XULRunner 1.9.1 Release Notes - Archive of obsolete content
current
version the current
version of xulrunner is 1.9.1.19, matching firefox 3.5.19 detailed release notes can be found here.
... mac os x if you have multiple
versions of xulrunner installed on mac os x, it is not possible to uninstall only one
version.
... to remove all installed
versions of xulrunner, remove the /library/frameworks/xul.framework directory.
Building XULRunner with Python - Archive of obsolete content
microsoft c++ compiler is required and whilst the current free
version is visual studio 8 express (msvc8) you will almost certainly want to use visual studio .net 2003 (msvc71) which is not longer officially available.
... the issue is that xulrunner must be built with the same
version of c as python and with python 2.5 that is msvc71.
... both must use the same
version of the c runtime library msvcrt?.dll or crashes will ensue.
Creating a Windows Inno Setup installer for XULRunner applications - Archive of obsolete content
if your application does not run, neither will the installed
version.
...ption: xul runner runtime; types: full custom [tasks] name: desktopicon; description: {cm:createdesktopicon}; groupdescription: {cm:additionalicons}; flags: unchecked name: quicklaunchicon; description: {cm:createquicklaunchicon}; groupdescription: {cm:additionalicons}; flags: unchecked [files] source: c:\develop\xulrunnerinstaller\myapp\myapp.exe; destdir: {app}; components: main; flags: ignore
version source: c:\develop\xulrunnerinstaller\myapp\application.ini; destdir: {app}; components: main; flags: ignore
version source: c:\develop\xulrunnerinstaller\myapp\chrome\*; excludes: .svn; destdir: {app}\chrome; components: main; flags: ignore
version recursesubdirs createallsubdirs source: c:\develop\xulrunnerinstaller\myapp\defaults\*; excludes: .svn; destdir: {app}\defaults; components: main; flag...
...s: ignore
version recursesubdirs createallsubdirs source: c:\develop\xulrunnerinstaller\myapp\xulrunner\*; destdir: {app}\xulrunner; components: runtime; flags: ignore
version recursesubdirs createallsubdirs ; note: don't use "flags: ignore
version" on any shared system files [icons] name: {group}\my app; filename: {app}\myapp.exe name: {group}\{cm:uninstallprogram,xul explorer}; filename: {uninstallexe} name: {userdesktop}\my app; filename: {app}\myapp.exe; tasks: desktopicon name: {userappdata}\microsoft\internet explorer\quick launch\my app; filename: {app}\myapp.exe; tasks: quicklaunchicon [run] filename: {app}\myapp.exe; description: {cm:launchprogram,my app}; onlybelow
version: 0,6; flags: nowait postinstall skipifsilent step 4: building an installer once your script is ready, start the i...
ant script to assemble an extension - Archive of obsolete content
this ant script helps to package an extension <?xml
version="1.0"?> this build file was written by régis décamps <decamps@users.sf.net> <project name="blogmark" default="createxpi"> <property name="
version" value="1.3-rc1"/> <property name="description" value="new context-menu item to add the current page in your blogmarks"/> xpi file is created after "chrome/blogmark.jar" is created, which is then stuffed into "blogmark.xpi" <target name="createxpi" depends="createjar" description="assemble the final build blogmark.xpi"> <zip destfile="blogmark-${
version}.xpi"> <zipfileset dir="." includes="chrome/blogmark.jar" /> <zipfiles...
...arget> <target name="templates" description="generate files from templates."> <copy file="chrome/content/blogmark/contents.rdf.tpl.xml" tofile="chrome/content/blogmark/contents.rdf" overwrite="true"> <filterchain> <replacetokens> <token key="
version" value="${
version}"/> <token key="description" value="${description}"/> </replacetokens> </filterchain> </copy> <copy file="chrome/content/blogmark/about.xul.tpl.xml" tofile="chrome/content/blogmark/about.xul" overwrite="true"> ...
... <filterchain> <replacetokens> <token key="
version" value="${
version}"/> </replacetokens> </filterchain> </copy> <copy file="install.rdf.tpl.xml" tofile="install.rdf" overwrite="true"> <filterchain> <replacetokens> <token key="
version" value="${
version}"/> <token key="description" value="${description}"/> </replacetokens> </filterchain> </copy> </target> </project> ...
NPN_UserAgent - Archive of obsolete content
this can be used to handle variations in different browsers (or
versions thereof) when implementing your plug-in.
...you can use this information to verify that the expected browser is in use, or you can use it in combination with npn_
version() to supply different code for different
versions of the same browser.
... see also npn_status() npn_
version() gecko user agent string reference ...
Entity list - Archive of obsolete content
this page provides a list of the entities supported by various
versions of rss.
... note: there are 3 different
versions of rss 0.91.
...(userland's rss 0.91 does not use this dtd.) entity decimal character rss
version 0.90 n 0.91 r1 n 0.91 r3 u 0.91 0.92 0.93 0.94 1.0 2.0 á # á ✔ ✔ ✔ ?
0.90 - Archive of obsolete content
rss 0.90 rss 0.90 is the earliest known
version of rss released to the public, and was replaced by netscape's rss 0.91 (revision 1).
...(see the rss
versions list for a list of non-deprecated rss formats.) consumers of rssshould still be able to accept rss 0.90 feeds though.
... examples rss 0.90 looked something like this: <?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://my.netscape.com/rdf/simple/0.9/" > <channel> <title>mozilla dot org</title> <link>http://www.mozilla.org</link> <description>the mozilla organization web site</description> </channel> <image> <title>mozilla</title> <url>http://www.mozilla.org/images/moz.gif</url> <link>http://www.mozilla.org</link> </image> <item> <title>new status updates</title> <link>http://www.mozilla.org/status/</link> </item> <item> <title>bugzilla reorganized</title> ...
Updating an extension to support multiple Mozilla applications - Archive of obsolete content
we'll build upon the stock watcher extension created in earlier articles in this series, updating it so it can also be used in thunderbird and sunbird (previous
versions worked only in firefox).
...this is done by adding new <targetapplication> tags to the install.rdf file, like this: <!-- describe the thunderbird
versions we support --> <em:targetapplication> <description> <em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id> <em:min
version>1.5</em:min
version> <em:max
version>2.0.0.*</em:max
version> </description> </em:targetapplication> <!-- describe the sunbird
versions we support --> <em:targetapplication> <description> <em:id> {718e30fb-e89b-...
...41dd-9da7-e25a45638b28}</em:id> <em:min
version>0.2</em:min
version> <em:max
version>0.4.*</em:max
version> </description> </em:targetapplication> these two blocks indicate that the extension supports thunderbird
versions 1.5 through 2.0.0.x, sunbird
versions 0.2 through 0.4.x.
Using JavaScript Generators in Firefox - Archive of obsolete content
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: <script type="text/javascript;
version=1.7" src="myscript.js"></script> then your myscript.js file might look like this: // need to stash the generator in a global variable.
...function closegenerator() { settimeout(function() { generator.close(); }, 0); } // our main steps function databaseoperation() { mozindexeddb.open("mytestdatabase").onsuccess = grabevent; var event = yield; var db = event.target.result; if (db.
version != "1.0") { db.set
version("1.0").onsuccess = grabevent; event = yield; var transaction = event.transaction; db.createobjectstore("stuff"); transaction.oncomplete = grabevent; yield; } db.transaction(["stuff"]).objectstore("stuff").get("foo").onsuccess = grabevent; event = yield; alert("got result: " + event.target.result); // we're all done.
ECMAScript 2016 to ES.Next support in Mozilla - Archive of obsolete content
new
versions of ecmascript specifications are released yearly.
... below is a list of features in es2016+ and what
version of firefox they were implemented in.
...mplemented; in other browsers) ecmascript 2019 array.flat() (firefox 62) array.flatmap() (firefox 62) object.fromentries() (firefox 63) string.trimstart() and string.trimend() (firefox 61) optional catch binding (firefox 58) function.tostring() revision (firefox 54) symbol.description (firefox 63) well-formed json.stringify() (firefox 64) ecmascript 2020 this is the current es.next
version.
@set - Archive of obsolete content
conditional compilation is supported in internet explorer 10 standards mode and in all earlier
versions.
... examples of variable declarations look like this: @set @myvar1 = 12 @set @myvar2 = (@myvar1 * 20) @set @myvar3 = @_jscript_
version the following operators are supported in parenthesized expressions: !
... requirements supported in all
versions of internet explorer, but not in windows 8.x store apps.
New in JavaScript 1.1 - Archive of obsolete content
the old netscape documentation references this as "features added after
version 1".
...netscape navigator 3.0 was the second major
version of the browser with javascript support.
... javascript
versions netscape navigator 3.0 also introduced javascript language
versions.
New in JavaScript 1.3 - Archive of obsolete content
additional features of
version 1.2, at the time not specified by ecma-262 were kept in the javascript language (see below for a list of differences).
... javascript
versions netscape communicator and navigator 4.06 and 4.5 executes javascript language
versions up to 1.3.
... non-ecma-262 features of javascript 1.3 the following is a comparison between the june 1998
version of ecma-262 and javascript 1.3.
ECMAScript 5 support in Mozilla - Archive of obsolete content
ecmascript 5.1, an older
version of the standard upon which javascript is based, was approved in june 2011.
... the javascript runtime used in the latest
versions of mozilla projects including both firefox and thunderbird has full support for ecmascript 5.1 features.
... this article covers the features supported by different
versions of mozilla's javascript runtime.
Archived JavaScript Reference - Archive of obsolete content
see also the newer
version of date.prototype.tolocaledatestring().ecmascript 2016 to es.next support in mozillaexpression closuresexpression closures are a shorthand function syntax for writing simple functions.for each...inthe for each...in statement iterates a specified variable over all values of object's properties.
...it has been removed from firefox starting with
version 58.generator comprehensionsthe generator comprehension syntax was a javascript expression which allowed you to quickly assemble a new generator function based on an existing iterable object.
...to make the function a legacy generator, the function body should contain at least one yield expression.microsoft javascript extensionsmicrosoft browsers (internet explorer, and in a few cases, microsoft edge) support a number of special microsoft extensions to the otherwise standard javascript apis.new in javascriptthis chapter contains information about javascript's
version history and implementation status for mozilla/spidermonkey-based javascript applications, such as firefox.number.tointeger()the number.tointeger() method used to evaluate the passed value and convert it to an integer, but its implementation has been removed.object.getnotifier()the object.getnotifer() method was used to create an object that allows to synthetically trigger a change, but has been d...
JSObject - Archive of obsolete content
see the core javascript 1.5 guide for more information about data type con
versions.
...in javascript 1.3 and earlier
versions, you can use either the equals method of java.lang.object or the == operator to evaluate two jsobject objects.
... in more recent
versions, the same jsobject can appear as different java objects.
Standards-Compliant Authoring Tools - Archive of obsolete content
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: nvu is a standalone editor created from the remains of mozilla composer.
...newer
versions of microsoft frontpage™ have improved, however be sure not to rely on frontpage-specific extensions for critical website content or functionality.
... some
versions of microsoft word create invalid html code that only works with internet explorer.
Writing JavaScript for XHTML - Archive of obsolete content
partially it is because, prior to
version 9, internet explorer was incapable of handling xhtml sent with the official xhtml media type at all.
... solution: avoid html-specific dom the html dom , even though it is compatible with xhtml 1.0, is not guaranteed to work with future
versions of xhtml (perhaps especially the formatting properties which have been deprecated as element attributes).
... in php, for example, you would write something like this: if( strpos( $_server['http_accept'], "application/xhtml+xml" ) ) { header( "content-type: application/xhtml+xml" ); echo '<?xml
version="1.0" ?>'."\n"; } else { header( "content-type: text/html" ); } this distinction also sends the xml declaration, which is strongly recommended, when the document is an xml file.
Implementation Status - Archive of obsolete content
forms-in-range supported 4.4.17 xforms-out-of-range supported 4.4.18 xforms-scroll-first xforms-scroll-last supported 4.4.19 xforms-submit-done supported 4.5 error indications partial we don't support the xforms-
version-exception event, yet 4.5.1 xforms-binding-exception supported 4.5.2 xforms-compute-exception supported 4.5.3 xforms-link-error partial not yet generated by load.
... 333782; 4.5.4 xforms-link-exception supported 4.5.5 xforms-output-exception unsupported 4.5.6 xforms-submit-error supported 4.5.7 xforms-
version-exception unsupported 4.6 event sequencing supported 4.6.1 for input, secret, textarea, range, or upload controls supported 4.6.2 for output controls supported 4.6.3 for select or select1 controls partial 4.6.4 for trigger controls supported 4...
...
version will return as "1.0" for now, until more 1.1 work is completed.
Visual typescript game engine - Game development
project : visual typescript game engine
version: sunshine - 2019 2d canvas game engine based on matter.js 2d physics engine for the web.
... written in typescript current
version 3.1.3.
... npm run broadcaster documentation : beta
version for documentation.
Microsoft Internet Explorer - MDN Web Docs Glossary: Definitions of Web-related terms
ie has gone through many releases and currently stands at
version 11.0.12, with desktop, mobile, and xbox console
versions available.
... formerly available on mac and unix, microsoft discontinued those
versions in 2003 and 2001 respectively.
... learn more general knowledge internet explorer on wikipedia history of internet explorer on wikipedia internet explorer
versions on wikipedia learning about internet explorer http://windows.microsoft.com/en-us/internet-explorer/download-ie http://windows.microsoft.com/en-us/windows7/getting-started-with-internet-explorer-9 http://windows.microsoft.com/en-us/internet-explorer/internet-explorer-help http://windows.microsoft.com/en-us/internet-explorer/make-ie-default-browser#ie=ie-11 technical reference http://windows.microsoft.com/en-us/internet-explorer/products/ie-8/system-requirements http://windows.microsoft.com/en-us/internet-explorer/products/ie-9/system-requirements http://support.microsoft.com/kb/969393 ...
Vendor Prefix - MDN Web Docs Glossary: Definitions of Web-related terms
css prefixes the major browsers use the following prefixes: -webkit- (chrome, safari, newer
versions of opera, almost all ios browsers including firefox for ios; basically, any webkit based browser) -moz- (firefox) -o- (old pre-webkit
versions of opera) -ms- (internet explorer and microsoft edge) sample usage: -webkit-transition: all 4s ease; -moz-transition: all 4s ease; -ms-transition: all 4s ease; -o-transition: all 4s ease; transition: all 4s ease; api prefixes historically, vendor...
... interface prefixes prefixes for interface names are upper-cased: webkit (chrome, safari, newer
versions of opera, almost all ios browsers (including firefox for ios); basically, any webkit based browser) moz (firefox) o (older, pre-webkit,
versions of opera) ms (internet explorer and microsoft edge) property and method prefixes the prefixes for properties and methods are lower-case: webkit (chrome, safari, newer
versions of opera, almost all ios browsers (including firefox for ios); basica...
...lly, any webkit based browser) moz (firefox) o (old, pre-webkit,
versions of opera) ms (internet explorer and microsoft edge) sample usage: var requestanimationframe = window.requestanimationframe || window.mozrequestanimationframe || window.webkitrequestanimationframe || window.orequestanimationframe || window.msrequestanimationframe; learn more general knowledge vendor prefix on wikipedia ...
HTML: A good basis for accessibility - Learn web development
i think is more interesting than the last one.</p> we've prepared a
version with longer text for you to try out with a screen reader (see good-semantics.html).
... if you try our longer
version out with a screen reader (see bad-semantics.html), you'll not have a very good experience — the screen reader hasn't got anything to use as signposts, so you can't retrieve a useful table of contents, and the whole page is seen as a single giant block, so it is just read out in one go, all at once.
...older
versions of screen reading software may not even announce the behavior.
HTML: A good basis for accessibility - Learn web development
i think is more interesting than the last one.</p> we've prepared a
version with longer text for you to try out with a screen reader (see good-semantics.html).
... if you try our longer
version out with a screen reader (see bad-semantics.html), you'll not have a very good experience — the screen reader hasn't got anything to use as signposts, so you can't retrieve a useful table of contents, and the whole page is seen as a single giant block, so it is just read out in one go, all at once.
...older
versions of screen reading software may not even announce the behavior.
Mobile accessibility - Learn web development
to turn it on, look up what phone model and android
version you have, and then look up where the talkback menu is.
... it tends to differ widely between android
versions and even between different phone models.
... ios voiceover a mobile
version of voiceover is built into the ios operating system.
Handling different text directions - Learn web development
these essentially replace physical properties — things like width and height — with logical, or flow relative
versions.
...if you are not using multiple writing modes then for now you might prefer to use the physical
versions.
... however, ultimately we expect that people will transition to the logical
versions for most things, as they make a lot of sense once you start also dealing with layout methods such as flexbox and grid.
Legacy layout methods - Learn web development
note: if you are having trouble getting the above example to work, try comparing it against our finished
version on github (see it running live also).
... note: if you are having trouble getting the above example to work, try comparing it against our finished
version on github (see it running live also).
...08333333%*5)); } .col.span7 { width: calc((6.25%*7) + (2.08333333%*6)); } .col.span8 { width: calc((6.25%*8) + (2.08333333%*7)); } .col.span9 { width: calc((6.25%*9) + (2.08333333%*8)); } .col.span10 { width: calc((6.25%*10) + (2.08333333%*9)); } .col.span11 { width: calc((6.25%*11) + (2.08333333%*10)); } .col.span12 { width: calc((6.25%*12) + (2.08333333%*11)); } note: you can see our finished
version in fluid-grid-calc.html (also see it live).
How CSS works - Learn web development
bear in mind that this is a very simplified
version of what happens when a browser loads a webpage, and that different browsers will handle the process in different ways.
...in addition, many people are not using the latest
version of a browser.
...old browsers will use the pixel
version, ignoring the line about calc() as they don't understand it.
CSS FAQ - Learn web development
for example, many developers only using the -webkit- prefixed
version of a property when the non-prefixed
version is supported across all browsers meant that a feature relying on that property would break in non-webkit-based browsers, completely needlessly.
... in fact most browsers now do not use css prefixes when implementing experimental features, instead implementing those features only on nightly browser
versions or similar.
... if you need to use prefixes in your work, you are advised to write your code in a way that uses the prefixed
versions first, but then includes a non-prefixed standard
version afterwards so it can automatically override the prefixed
versions where supported.
How do you set up a local testing server? - Learn web development
one of the easiest ways to do this for our purposes is to use python's simplehttpserver (or http.server, depending on the
version of python installed.) to do this: install python.
...to check python is installed, enter the following command: python -v # or you might have the py command available, # in which case try py -v this should return a
version number.
... enter the command to start up the server in that directory: # if python
version returned above is 3.x python3 -m http.server # on windows try "python" instead of "python3", or "py -3" # if python
version returned above is 2.x python -m simplehttpserver by default, this will run the contents of the directory on a local web server, on port 8000.
Client-side form validation - Learn web development
regular expressions are case-sensitive, but we've made it support capitalized as well as lower-case
versions using an extra "aa" pattern nested inside square brackets.
... you need to determine how to validate your data: string operations, type con
version, regular expressions, and so on.
...es you should read: smashingmagazine: form-field validation: the errors-only approach smashingmagazine: web form validation: best practices and tutorials six revision: best practices for hints and validation in web forms a list apart: inline validation in web forms an example that doesn't use the constraint validation api in order to illustrate this, the following is a simplified
version of the previous example that works with legacy browsers.
UI pseudo-classes - Learn web development
let's go in and look at a simple example of :valid/:invalid (see valid-invalid.html for the live
version, and also check out the source code).
...orm controls using the :read-only and :read-write pseudo-classes, like so: input:-moz-read-only, textarea:-moz-read-only, input:read-only, textarea:read-only { border: 0; box-shadow: none; background-color: white; } textarea:-moz-read-write, textarea:read-write { box-shadow: inset 1px 1px 3px #ccc; border-radius: 5px; } firefox only supported these pseudo-classes with a prefix up to
version 78; at which point it started to support the unprefixed
version.
... let's look at a couple of modified
versions of the previous example that remind the user what the default option was, and style the radio buttons when indeterminate.
Index - Learn web development
it allows you to upload code repositories for storage in the git
version control system.
...consider the sites that you visit on your phone — it is probably fairly unusual to come across a site that is the desktop
version scaled down, or where you need to scroll sideways to find things.
... 268 git and github beginner, github, learn, web, git all developers will use some kind of
version control system (vcs), a tool to allow them to collaborate with other developers on a project without danger of them overwriting each other's work, and roll back to previous
versions of the code base if a problem is discovered later on.
Introducing asynchronous JavaScript - Learn web development
a good example is the fetch() api, which is basically like a modern, more efficient
version of xmlhttprequest.
... let's look at a quick example, from our fetching data from the server article: fetch('products.json').then(function(response) { return response.json(); }).then(function(json) { products = json; initialize(); }).catch(function(err) { console.log('fetch problem: ' + err.message); }); note: you can find the finished
version on github (see the source here, and also see it running live).
... promises avoid in
version of control, unlike old-style callbacks, which lose full control of how the function will be executed when passing a callback to a third-party library.
What went wrong? Troubleshooting JavaScript - Learn web development
an erroneous example to get started, let's return to our number guessing game — except this time we'll be exploring a
version that has some deliberate errors introduced.
... note: you might well have your own
version of the game example that doesn't work, which you might want to fix!
... we'd still like you to work through the article with our
version, so that you can learn the techniques we are teaching here.
Inheritance in JavaScript - Learn web development
note: if you have trouble getting this to work, compare your code to our finished
version (see it running live also).
... note: if you have trouble getting this to work, have a look at our finished
version (see it running live also).
... let's look at a rewritten
version of the person example, class-style: class person { constructor(first, last, age, gender, interests) { this.name = { first, last }; this.age = age; this.gender = gender; this.interests = interests; } greeting() { console.log(`hi!
The business case for web performance - Learn web development
it highlights the importance of understanding how cumulative experiences impact con
version and retention rates.
...here are some kpis to consider: con
version rate the percent of your traffic that takes an intended action, such as completing a purchase or signing up for a newsletter.
...this can lead to low con
version rates.
Multimedia: video - Learn web development
the goal is to offer smaller
versions ahead of larger
versions.
... with the smallest
version, make sure that the most compressed video still looks good.
...this is the ffmpeg command string to remove audio: ffmpeg -i original.mp4 -an -c:v copy audiofree
version.mp4 video preload the preload attribute has three available options: auto|metadata|none.
Getting started with Ember - Learn web development
ember also has immense backwards and forwards compatibility to help businesses stay up to date with the latest
versions of ember and latest community-driven conventions.
... getting started the rest of the ember material you'll find here consists of a multi-part tutorial, in which we'll make a
version of the classic todomvc sample app, teaching you how to use the essentials of the ember framework along the way.
... here is the completed ember
version, for reference.
Dynamic behavior in Svelte: working with variables and props - Learn web development
repl to code along with us using the repl, start at https://svelte.dev/repl/c862d964d48d473ca63ab91709a0a5a0?
version=3.23.2 working with todos our todos.svelte component is currently just displaying static markup; let's start making it a bit more dynamic.
... replace the existing <ul> element with the following simplified
version to get an idea of how it works: <ul> {#each todos as todo, index (todo.id)} <li> <input type="checkbox" checked={todo.completed}/> {index}.
... repl to see the current state of the code in a repl, visit: https://svelte.dev/repl/99b9eb228b404a2f8c8959b22c0a40d3?
version=3.23.2 summary that will do for now!
Client-side tooling overview - Learn web development
source code control also known as
version control systems (vcs), source code control is essential for backing work up and working in teams.
... a typical vcs involves having a local
version of the code that you make changes to.
... you then "push" changes to a "master"
version of the code inside a remote repository stored on a server somewhere.
Learn web development
tools and testing this topic covers the tools developers use to facilitate their work, such as cross-browser testing tools, linters, formatters, transformation tools,
version control systems, deployment tools, and client-side javascript frameworks.
...this is the underlying
version control system software that github works on top of.
... you can update the learning-area repository with any changes made to the master
version on github with the following steps: in your command prompt/terminal, go inside the learning-area directory using cd.
Cookies Preferences in Mozilla
network.cookie.cookiebehavior default value: 0 0 = accept all cookies by default 1 = only accept from the originating site (block third party cookies) 2 = block all cookies by default 3 = use p3p settings (note: this is only applicable to older mozilla suite and seamonkey
versions.) 4 = storage access policy: block cookies from trackers network.cookie.lifetimepolicy default value: 0 0 = accept cookies normally 1 = prompt for each cookie (prompting was removed in firefox 44) 2 = accept for current session only 3 = accept for n days network.cookie.lifetime.days default value: 90 only used if network.cookie.lifetimepolicy is set to 3 sets the number of days that t...
...okie.maxperhost default value: 50 configures the maximum amount of cookies to be stored per host valid range is from 0-65535, rfc 2109 and 2965 require this to be at least 20 network.cookie.disablecookieformailnews default value: true true = do not accept any cookies from within mailnews or from mail-style uris false = allow cookies in these situations this preference is applicable to all
versions of seamonkey.
...earlier
versions of thunderbird only allowed cookies on rss feeds.
Simple SeaMonkey build
you can build a bleeding-edge, development
version of seamonkey using the commands below.
...(for some mac os x
versions, you will find it in a directory called "optional installs".) install macports.
...see windows sdk
versions for a quick guide.
Simple Thunderbird build
this page covers the basic steps needed to build a bleeding-edge, development
version of thunderbird 60 or later.
... to also build lightning when building thunderbird (deprecated) note: the lightning calendar add-on was integrated into thunderbird starting with
version 74.
... add the following line to your mozconfig file: ac_add_options --enable-calendar to add that line you can do this in the source/ directory: echo 'ac_add_options --enable-calendar' >> mozconfig building before you start, make sure that the
version you checked out is not busted.
Updating NSPR or NSS in mozilla-central
check for new or removed files $ hg addremove -n review the output to make sure it looks correct update the minimum required system nss
version in old-configure.in.
...for example, in the following, "3.16.1" would be replaced with the new nss
version.
... moz_arg_with_bool(system-nss, [ --with-system-nss use system installed nss], _use_system_nss=1 ) if test -n "$_use_system_nss"; then am_path_nss(3.16.1, [moz_native_nss=1], [ac_msg_error([you don't have nss installed or your
version is too old])]) fi commit the update: $ hg commit -a in order to eliminate any problems related to how nss and nspr are built differently in firefox than they are standalone, you should push your commit to try first.
Eclipse CDT
if you use mac, you may want to build the latest fsf
version of gdb and set eclipse to use that gdb for debugging.
...(update 2017-03-28: the option index all header variants has been added in
version 8.3.0, as explained in a comment of the mentioned bug.
... how can i run a more recent cdt
version?
Index
8 experimental features in firefox experimental, firefox, preferences, features this page lists features that are in nightly
versions of firefox along with information on how to activate them, if necessary.
... 141 index firefox, index, mozilla found 168 pages: 142 linux compatibility matrix the following table lists the available library
versions for the mozilla.org-distributed firefox builds dependencies, and/or to build firefox.
... 171 tracking protection privacy, private browsing, blocking, tracking starting in
version 42, firefox desktop and firefox for android include built-in tracking protection.
Linux compatibility matrix
the following table lists the available library
versions for the mozilla.org-distributed firefox builds dependencies, and/or to build firefox.
... distribution kernel glibc glib gtk+2 gtk+3 pixman stdc++ gcc clang python3 released eol notes red backgrounds denote lack of compatibility with current
versions of firefox.
... in the eol column, they denote distribution
versions past their end of life.
HTTP Cache
this document describes the new http cache
version 2.
...a particular app cache
version in a group) in hands, this storage will provide read and write access to entries in that application cache; when the app cache is not specified, this storage will operate over all existing app caches the service also provides methods to clear the whole disk and memory cache content or purge any intermediate memory structures: clear – after it returns, all entries are no...
... the server responses with a 200 response which means the cached content is no longer valid and a new
version must be loaded from the network.
UpdateInfo
updateinfo objects hold information about available
versions of add-ons and are generated as a result of an update check performed by addonupdatechecker.
... attributes attribute type description
version string the
version of the update.
...each item in the array contains "id", "min
version", and "max
version" properties.
CustomizableUI.jsm
note: if your extension is compatible with
versions of firefox below 29, i.e.
...to avoid that, update your chrome manifest file with links to two different
versions of xul overlay, using manifest flags.
... removeextratoolbar() remove a custom toolbar added in a previous
version of firefox or using an add-on.
Index
24 localizing with mercurial build documentation, internationalization, localization in mozilla, we use the the mercurial
version control system (hg) to manage our source code and localizations.
...localizing current
versions of firefox, thunderbird and seamonkey includes working with mercurial.
...repeating the process allows a localizer to create a testable package to see his or her work as they progress to a final
version.
Patching a Localization
next thing you need to know is which localization
version you want to patch.
...the repository for this
version is releases/l10n/mozilla-aurora.
... cd ~/localization-workdir clone the localization repository for your locale and for the
version you want to patch: hg clone http://hg.mozilla.org/releases/l10n/mozilla-aurora/gl now that you have the code and your working directory, edit the dtd and properties files to make your necessary changes.
Creating localizable web applications
note: most of the code snippets used in the examples below come from an early
version of the getpersonas.com website.
... simplify localized
versions if necessary oftentimes, it is better to slightly simplify the localized
version of your web application than to serve a mix of localized and english content.
... for example, if not all the pages of your website are going to be localized, you may consider removing links to the english-only pages from the navigation (headers, footers, sidebars) in the localized
versions.
What every Mozilla translator should know
when a development is started for an specific
version, a new repository is created under hg.mozilla.org/releases/.
... all the content of the trunk is copied to this new branch so that the developing work is done in two (or more) parallel places: the generic trunk and the
version oriented branch(es).
... some branch/release names identified: mozilla source + en-us localization files for [ab-cd] locale corresponding firefox
version branches in hg mozilla-central l10n-central firefox.next (trunk) mozilla-1.9.2 l10n-mozilla-1.9.2 firefox 3.6 mozilla-1.9.1 l10n-mozilla-1.9.1 firefox 3.5 and, on the former revision control system, cvs: cvs trunk (the default branch) -> firefox/thunderbird 3.0.x branch mozilla_1_8_branch -> firefox/thunderbird 2.0 branch mozilla cross-reference mozilla cross-reference is a web site mirroring the content of the hg server.
Fonts for Mozilla's MathML engine
note:cambria math is installed by default on windows 7 and later
versions and should ensure relatively good mathml rendering.
... note: a deprecated
version of stix is preinstalled starting with os x lion and should ensure relatively good mathml rendering.
...typically, use a fontconfig configuration /etc/fonts/conf.avail/09-texlive-fonts.conf that points to the opentype directory of texlive, such as: <?xml
version="1.0"?> <!doctype fontconfig system "fonts.dtd"> <fontconfig> <dir>/your/path/to/texmf-dist/fonts/opentype</dir> </fontconfig> finally, add this configuration file to the system font location list and regenerate the fontconfig cache: ln -sf /etc/fonts/conf.avail/09-texlive-fonts.conf /etc/fonts/conf.d/ fc-cache -sf android you must use the mathml-fonts add-on.
Updates
this new
version comes with several bug fixes and new features for mathml.
... june 11, 2010 stix fonts
version 1.0 are now compatible with trunk.
... may 28, 2010 stix fonts
version 1.0 released.
Mozilla Development Tools
mozilla source code (mercurial and cvs) "trunk" development for gecko 1.9.1/firefox 3.5 and beyond uses the mercurial source code
version control system.
... earlier releases and other products use the cvs
version control system.
... mxr you can browse the up-to-the-minute latest
version of the source code online through a massively-hyperlinked source code browser (based on lxr) that lets you cross-reference function and variable names.
Introduction to NSPR
the current implementation of nspr allows developers to compile a single source code base on macintosh (ppc), win32 (nt 3.51, nt 4.0, win'95), and over twenty
versions of unix.
...other systems are not thread-aware, and their runtime libraries not thread-safe (most
versions of unix).
...in addition to these annotated html
versions, the same samples are available in pure source form.
Network Addresses
network address types and constants network address functions the api described in this chapter recognizes the emergence of internet protocol
version 6 (ipv6).
...by using these functions with other network address functions, clients can support either
version 4 or
version 6 of the internet protocol transparently.
... all nspr functions that require prnetaddr as an argument accept either an ipv4 or ipv6
version of the address.
PR_dtoa
mode the type of con
version to employ.
... decpt a pointer to a memory location where the runtime will store the offset, relative to the beginning of the output string, of the con
version's decimal point.
... sign a location where the runtime can store an indication that the con
version was of a negative value.
PR_htonl
performs 32-bit con
version from host byte order to network byte order.
... syntax #include <prnetdb.h> pruint32 pr_htonl(pruint32 con
version); parameter the function has the following parameter: con
version the 32-bit unsigned integer, in host byte order, to be converted.
... returns the value of the con
version parameter in network byte order.
PR_htons
performs 16-bit con
version from host byte order to network byte order.
... syntax #include <prnetdb.h> pruint16 pr_htons(pruint16 con
version); parameter the function has the following parameter: con
version the 16-bit unsigned integer, in host byte order, to be converted.
... returns the value of the con
version parameter in network byte order.
PR_ntohl
performs 32-bit con
version from network byte order to host byte order.
... syntax #include <prnetdb.h> pruint32 pr_ntohl(pruint32 con
version); parameter the function has the following parameter: con
version the 32-bit unsigned integer, in network byte order, to be converted.
... returns the value of the con
version parameter in host byte order.
PR_ntohs
performs 16-bit con
version from network byte order to host byte order.
... syntax #include <prnetdb.h> pruint16 pr_ntohs(pruint16 con
version); parameter the function has the following parameter: con
version the 16-bit unsigned integer, in network byte order, to be converted.
... returns the value of the con
version parameter in host byte order.
Running NSPR tests
timetest passed tpd passed udpsrv passed vercheck passed
version passed writev passed xnotify passed zerolen passed end mon mar 12 11:55:47 pdt 2007 how to determine if the test suite passed if all the tests reported passed as the results, the test suite passed.
...until the test failures are fixed, you should run nspr tests against a known good
version of nspr on the same platform, and save the test results as the benchmark.
... then you can detect regressions of the new
version by comparing its test results with the benchmark.
An overview of NSS Internals
the public keys that are exchanged between parties are transported using a container; the container is called a certificate, following standard x.509
version 3.
...examples for the database files are key3.db and cert8.db, where the numbers are file
version numbers.
...(tls is a newer
version of ssl with enhanced features.) when establishing an ssl connection to a server, (at least) a server certificate (and its trust chain) is exchanged from the server to the client (e.g., the browser), and the client verifies that the certificate can be verified (including matching the name of the expected destination server).
Certificate functions
the nss
version column indicates which
versions of nss support the function.
... function name/documentation source code nss
versions cert_addcerttolisttail mxr 3.2 and later cert_addextension mxr 3.5 and later cert_addocspacceptableresponses mxr 3.6 and later cert_addokdomainname mxr 3.4 and later cert_addrdn mxr 3.2.1 and later cert_asciitoname mxr 3.2 and later cert_cachecrl mxr 3.10 and later cert_clearocspcache mxr 3.11.7 and later cert_certchainfromcert mxr 3.2 and later cert_certlistfromcert mxr 3.2 and later cert_certtimesvalid mxr 3.2 and later cert_changecerttrust mxr 3.2 and later cert_checkcertvalidtimes mxr 3.2 and later cert_checknamespace mxr...
... cert_getcertuid mxr 3.2 and later cert_getclassicocspdisabledpolicy mxr 3.12 and later cert_getclassicocspenabledhardfailurepolicy mxr 3.12 and later cert_getclassicocspenabledsoftfailurepolicy mxr 3.12 and later cert_getcommonname mxr 3.2 and later cert_getcountryname mxr 3.2 and later cert_getdbcontent
version mxr 3.2 and later cert_getdefaultcertdb mxr 3.2 and later cert_getdomaincomponentname mxr 3.2 and later cert_getfirstemailaddress mxr 3.7 and later cert_getlocalityname mxr 3.2 and later cert_getnextemailaddress mxr 3.7 and later cert_getnextgeneralname mxr 3.10 and later cert_getnextnameconst...
NSS FAQ
because nss provides complete support for all
versions of ssl and tls, it is particularly well-suited for applications that need to communicate with the many clients and servers that already support the ssl protocol.
...to permit its use in as many contexts as possible, nss is licensed under the mozilla public license,
version 2.
... nss is available under the mozilla public license,
version 2.
HTTP delegation
background up to
version 3.11, nss connects directly over http to an ocsp responder to make the request and fetch the response.
...this nss feature is currently targeted to first appear in nss
version 3.11.1.
...look at sec_httpclientfcn, which is a (
versioned) table of function pointers.
HTTP delegation
background up to
version 3.11, nss connects directly over http to an ocsp responder to make the request and fetch the response.
...this nss feature is currently targeted to first appear in nss
version 3.11.1.
...look at sec_httpclientfcn, which is a (
versioned) table of function pointers.
4.3.1 Release Notes
platform information you can check out the source from cvs by cvs co -r jss_4_3_1_rtm jss jss 4.3.1 works with jdk
versions 4 or higher we suggest the latest.
...the 4.3.1
version of libjss4.so/jss4.dll must only be used with jss4.jar.
...to obtain the
version info from the jar file use, "system.out.println(org.mozilla.jss.cryptomanager.jar_jss_
version)" and to check the shared library: strings libjss4.so | grep -i header feedback bugs discovered should be reported by filing a bug report with bugzilla.
4.3 Release Notes
platform information jss 4.3 works with jdk
versions 4 or higher we suggest the latest.
... the 4.3
version of libjss4.so/jss4.dll must only be used with jss4.jar.
... to obtain the
version info from the jar file use, "system.out.println(org.mozilla.jss.cryptomanager.jar_jss_
version)" and to check the shared library: strings libjss4.so | grep -i header feedback bugs discovered should be reported by filing a bug report with bugzilla.
Build instructions for JSS 4.3.x
jss supports java
version 1.5 or later.
... you must have perl
version 5.005 or later.
...(see jss faq) the "win95" configuration supports all
versions of windows.
NSS_3.12_release_notes.html
nss 3.12 libraries have the following
versions: sqlite3: 3.3.17 nssckbi: 1.70 softokn3 and freebl3: 3.12.0.3 other nss libraries: 3.12.0.3 new in nss 3.12 3 new shared library are shipped with nss 3.12: nssutil sqlite nssdbm 1 new include file is shipped with nss3.12: utilrename.h new functions in the nss shared library: cert_checknamespace (see cert.h) cert_encodecertpoliciesextension (see cert.h) cert_encodeinfoaccessextension ...
...e_testing_on_fresh_info cert_rev_mi_test_each_method_separately cert_rev_mi_test_all_local_information_first cert_rev_mi_no_overall_info_requirement cert_rev_mi_require_some_fresh_info_available cert_policy_flag_no_mapping cert_policy_flag_explicit cert_policy_flag_no_any cert_enable_ldap_fetch cert_enable_http_fetch new macro in utilrename.h: smime_aes_cbc_128 the nssckbi pkcs #11 module's
version changed to 1.70.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.16.2.3 release notes
new functionality tls_fallback_scsv is a signaling cipher suite value that indicates a handshake is the result of tls
version fallback.
... in sslproto.h tls_fallback_scsv - a a signaling cipher suite value that indicates a handshake is the result of tls
version fallback.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.17.1 release notes
new functionality tls_fallback_scsv is a signaling cipher suite value that indicates a handshake is the result of tls
version fallback.
... in sslproto.h tls_fallback_scsv - a a signaling cipher suite value that indicates a handshake is the result of tls
version fallback.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.20 release notes
nss embeds fixed dhe parameters sized 2048, 3072, 4096, 6144 and 8192 bits, which were copied from
version 08 of the internet-draft "negotiated finite field diffie-hellman ephemeral parameters for tls", appendix a.
...in future
versions of the tls implementation, a tls client might show a preference for certain dhe parameters, and the nss tls server side implementation might select a matching entry from the set of parameters that have been configured as preferred on the server side.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.21 release notes
missing_extended_master_secret - error code for when the extended master secret is missing after having been negotiated ssl_error_unexpected_extended_master_secret - error code for receiving an extended master secret when previously not negotiated in sslt.h ssl_enable_extended_master_secret - configuration to enable the tls extended master secret extension (rfc 7627) ssl_preinfo_
version - used with sslpreliminarychannelinfo to indicate that a tls
version has been selected ssl_preinfo_cipher_suite - used with sslpreliminarychannelinfo to indicate that a tls cipher suite has been selected ssl_preinfo_all - used with sslpreliminarychannelinfo to indicate that all preliminary information has been set notable changes in nss 3.21 nss now builds with elliptic curve ciph...
...fication authority of wosign g2 sha1 fingerprint: fb:ed:dc:90:65:b7:27:20:37:bc:55:0c:9c:56:de:bb:f2:78:94:e1 cn = ca wosign ecc root sha1 fingerprint: d2:7a:d2:be:ed:94:c0:a1:3c:c7:25:21:ea:5d:71:be:81:19:f3:2b cn = oiste wisekey global root gb ca sha1 fingerprint: 0f:f9:40:76:18:d3:d7:6a:4b:98:f0:a8:35:9e:0c:fd:27:ac:cc:ed the
version number of the updated root ca list has been set to 2.6 bugs fixed in nss 3.21 this bugzilla query returns all the bugs fixed in nss 3.21: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classification=components&query_format=advanced&product=nss&target_milestone=3.21 acknowledgements the nss development team would like to thank karthikeyan bhargavan from inria for responsibly disc...
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.27 release notes
added support for rsa-pss signatures in tls 1.2 and tls 1.3 new functions in ssl.h ssl_namedgroupconfig notable changes in nss 3.27 update 2016-10-02: the maximum tls
version supported has been increased to tls 1.3 (draft).
... although the maximum tls
version enabled by default is still tls 1.2, there are applications that query the list of tls protocol
versions supported by nss, and enable all supported
versions.
...applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.29.1 release notes
bugs fixed in nss 3.29.1 nss
version 3.28, 3.28.1, 3.28.2 and 3.29 contained changes that were in violation with the nss compatibility promise.
... compatibility nss 3.29.1 shared libraries are backward compatible with most older nss 3.x shared libraries, but depending on your application, may be incompatible, if you application has been compiled against header files of
versions 3.28, 3.28.1, 3.28.2 nss 3.29.1.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.32 release notes
72:48:49:cd:5d:27:cb:69 cn = utn-userfirst-hardware sha-256 fingerprint: 6e:a5:47:41:d0:04:66:7e:ed:1b:48:16:63:4a:a3:a7:9e:6e:4b:96:95:0f:82:79:da:fc:8d:9b:d8:81:21:37 cn = utn-userfirst-object sha-256 fingerprint: 6f:ff:78:e4:00:a7:0c:11:01:1c:d8:59:77:c4:59:fb:5a:f9:6a:3d:f0:54:08:20:d0:f4:b8:60:78:75:e5:8f bugs fixed in nss 3.32 nss
versions 3.28.x, 3.29.x.
...nss
version 3.32 fixed this bug.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.42 release notes
bugs fixed in nss 3.42 bug 1490006 - reject invalid ch.legacy_
version in tls 1.3 bug 1507135 and bug 1507174 - add additional null checks to several cms functions to fix a rare cms crash.
... bug 1513913 - a fix for solaris where firefox 60 core dumps during start when using profile from
version 52 this bugzilla query returns all the bugs fixed in nss 3.42: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classification=components&query_format=advanced&product=nss&target_milestone=3.42 compatibility nss 3.42 shared libraries are backward compatible with all older nss 3.x shared libraries.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.46 release notes
0d3 bug 1566569 - remove swisscom root ca 2 root certificate sha-256 fingerprint: f09b122c7114f4a09bd4ea4f4a99d558b46e4c25cd81140d29c05613914c3841 upcoming changes to default tls configuration the next nss team plans to make two changes to the default tls configuration in nss 3.47, which will be released in october: tls 1.3 will be the default maximum tls
version.
... bugs fixed in nss 3.46 bug 1572164 - don't unnecessarily free session in nsc_wrapkey bug 1574220 - improve controls after errors in tstcln, selfserv and vfyserv cmds bug 1550636 - upgrade sqlite in nss to a 2019
version bug 1572593 - reset advertised extensions in ssl_constructextensions bug 1415118 - nss build with ./build.sh --enable-libpkix fails bug 1539788 - add length checks for cryptographic primitives (cve-2019-17006) bug 1542077 - mp_set_ulong and mp_set_int should return errors on bad values bug 1572791 - read out-of-bounds in der_decodetimechoice_util from sslexp_delegatecredential bug 1560593 - cleanup.sh script does not set error exit code ...
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
sample2
efine ns_cert_vfy_header "-----begin certificate for signature verification-----" #define ns_cert_vfy_trailer "-----end certificate for signature verification-----" #define ns_sig_header "-----begin signature-----" #define ns_sig_trailer "-----end signature-----" #define ns_cert_header "-----begin certificate-----" #define ns_cert_trailer "-----end certificate-----" /* missing publically from nss
versions earlier than 3.13 */ #ifndef sec_error_base #define sec_error_base (-0x2000) typedef enum { sec_error_io = sec_error_base + 0, sec_error_token_not_logged_in = (sec_error_base + 155), sec_error_end_of_list } secerrorcodes; #endif /* port_errortostring introduced in nss 3.13.
... on earlier
versions of nss that * don't support error tables, pr_errortostring will return "unknown code".
...gorithmoidtag(privkey->keytype, hashalgtag); if (algid == sec_oid_unknown) { pr_fprintf(pr_stderr, "unknown key or hash type for issuer.\n"); goto cleanup; } rv = secoid_setalgorithmid(arena, &cert->signature, algid, 0); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not set signature algorithm id.\n%s\n", port_errortostring(rv)); goto cleanup; } /* we only deal with cert v3 here */ *(cert->
version.data) = 2; cert->
version.len = 1; der.len = 0; der.data = null; dummy = sec_asn1encodeitem (arena, &der, cert, sec_asn1_get(cert_certificatetemplate)); if (!dummy) { pr_fprintf(pr_stderr, "could not encode certificate.\n"); goto cleanup; } result = (secitem *) port_arenazalloc (arena, sizeof (secitem)); if (result == null) { pr_fprintf(pr_stderr, "could not allocate item for certificate data.\n")...
nss tech note4
} extensions++; } } an example custom cert extension struct _mycertextdata { secitem
version; secitem streetaddress; secitem phonenum; secitem rfc822name; secitem id; secitem maxusers; }; typedef struct _mycertextdata mycertextdata; /* template used for decoding the extension */ const sec_asn1template mycertexttemplate[] = { { sec_asn1_sequence, 0, null, sizeof( mycer...
...textdata ) }, { sec_asn1_integer, offsetof(mycertextdata,
version) }, { sec_asn1_octet_string, offsetof( mycertextdata, streetaddress ) }, { sec_asn1_octet_string, offsetof( mycertextdata, phonenum ) }, { sec_asn1_octet_string, offsetof( mycertextdata, rfc822name ) }, { sec_asn1_octet_string, offsetof( mycertextdata, id ) }, { sec_asn1_integer, offsetof(mycertextdata, maxusers ) }, { 0 } }; /* oid for my cert extension - replace 0xff with appropriate values*/ static const unsigned char myoid[] = { 0xff, 0xff, 0xff, 0xff, ....
... /* free the secitem fields */ secitem_freeitem(&data.
version, pr_false); secitem_freeitem(&data.streetaddress, pr_false); ......
NSS tools : certutil
for example: $ certutil -t -d sql:/home/my/sharednssdb -h nethsm -0 secret upgrading or merging the security databases many networks or applications may be using older berkeleydb
versions of the certificate database (cert8.db).
... databases can be upgraded to the new sqlite
version of the database (cert9.db) using the --upgrade-merge command option or existing databases can be merged with the new cert9.db databases using the ---merge command.
...the last
versions of these legacy databases are: * cert8.db for certificates * key3.db for keys * secmod.db for pkcs #11 module information berkeleydb has performance limitations, though, which prevent it from being easily used by multiple applications simultaneously.
NSS tools : pk12util
return codes o 0 - no error o 1 - user cancelled o 2 - usage error o 6 - nls init error o 8 - certificate db open error o 9 - key db open error o 10 - file initialization error o 11 - unicode con
version error o 12 - temporary file creation error o 13 - pkcs11 get slot error o 14 - pkcs12 decoder start error o 15 - error read from import file o 16 - pkcs12 decode error o 17 - pkcs12 decoder verify error o 18 - pkcs12 decoder validate bags error o 19 - pkcs12 decoder import bags error o 20 - key db con
version version 3 to
version 2 error o 21 - cert db con
version version 7 to
version 5 e...
...id encryption algorithm: pkcs #12 v2 pbe with sha-1 and 3key triple des-cbc parameters: salt: 45:2e:6a:a0:03:4d:7b:a1:63:3c:15:ea:67:37:62:1f iteration count: 1 (0x1) certificate: data:
version: 3 (0x2) serial number: 13 (0xd) signature algorithm: pkcs #1 sha-1 with rsa encryption issuer: "e=personal-freemail@thawte.com,cn=thawte personal freemail c a,ou=certification services division,o=thawte consulting,l=cape t own,st=western cape,c=za" alternatively, the -r prints the certificates and then exports them into separate der binary files.
... the last
versions of these legacy databases are: o cert8.db for certificates o key3.db for keys o secmod.db for pkcs #11 module information berkeleydb has performance limitations, though, which prevent it from being easily used by multiple applications simultaneously.
S/MIME functions
the nss
version column indicates which
versions of nss support the function.
... function name/documentation source code nss
versions nss_cmscontentinfo_getbulkkey mxr 3.2 and later nss_cmscontentinfo_getbulkkeysize mxr 3.2 and later nss_cmscontentinfo_getcontent mxr 3.2 and later nss_cmscontentinfo_getcontentencalgtag mxr 3.2 and later nss_cmscontentinfo_getcontenttypetag mxr 3.2 and later nss_cmscontentinfo_setbulkkey mxr 3.2 and later nss_cmscontentinfo_setcontent mxr 3.2 and later nss_cmscontentinfo_setcontent_data mxr 3.2 and later nss_cmscontentinfo_setcontentencalg mxr 3.2 and later ...
... mxr 3.2 and later nss_cmssignerinfo_getsigneremailaddress mxr 3.2 and later nss_cmssignerinfo_getsigningcertificate mxr 3.2 and later nss_cmssignerinfo_getsigningtime mxr 3.2 and later nss_cmssignerinfo_getverificationstatus mxr 3.2 and later nss_cmssignerinfo_get
version mxr 3.2 and later nss_cmssignerinfo_includecerts mxr 3.2 and later nss_cmsutil_verificationstatustostring mxr 3.2 and later nss_smimesignerinfo_savesmimeprofile mxr 3.4 and later nss_smimeutil_findbulkalgforrecipients mxr 3.2 and later ...
TLS Cipher Suite Discovery
each new release of a tls implementation may contain support for new cipher suites not supported in previous
versions.
... when a new
version of a tls implementation is made available for use by applications, those applications may wish to immediately use the newly supported cipher suites found in the new
version, without the application needing to be modified and re-released to know about these new cipher suites.
... to that end, nss's libssl offers a way for applications to discover at run time the set of cipher suites supported by that
version of libssl.
NSS_3.12.3_release_notes.html
if set to "disabled", softoken will ignore forks, and behave as it did in older
versions.
... bug 478171: consolidate the coreconf/xxx.mk files for windows bug 478563: add _msc_ver (the cl
version) to coreconf.
... furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS Tools modutil
if the current platform cannot be found in the list of supported platforms, then the forwardcompatible list is checked for any platforms that have the same os and architecture in an earlier
version.
..."netscape internal pkcs #11 module" -dbdir c:\databases the security module database tool displays information similar to this: using database directory c:\databases...--------------------------------------------------------name: netscape internal pkcs #11 modulelibrary file: **internal only module**manufacturer: netscape communications corp description: communicator internal crypto svcpkcs #11
version 2.0library
version: 4.0cipher enable flags: nonedefault mechanism flags: rsa:dsa:rc2:rc4:des:sha1:md5:md2slot: communicator internal cryptographic services
version 4.0manufacturer: netscape communications corp type: software
version number: 4.1firmware
version: 0.0status: enabledtoken name: communicator generic crypto svcstoken manufacturer: netscape communications corp token model: libsec 4.0 tok...
...en serial number: 0000000000000000token
version: 4.0token firmware
version: 0.0access: write protectedlogin type: public (no login required)user pin: not initializedslot: communicator user private key and certificate servicesmanufacturer: netscape communications corp type: software
version number: 3.0firmware
version: 0.0status: enabledtoken name: communicator certificate db token manufacturer: netscape communications corp token model: libsec 4.0 token serial number: 0000000000000000token
version: 7.0token firmware
version: 0.0access: not write protectedlogin type: login requireduser pin: not initialized setting a default provider this example makes the specified module a default provider for the rsa, dsa, and rc2 security mechanisms: modutil -default "cryptographic module" -dbdir c:\databa...
Installing Pork
the recommended
version of gcc is gcc 4.2.
...note: once you do this, you can only use this
version of gcc in -m32 mode.
... apply this patch: note: this doesn't seem necessary in the latest
version; cppflags is already an argument.
Rhino JavaScript compiler
-
version versionnumber specifies the language
version to compile with.
... the string
versionnumber must be one of 100, 110, 120, 130, 140, 150, 160, or 170.
... see javascript language
versions for more information on language
versions.
Rhino requirements and limitations
requirements recent
versions of rhino have only been tested with jdk 1.4 and greater.
... older
versions support jdks as early as 1.1.
...t field is retrieved lazily, and can be counter-intuitively affected by later assignments: javaobj.fieldandmethod = 5; var field = javaobj.fieldandmethod; javaobj.fieldandmethod = 7; // now, field == 7 you can work around this by forcing the field value to be converted to a javascript type when you take its value: javaobj.fieldandmethod = 5; var field = javaobj.fieldandmethod + 0; // force con
version now javaobj.fieldandmethod = 7; // now, field == 5 jsobject rhino does not support the netscape.javascript.jsobject class.
Shumway
the simple method is to install the shumway extension (or run a browser
version with shumway included and enabled) and browse to your flash content with adobe flash player set "ask to activate" or "never activate" in firefox's add-ons menu (this will be listed as "shockwave flash" under the plugins tab).
... this will be the experience met by your users who are running that
version of shumway.
...it can be run locally through a web server or you can use the
version hosted on mozilla's github.
Getting SpiderMonkey source code
downloading gzipped spidermonkey source code you can download gzipped spidermonkey source code from the following urls: http://ftp.mozilla.org/pub/spidermonkey/releases/ http://ftp.mozilla.org/pub/spidermonkey/prereleases/ here is a command-line example of downloading and unzipping spidermonkey source code
version 59.0: mkdir mozilla cd mozilla wget http://ftp.mozilla.org/pub/spidermonkey/prereleases/59/pre1/mozjs-59.0a1.0.tar.bz2 tar xvf mozjs-59.0a1.0.tar.bz2 these commands should work on most platforms including windows, as long as on windows you are using the mozillabuild bash shell.
... git clone https://github.com/mozilla/gecko-dev.git cd gecko-dev/js/src if you want a faster (about 5 times as of january 2015) download, try doing a shallow clone (no
version control history).
... if you also want the regression tests, add this command: cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co mozilla/js/tests getting older branch
versions of spidermonkey if you want to experiment with a specific branch's
version of spidermonkey, you need to check out js/src from branch but check out editline and config from trunk: cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co -l -r branch_name mozilla/js/src mozilla/js/src/fdlibm cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co -l mozilla/js/src/config mozilla/js/src/...
Hacking Tips
>> () #6 0x00007ffff7f4423d in <<jitframe_baselinejs>> () #7 0x00007ffff7f4222e in <<jitframe_baselinestub>> () #8 0x00007ffff7f4326a in <<jitframe_baselinejs>> () #9 0x00007ffff7f38d5f in <<jitframe_entry>> () #10 0x00000000006a86de in enterbaseline(jscontext*, js::jit::enterjitdata&) (cx=0x14f2640, data=...) at js/src/jit/baselinejit.cpp:150 note, when you enable the unwinder, the current
version of gdb (7.10.1) does not flush the backtrace.
... gdb has the ability to set breakpoints with commands, but a simpler / friendlier
version is to use dprintf, with a location, and followed by printf-like arguments.
... my workflow for doing this is as follows: build a
version of the engine with --enable-debug and --enable-oom-breakpoint configure flags.
SpiderMonkey Internals
public apis the public c/c++ interface, called the jsapi, is in most places a thin (but source-compatible across
versions) layer over the implementation.
...line 30 => pc 154 => line 21 line 31 => pc 154 => line 21 line 32 => pc 161 => line 32 line 33 => pc 172 => line 33 line 34 => pc 172 => line 33 line 35 => pc 172 => line 33 line 36 => pc 172 => line 33 line 37 => pc 172 => line 33 line 38 => pc 172 => line 33 line 39 => pc 172 => line 33 line 40 => pc 172 => line 33 jsconfig.h various configuration macros defined as 0 or 1 depending on how js_
version is defined (as 10 for javascript 1.0, 11 for javascript 1.1, etc.).
... jsdtoa.cpp, jsdtoa.h, dtoa.c dtoa.c contains david gay's portable double-precision floating point to string con
version code, with permission to use notice included.
JSAPI Cookbook
since javascript values are usually stored in js::value variables, a cast or con
version is usually needed.
... // javascript object.defineproperty(obj, "prop", {get: getpropfunc, set: setpropfunc, enumerable: true}); in the jsapi
version, getpropfunc and setpropfunc are c/c++ functions of type jsnative.
...undefinedvalue(), (jspropertyop) getpropfunc, (jsstrictpropertyop) setpropfunc, jsprop_shared | jsprop_native_accessors | jsprop_enumerate)) { return false; } defining a read-only property with only a getter // javascript object.defineproperty(obj, "prop", {get: getpropfunc, enumerable: true}); in the jsapi
version, to signify that the property is read-only, pass null for the setter.
JSErrorReport
uclinebuf is a pointer to a user-defined buffer into which js copies the unicode (original)
version of the offending line of script.
... uctokenptr is a pointer into uclinebuf that identifies the precise location line of the problem within the offending unicode (original)
version of the offending line.
...for unicode scripts, define a second buffer that holds the unicode
version of the text the generated the error.
JS_CompileScriptForPrincipals
* js_compilescriptforprincipals(jscontext *cx, jsobject *obj, jsprincipals *principals, const char *src, size_t length, const char *filename, unsigned int lineno); jsscript * js_compileucscriptforprincipals(jscontext *cx, jsobject *obj, jsprincipals *principals, const jschar *src, size_t length, const char *filename, unsigned int lineno); jsobject * js_compilescriptforprincipals
version(jscontext *cx, jsobject *obj, jsprincipals *principals, const char *src, size_t length, const char *filename, unsigned int lineno, js
version version); // obsoleted since jsapi 19 jsobject * js_compileucscriptforprincipals
version(jscontext *cx, jsobject *obj, jsprincipals *principals, const jschar *src, size_t length, const char *filename, unsigned int lineno, js
version version); ...
...
version js
version javascript
version for the script.
...js_compileucscriptforprincipals is the unicode
version of the function.
JS_ConvertValue
syntax bool js_convertvalue(jscontext *cx, js::handlevalue v, jstype type, js::mutablehandlevalue vp); name type description cx jscontext * the context in which to perform the con
version.
...typically users of this function set vp to point to v, so that if con
version is successful, v now contains the converted value.
... js_convertvalue calls other, type-specific con
version routines based on the type argument.
Thread Sanitizer
the
version of clang you need to use depends on what firefox release you are compiling if you are building from mozilla-central, you must use clang 3.6 or later.
... clang 3.4 + tsan cannot compile firefox due to an internal compiler error; some
versions of clang 3.5 packaged by linux distros do not work for the same reason.
... you can check which
version of clang you have by running the command: clang -v if you are not building from mozilla-central and are building firefox 39 or earlier, you must use clang 3.3.
Zest implementation
the first
version of zest has been released but is intentionally very basic.
... future
versions of zest are planned which will significantly increase the scope of the language.
... the first
version is aimed at creating scripts for reproducing basic security vulnerabilities includes a java reference implementation, which conforms to jsr 223 has been included in a proof-of-concept owasp zap add-on the next
version is underdevelopment - more details soon.
Mozinfo
the current implementation exposes relevant key, values: os,
version, bits, and processor.
... the top level attributes (os,
version, bits, processor) are available as module globals: if mozinfo.os == 'win': ...
... example output: os: linux
version: ubuntu 10.10 bits: 32 processor: x86 three of these fields, os, bits, and processor, have a finite set of choices.
Handling Mozilla Security Bugs
version 1.1 important: anyone who believes they have found a mozilla-related security vulnerability can and should report it by sending email to address security@mozilla.org.
...the goals of this warning are: to inform mozilla users and testers of potential security risks in the
versions they are using, and what can be done to mitigate those risks.
... a typical warning will mention the application or module affected, the affected
versions, and a workaround (e.g., disabling javascript).
Animated PNG graphics
1 apng_blend_op_over the frame should be composited onto the output buffer based on its alpha, using a simple over operation as described in the alpha channel processing section of the extensions to the png specification,
version 1.2.0.
...n them from 0.8 removed crcs for ihdr and plte from actl the actl fctl and adat are now not copy safe, renamed them to actl, fctl and adat from 0.9 split render_op into dispose_op and blend_op from 0.10 no changes test encoder and sample images sample images are available from the apng implementation page at http://littlesvr.ca/apng/ an encoder (open source) is available in
versions of the gecko engine starting with
version 1.9 alpha 4.
... an application (open source) using the mozilla encoder to assemble apngs available here: http://littlesvr.ca/apng/apngedit.html see also portable network graphics (png) specification (second edition) extensions to the png specification,
version 1.2.0 graphics interchange format 89a ...
Mork
the header is: // <!-- <mdb:mork:z v="1.4"/> --> this file is therefore
version 1.4 of the zany mork format for the message database.
...
versions 1.0-1.3 were never used in any publicly-available source code.
... other serializations of mork have also never been used, so the zany mork
version 1.4 format has become the only official mork format.
Using the Places history service
to maintain backwards compatibility, each
version has implemented the older interfaces, resulting in functionality spread across many interfaces.
... break; case historyservice.database_status_upgraded: // database had an old schema
version and has been upgraded to a new one.
... nsinavhistoryservice.queriestoquerystring: returns a serialized
version of the queries as a "place:" uri.
places.sqlite Database Troubleshooting
sqlite> .clone places.sqlite sqlite> pragma user_
version; note the
version number returned by the last pragma query.
... let's fix the schema
version.
... nn must be replaced with the number we had noted previously: sqlite> pragma user_
version = nn; let's update the page_size value: sqlite> pragma journal_mode = truncate; sqlite> pragma page_size = 32768; sqlite> vacuum; sqlite> pragma journal_mode = wal; sqlite> .exit copy the new places.sqlite to the profile folder, overwriting the existing one.
Avoiding leaks in JavaScript XPCOM components
in firefox 3, a cycle collector was introduced and refined in later
versions, and mozilla is currently working on a generational garbage collector for js.
... this problem is only in
versions of mozilla prior to mozilla 1.8.
...(but since service is a global variable, just fixing the cycle doesn't fix the leak.) don't store short-lived objects as javascript properties of short-lived dom nodes i mentioned earlier that, in
versions of mozilla before 1.8, setting arbitrary javascript properties on elements (or using xbl fields) causes that element's javascript wrapper to be rooted until the document stops being displayed.
Component Internals
unless an interface is explicitly marked "frozen" in the idl comments, your component may possibly break or crash along with a
version change.
... a
version of the glue library is built into xpcom, and when your component uses it, it links a snapshot of this library: it includes a copy of these unfrozen classes directly, which allows the xpcom library
version to change without affecting the software.
...distribution of substantively modified
versions of this document is prohibited without the explicit permission of the copyright holder.
Creating the Component Code
several new options have been added to regxpcom in
versions 1.4 and later.
...for example, including nsicomponentmanager.idl without mozilla_strict_api defined will include the following headers, which are not supported across
versions (unfrozen): nscomponentmanagerutils.h nscomponentmanagerobsolete.h these variables are picked up by files that do not specify themselves as mozilla_strict_api.
...distribution of substantively modified
versions of this document is prohibited without the explicit permission of the copyright holder.
Using XPCOM Components
i added |pr_false| as a fourth parameter because the interface seems to require it: http://lxr.mozilla.org/mozilla/source/netwerk/cookie/public/nsicookiemanager.idl#64 this problem also appears in the javascript
version below, and i've added |false| as a fourth parameter there as well.
...i added |false| as a fourth parameter because the interface seems to require it: http://lxr.mozilla.org/mozilla/source/netwerk/cookie/public/nsicookiemanager.idl#64 this problem also appears in the c++
version above, and i've added |pr_false| as a fourth parameter there as well.
...distribution of substantively modified
versions of this document is prohibited without the explicit permission of the copyright holder.
Components.utils.importGlobalProperties
file nsidomfile indexeddb nodefilter firefox 60 nsidomnodefilter obsolete since gecko 60 rtcidentityprovider textdecoder textencoder url urlsearchparams xmlhttprequest nsixmlhttprequest obsolete since gecko 60 for string/object in table without a minimum firefox
version, it is not exactly known since when it was available, however it is guranteed available from firefox 28 and up.
... example components.utils.import("resource://gre/modules/devtools/console.jsm"); components.utils.importglobalproperties(["atob", "btoa"]); var encoded = btoa("hello"); console.log(encoded); // "sgvsbg8=" console.log(atob(encoded)); // "hello" alternative methods if importglobalproperties does not support the targeted firefox
version, here are some alternative methods to import these objects.
... var domfile = services.appshell.hiddendomwindow.file('/path/to/file'); xpcom components some objects have an xpcom alternative, which typically allows more flexibility then the dom
version here is an example of how to use the dom xmlhttprequest through xpcom interface of nsixmlhttprequest: var oreq = cc["@mozilla.org/xmlextras/xmlhttprequest;1"].createinstance(ci.nsixmlhttprequest); ...
nsACString_internal
methods constructors void nsacstring_internal(const nscsubstringtuple&) - source this is public to support automatic con
version of tuple to string base type, which helps avoid converting to nstastring.
...call this
version when you know the length of 'data'.
...call this
version when 'data' is null-terminated.
nsAString_internal
methods constructors void nsastring_internal(const nssubstringtuple&) - source this is public to support automatic con
version of tuple to string base type, which helps avoid converting to nstastring.
...call this
version when you know the length of 'data'.
...call this
version when 'data' is null-terminated.
nsIProtocolProxyService
asyncresolve() this method is an asychronous
version of the resolve method.
...standard values are: "http" - specifies a http proxy "https" - specifies a https proxy "socks" - specifies a socks
version 5 proxy "socks4" - specifies a socks
version 4 proxy "direct" - specifies a direct connection (useful for failover) the type name is case-insensitive.
... other string values may be possible, and new types may be defined by a future
version of this interface.
nsIStreamConverter
you could implement this interface to allow everyone else to use your con
version logic using a standard api.
...defined in this file): @mozilla.org/streamconv;1?from=from_mime_type&to=to_mime_type method overview void asyncconvertdata(in string afromtype, in string atotype, in nsistreamlistener alistener, in nsisupports actxt); nsiinputstream convert(in nsiinputstream afromstream, in string afromtype, in string atotype, in nsisupports actxt); methods asyncconvertdata() asynchronous
version: converts data arriving via the converter's nsistreamlistener.ondataavailable() method from one type to another, pushing the converted data out to the caller via alistener::ondataavailable().
... convert() synchronous
version: converts a stream of one type, to a stream of another type.
nsIStructuredCloneContainer
method overview nsivariant deserializetovariant(); astring getdataasbase64(); void initfrombase64(in astring adata,in unsigned long aformat
version); void initfromvariant(in nsivariant adata); attributes attribute type description format
version unsigned long get the
version of the structured clone algorithm which was used to generate this container's serialized buffer.
...void initfrombase64( in astring adata, in unsigned long aformat
version ); parameters adata a base-64-encoded byte stream.
... aformat
version the
version of the structured clone algorithm which was used to generate adata.
nsIUTF8ConverterService
set this to pr_true only if you suspect that astring can be mistaken for ascii / utf-8 but is actually not in ascii / utf-8 so that astring has to go through the con
version.
...exceptions thrown ns_error_uconv_noconv when there is no decoder for acharset or error code of nsiunicodedecoder in case of con
version failure.
...exceptions thrown ns_error_uconv_noconv when there is no decoder for acharset or error code of nsiunicodedecoder in case of con
version failure.
nsIUpdatePatch
toolkit/mozapps/update/nsiupdateservice.idlscriptable an interface that describes an object representing a patch file that can be downloaded and applied to a
version of this application so that it can be updated.
... type astring the type of patch represented by the object: "partial" a binary difference between two application
versions.
... "complete" a complete patch containing all the replacement files to update to the new
version.
nsIWinTaskbar
gress gettaskbarprogress(in nsidocshell shell); nsitaskbarwindowpreview gettaskbarwindowpreview(in nsidocshell shell); void setgroupidforwindow(in nsidomwindow aparent, in astring aidentifier); attributes attribute type description available boolean returns true if the operating system supports windows 7 or later taskbar features; you can use this instead of in-place operating system
version checking.
... for xulrunner applications, the defaultgroupid attribute is configured using application.ini settings, and is of the format "vendor.application.
version".
... for example, if the vendor is configured to "foobar systems", the application's name is "squashweb", and the application's
version is 1.0, the defaultgroupid attribute would be "foobar systems.squashweb.1.0".
Performance
be sure you have a
version of the command line tool that is at least as recent as what mozilla uses.
... as of april 10, 2006, mozilla uses sqlite 3.3.4, but the latest precompiled
version of the command line tools is not available for all platforms.
...you may want to check the sqlite_
version definition in db/sqlite3/src/sqlite3.h for the current
version if you are having problems.
XUL Overlays
though there is no formal restriction on what kind of xul content is located in "base" xul files and what kind should be put in overlays, xul overlays generally define items that are not present in the basic
versions of the ui, such as additional components.
...and given the following overlay: <?xml
version="1.0"?> <overlay id="singleitemex" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <menupopup id="menu_filepopup"> <menu id="file_menu"> <menuitem name="super stream player"/> </menu> </menupopup> </overlay> the result will be: ...
...attaching a script to an overlay to execute a script when an overlay is applied, use a <script> element: <script src="overlay.js"/> if you need to set the
version of javascript, you can set the type attribute: <script type="application/x-javascript;
version=1.8" src="overlay.js"/> ui reuse with overlays one of the biggest benefits of using overlays is that it allows you to reuse groups of elements that appear frequently in the ui.
Building a Thunderbird extension 5: XUL
warning: this content is for older
versions of thunderbird.
...this also enables
version independence between thunderbird and thunderbird extensions.
... example xul overlay document create a new file called myhelloworld.xul within the content folder you created earlier with the following content: <?xml
version="1.0"?> <overlay id="sample" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript" src="chrome://myfirstext/content/overlay.js"/><!-- a reference to your javascript file --> <statusbar id="status-bar"> <statusbarpanel id="my-panel" label="date"/> </statusbar> </overlay> the <statusbar> widget named status-bar specifies the merge point within the application window that we want to attach to.
Add Option to Context Menu
for thunderbird 2 <?xml
version="1.0"?> <overlay id="sample" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <menupopup id="messagepanecontext"> <menuitem id="my_option" label="my option concise and cool label" oncommand="alert('hi')"/> </menupopup> </overlay> for thunderbird 3 <?xml
version="1.0"?> <overlay id="sample" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <popup id="mailcontext"> <menuitem id="my_option" label="my option concise an...
...d cool label" oncommand="alert('hi')"/> </popup> </overlay> for thunderbird 2 and 3 in the same xpi if our extension needs to support thunderbird 2 and 3 we need to make custom overlays for each
version.
... this can be reached by adding these lines to the chrome.manifest file: overlay chrome://messenger/content/mailwindowoverlay.xul chrome://myaddon/content/tboverlay-tb2.xul app
version<3.0 overlay chrome://messenger/content/mailwindowoverlay.xul chrome://myaddon/content/tboverlay-tb3.xul app
version=>3.0 than we need two overlay xul files with content from examples above.
customDBHeaders Preference
user_pref( "mailnews.customdbheaders", "x-superfluous x-other"); adding a column the reply-to column tutorial does a good job of explaining how to add a column with an overlay, so i'll just show you my overlay file: <?xml
version="1.0" ?> <overlay id="colsuperfluousoverlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type='application/javascript' src='chrome://superfluous/content/superfluous.js'/> <tree id="threadtree"> <treecols id="threadcols"> <splitter class="tree-splitter" /> <treecol id="colsuperfluous" persist="hidden ordinal width" currentview="unthre...
...deps:= chrome/ \ chrome.manifest \ chrome/content/ \ chrome/content/superfluous.js \ chrome/content/superfluous_overlay.xul \ install.rdf superfluous.xpi: ${deps} zip $@ ${deps} chrome.manifest: content superfluous chrome/content/ overlay chrome://messenger/content/messenger.xul chrome://superfluous/content/superfluous_overlay.xul install.rdf: <?xml
version='1.0' encoding='utf-8'?> <rdf xmlns='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:em='http://www.mozilla.org/2004/em-rdf#'> <description about='urn:mozilla:install-manifest'> <em:id>superfluous@yoursite.com</em:id> <em:
version>0.1.1</em:
version> <em:type>2</em:type> <!-- 2 is type 'extension' --> <em:targetapplication> <description> <!-- this ...
...next line identifies tbird as target --> <em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id> <em:min
version>2*</em:min
version> <em:max
version>3.0.0.*</em:max
version> </description> </em:targetapplication> <em:name>superfluous</em:name> <em:description>test superfluous extension</em:description> <em:creator>garrett comeaux</em:creator> </description> </rdf> build process: [gcomeaux@kyle tbird-ext]$ cd superfluous/ [gcomeaux@kyle superfluous]$ make zip superfluous.xpi chrome/ chrome.manifest chrome/content/ chrome/content/superfluous.js chrome/content/superfluous_overlay.xul install.rdf adding: chrome/ (stored 0%) adding: chrome.manifest (deflated 44%) adding: chrome/content/ (stored 0%) adding: chrome/content/superfluous.js (d...
Using js-ctypes
about declaring the function how we knew how to declare the function was by going to msdn site and looking at the messagebox (messageboxw is just a unicode
version of same function) function.
... standard alert in 64bit os x carbon is not available in 64bit
versions of os x, therefore core foundation must be used.
... = ctypes.voidptr_t; var sint32 = ctypes.long; var void = ctypes.void_t; var __cfstring = new ctypes.structtype("__cfstring"); var cfstringref = __cfstring.ptr; var __cfurl = new ctypes.structtype("__cfurl"); var cfurlref = __cfurl.ptr; var __cfallocator = new ctypes.structtype("__cfallocator"); var cfallocatorref = __cfallocator.ptr; var unichar = ctypes.jschar; // uint16 with automatic con
version // define constants var kcfusernotificationstopalertlevel = 0; var kcfusernotificationnotealertlevel = 1; var kcfusernotificationcautionalertlevel = 2; var kcfusernotificationplainalertlevel = 3; // declare functions /* https://developer.apple.com/library/mac/documentation/corefoundation/reference/cfusernotificationref/index.html#//apple_ref/c/func/cfusernotificationdisplaynotice * sint32 cfus...
AudioBuffer() - Web APIs
desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetaudiobuffer() constructorchrome full support 55notes full support 55notes notes the context parameter was supported up until
version 57, but has now been removed.edge full support ≤79firefox full support 53ie no support noopera full support 42notes full support 42notes notes the context parameter was su...
...pported up until
version 44, but has now been removed.safari ?
... webview android full support 55notes full support 55notes notes the context parameter was supported up until
version 57, but has now been removed.chrome android full support 55notes full support 55notes notes the context parameter was supported up until
version 57, but has now been removed.firefox android full support 53opera android full support 42notes full support 42notes notes the context parameter was supported up until
version 44, but has now been removed.safari i...
characteristic - Web APIs
full support 57notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 57: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support ≤79notes disabled notes linux and
versions of windows earlier than 10.disabled from
version ≤79: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support 44notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 44: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
readValue() - Web APIs
full support 57notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 57: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support ≤79notes disabled notes linux and
versions of windows earlier than 10.disabled from
version ≤79: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support 44notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 44: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
uuid - Web APIs
full support 57notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 57: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support ≤79notes disabled notes linux and
versions of windows earlier than 10.disabled from
version ≤79: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support 44notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 44: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
value - Web APIs
full support 57notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 57: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support ≤79notes disabled notes linux and
versions of windows earlier than 10.disabled from
version ≤79: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support 44notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 44: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
writeValue() - Web APIs
full support 57notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 57: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support ≤79notes disabled notes linux and
versions of windows earlier than 10.disabled from
version ≤79: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... full support 44notes disabled notes linux and
versions of windows earlier than 10.disabled from
version 44: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
DOMImplementation.hasFeature() - Web APIs
the latest
version of the spec settled to force this method to always return true, where the functionality was accurate and in use.
... syntax const flag = document.implementation.hasfeature(feature,
version); parameters feature a domstring representing the feature name.
...
version a domstring representing the
version of the specification defining the feature.
Traversing an HTML table with JavaScript and DOM Interfaces - Web APIs
the demonstrations provided here will work fine in any modern browser, including all
versions of firefox and ie 5+.
...the following source code is a commented
version for the sample1.html.
...the following code is a modified
version of sample1.html in which each cell of the second column is hidden and each cell of the first column is changed to have a red background.
Element.classList - Web APIs
ible", i < 10 ); console.log(div.classlist.contains("foo")); // add or remove multiple classes div.classlist.add("foo", "bar", "baz"); div.classlist.remove("foo", "bar", "baz"); // add or remove multiple classes using spread syntax const cls = ["foo", "bar"]; div.classlist.add(...cls); div.classlist.remove(...cls); // replace class "foo" with class "bar" div.classlist.replace("foo", "bar");
versions of firefox before 26 do not implement the use of several arguments in the add/remove/toggle methods.
...le: 0, configurable: 0, writeable: 0, value: protoobj.prototype }); defineproperty(protoobjproto, " ucl", { enumerable: 0, configurable: 0, writeable: 0, value: ele }); } else { ele.classlist=restokenlist, ele[" ucl"]=restokenlist, ele[" uclp"]=protoobj.prototype; } ele.attachevent( "onpropertychange", whenpropchanges ); } try { // much faster & cleaner
version for ie8 & ie9: // should work in ie8 because element.prototype instanceof node is true according to the specs window.object.defineproperty(window.element.prototype, "classlist", { enumerable: 1, get: function(val){ if (!hasownprop.call(this, "classlist")) polyfillclasslist(this); return this.classlist;...
...a major discrepancy between the polyfilled
version of classlist and the w3 specs is that for ie6-8, there is no way to create an immutable object (an object whose properties cannot be directly modified).
Element.localName - Web APIs
<script type="application/javascript"><![cdata[ function test() { var text = document.getelementbyid('text'); var circle = document.getelementbyid('circle'); text.value = "<svg:circle> has:\n" + "localname = '" + circle.localname + "'\n" + "namespaceuri = '" + circle.namespaceuri + "'"; } ]]></script> </head> <body onload="test()"> <svg:svg
version="1.1" width="100px" height="100px" viewbox="0 0 100 100"> <svg:circle cx="50" cy="50" r="30" style="fill:#aaa" id="circle"/> </svg:svg> <textarea id="text" rows="4" cols="55"/> </body> </html> notes the local name of a node is that part of the node's qualified name that comes after the colon.
...for example, in the qualified name ecomm:partners, partners is the local name and ecomm is the prefix: <ecomm:business id="soda_shop" type="brick_n_mortar" xmlns:ecomm="http://example.com/ecomm"> <ecomm:partners> <ecomm:partner id="1001">tony's syrup warehouse </ecomm:partner> </ecomm:partner> </ecomm:business> note: in gecko 1.9.2 and earlier, the property returns the upper-cased
version of the local name for html elements in html doms (as opposed to xhtml elements in xml doms).
... in later
versions, in compliance with html5, the property returns in the case of the internal dom storage, which is lower case for both html elements in html doms and xhtml elements in xml doms.
EventTarget.addEventListener() - Web APIs
for example, an event handler callback that can be used to handle both fullscreenchange and fullscreenerror might look like this: function eventhandler(event) { if (event.type == 'fullscreenchange') { /* handle a full screen toggle */ } else /* fullscreenerror */ { /* handle a full screen toggle error */ } } safely detecting option support in older
versions of the dom specification, the third parameter of addeventlistener() was a boolean value indicating whether or not to use capture.
... legacy internet explorer and attachevent in internet explorer
versions before ie 9, you have to use attachevent(), rather than the standard addeventlistener().
... note: see the compatibility table below if you need to know which browsers (and/or which
versions of those browsers) implement this altered behavior.
ExtendableEvent - Web APIs
the code snippet also shows a best practice for
versioning caches used by the service worker.
...it maps a shorthand identifier for a cache to a specific,
versioned cache name.
... var cache_
version = 1; var current_caches = { prefetch: 'prefetch-cache-v' + cache_
version }; self.addeventlistener('install', function(event) { var urlstoprefetch = [ './static/pre_fetched.txt', './static/pre_fetched.html', 'https://www.chromium.org/_/rsrc/1302286216006/config/customlogo.gif' ]; console.log('handling install event.
GamepadEvent - Web APIs
35 no support 21 — 34prefixed prefixed implemented with the vendor prefix: webkitedge full support ≤18firefox full support 29 full support 29 no support 24 — 28disabled disabled from
version 24 until
version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true).
...ll support yesgamepadevent() constructorchrome full support 35edge full support 12firefox full support 29 full support 29 no support 24 — 28disabled disabled from
version 24 until
version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true).
... 35 no support 21 — 34prefixed prefixed implemented with the vendor prefix: webkitedge full support 12firefox full support 29 full support 29 no support 24 — 28disabled disabled from
version 24 until
version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true).
HTMLHtmlElement - Web APIs
htmlhtmlelement.
version is a domstring representing the
version of the html document type definition (dtd) that governs this document.
... recommendation the
version element has been removed, as it is non-conforming.
... obsolete reflecting the element change in html 4.01 specification, the
version property is now deprecated.
HTMLImageElement.lowSrc - Web APIs
the htmlimageelement interface's obsolete lowsrc property can be used to specify the url of a reduced-quality or otherwise faster-loading
version of the image specified by the src property.
... syntax htmlimageelement.lowsrc = imageurl; imageurl = htmlimageelement.lowsrc; value a domstring specifying the url of a
version of the image specified by src which has been modified in some fashion so that it loads significantly more quickly than the primary image.
... there are a number of ways to achieve this; primary among them: higher compression levels (for example, a primary image saved as a jpeg using 85% quality might have a lowsrc
version saved at 15%.
HTMLImageElement.sizes - Web APIs
three
versions of the image are also available, with their widths specified.
...droidopera for androidsafari on iossamsung internetsizes experimentalchrome full support 45edge full support 13firefox full support 38 full support 38 no support 33 — 52disabled disabled from
version 33 until
version 52 (exclusive): this feature is behind the dom.image.picture.enabled preference (needs to be set to true).
...no support nowebview android full support 45chrome android full support 45firefox android full support 38 full support 38 no support 33 — 52disabled disabled from
version 33 until
version 52 (exclusive): this feature is behind the dom.image.picture.enabled preference (needs to be set to true).
databases - Web APIs
the databases method of the idbfactory interface returns a list represening all the available databases, including their names and
versions.
... return value a promise that resolves either to an error or a list of dictionaries, each with two elements, name and
version.
...
version the database
version.
IDBFactory.deleteDatabase() - Web APIs
when deletedatabase() is called, any other open connections to this particular database will get a
versionchange event.
... syntax for the current standard: var request = indexeddb.deletedatabase(name); for the experimental
version with options (see below): var request = indexeddb.deletedatabase(name, options); parameters name the name of the database you want to delete.
... optionsnon-standard in gecko, since
version 26, you can include a non-standard optional storage parameter that specifies whether you want to delete a permanent (the default value) indexeddb, or an indexeddb in temporary storage (aka shared pool.) return value a idbopendbrequest on which subsequent events related to this request are fired.
IDBOpenDBRequest: upgradeneeded event - Web APIs
the upgradeneeded event is fired when an attempt was made to open a database with a
version number higher than its current
version.
... // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.addeventlistener('upgradeneeded', event => { const db = event.target.result; console.log(`upgrading to
version ${db.
version}`); // create an objectstore for this database var objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); obje...
... // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; console.log(`upgrading to
version ${db.
version}`); // create an objectstore for this database var objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.
IDBTransaction - Web APIs
version_change "
versionchange" (2 in chrome) allows any operation to be performed, including ones that delete and create object stores and indexes.
... this mode is for updating the
version number of transactions that were started using the set
version() method of idbdatabase objects.
...transactions in this mode are known as "upgrade transactions." even if these constants are now deprecated, you can still use them to provide backward compatibility if required (in chrome the change was made in
version 21).
InstallEvent - Web APIs
the code snippet also shows a best practice for
versioning caches used by the service worker.
...the code maps a shorthand identifier for a cache to a specific,
versioned cache name.
... var cache_
version = 1; var current_caches = { prefetch: 'prefetch-cache-v' + cache_
version }; self.addeventlistener('install', function(event) { var urlstoprefetch = [ './static/pre_fetched.txt', './static/pre_fetched.html', 'https://www.chromium.org/_/rsrc/1302286216006/config/customlogo.gif' ]; console.log('handling install event.
KeyboardEvent.location - Web APIs
possible values are: constant value description dom_key_location_standard 0 the key has only one
version, or can't be distinguished between the left and right
versions of the key, and was not pressed on the numeric keypad or a key that is considered to be part of the keypad.
... dom_key_location_left 1 the key was the left-hand
version of the key; for example, the left-hand control key was pressed on a standard 101 key us keyboard.
... dom_key_location_right 2 the key was the right-hand
version of the key; for example, the right-hand control key is pressed on a standard 101 key us keyboard.
MediaDeviceInfo.deviceId - Web APIs
desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetdeviceidchrome full support 55notes full support 55notes notes for earlier
versions, this interface is available through the adapter.js polyfilledge full support 12firefox full support 39ie no support noopera no support nonotes no support nonotes notes thi...
...s property can be used in opera by using the adapter.js polyfill.safari no support nowebview android full support 55notes full support 55notes notes for earlier
versions, this interface is available through the adapter.js polyfillchrome android full support 55notes full support 55notes notes for earlier
versions, this interface is available through the adapter.js polyfillfirefox android full support 39opera android no support nonotes no support ...
... nonotes notes this property can be used in opera by using the adapter.js polyfill.safari ios no support nosamsung internet android full support 6.0notes full support 6.0notes notes for earlier
versions, this interface is available through the adapter.js polyfilllegend full support full support no support no supportsee implementation notes.see implementation notes.
MediaDeviceInfo.kind - Web APIs
desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetkindchrome full support 55notes full support 55notes notes for earlier
versions, this interface is available through the adapter.js polyfilledge full support 12firefox full support 39ie no support noopera no support nonotes no support nonotes notes thi...
...s property can be used in opera by using the adapter.js polyfill.safari no support nowebview android full support 55notes full support 55notes notes for earlier
versions, this interface is available through the adapter.js polyfillchrome android full support 55notes full support 55notes notes for earlier
versions, this interface is available through the adapter.js polyfillfirefox android full support 39opera android no support nonotes no support ...
... nonotes notes this property can be used in opera by using the adapter.js polyfill.safari ios no support nosamsung internet android full support 6.0notes full support 6.0notes notes for earlier
versions, this interface is available through the adapter.js polyfilllegend full support full support no support no supportsee implementation notes.see implementation notes.
NavigatorID.userAgent - Web APIs
never assume that the value of this property will stay the same in future
versions of the same browser.
... try not to use it at all, or only for current and past
versions of a browser.
...gecko-based browsers comply with the following general structure: useragent = appcodename/app
version number (platform; security; os-or-cpu; localization; rv: revision-
version-number) product/productsub application-name application-name-
version example alert(window.navigator.useragent) // alerts "mozilla/5.0 (windows; u; win98; en-us; rv:0.9.2) gecko/20010725 netscape6/6.1" specifications specification status comment html living standardthe definition of 'navi...
Node.localName - Web APIs
<script type="application/javascript"><![cdata[ function test() { var text = document.getelementbyid('text'); var circle = document.getelementbyid('circle'); text.value = "<svg:circle> has:\n" + "localname = '" + circle.localname + "'\n" + "namespaceuri = '" + circle.namespaceuri + "'"; } ]]></script> </head> <body onload="test()"> <svg:svg
version="1.1" width="100px" height="100px" viewbox="0 0 100 100"> <svg:circle cx="50" cy="50" r="30" style="fill:#aaa" id="circle"/> </svg:svg> <textarea id="text" rows="4" cols="55"/> </body> </html> notes the local name of a node is that part of the node's qualified name that comes after the colon.
...or example, in the qualified name ecomm:partners, partners is the local name and ecomm is the prefix: <ecomm:business id="soda_shop" type="brick_n_mortar" xmlns:ecomm="http://example.com/ecomm"> <ecomm:partners> <ecomm:partner id="1001">tony's syrup warehouse </ecomm:partner> </ecomm:partners> </ecomm:business> note: in gecko 1.9.2 and earlier, the property returns the upper-cased
version of the local name for html elements in html doms (as opposed to xhtml elements in xml doms).
... in later
versions, in compliance with html5, the property returns in the case of the internal dom storage, which is lower case for both html elements in html doms and xhtml elements in xml doms.
PaymentResponse.details - Web APIs
oidopera for androidsafari on iossamsung internetdetailschrome full support 61edge full support 15firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... no support nosafari full support yeswebview android no support nochrome android full support 56 full support 56 no support 53 — 56disabled disabled from
version 53 until
version 56 (exclusive): this feature is behind the #web-payments preference (needs to be set to enabled).
... to change preferences in chrome, visit chrome://flags.firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentResponse.payerEmail - Web APIs
opera for androidsafari on iossamsung internetpayeremailchrome full support 61edge full support 15firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... no support nosafari full support yeswebview android no support nochrome android full support 56 full support 56 no support 53 — 56disabled disabled from
version 53 until
version 56 (exclusive): this feature is behind the #web-payments preference (needs to be set to enabled).
... to change preferences in chrome, visit chrome://flags.firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentResponse.shippingAddress - Web APIs
for androidsafari on iossamsung internetshippingaddresschrome full support 61edge full support 15firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... no support nosafari full support yeswebview android no support nochrome android full support 56 full support 56 no support 53 — 56disabled disabled from
version 53 until
version 56 (exclusive): this feature is behind the #web-payments preference (needs to be set to enabled).
... to change preferences in chrome, visit chrome://flags.firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentResponse.shippingOption - Web APIs
a for androidsafari on iossamsung internetshippingoptionchrome full support 61edge full support 15firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... no support nosafari full support yeswebview android no support nochrome android full support 56 full support 56 no support 53 — 56disabled disabled from
version 53 until
version 56 (exclusive): this feature is behind the #web-payments preference (needs to be set to enabled).
... to change preferences in chrome, visit chrome://flags.firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PushEvent - Web APIs
ktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetpushevent experimentalchrome full support 42edge full support 16disabled full support 16disabled disabled from
version 16: this feature is behind the enable service workers preference.
... no support nosamsung internet android full support 4.0pushevent() constructor experimentalchrome full support 42edge full support 16disabled full support 16disabled disabled from
version 16: this feature is behind the enable service workers preference.
... 37safari ios no support nosamsung internet android full support 4.0data experimentalchrome full support 57edge full support 16disabled full support 16disabled disabled from
version 16: this feature is behind the enable service workers preference.
RTCPeerConnection.setRemoteDescription() - Web APIs
deprecated syntax in older code and documentation, you may see a callback-based
version of this function used.
...you should update any existing code to use the promise-based
version of setremotedescription() instead.
... exceptions when using the deprecated callback-based
version of setremotedescription(), the following exceptions may occur: invalidstateerror the connection's signalingstate is "closed", indicating that the connection is not currently open, so negotiation cannot take place.
TextEncoder.prototype.encodeInto() - Web APIs
u8array.subarray(position|0) : u8array); } var u8array = new uint8array(8); encodeintoatposition("hello", u8array, 2); console.log( "" + u8array.join() ); // 0,0,104,101,108,108,111,0 buffer sizing to convert a javascript string s, the output space needed for full con
version is never less than s.length bytes and never greater than s.length * 3 bytes.
... if the output allocation (typically within wasm heap) is expected to be short-lived, it makes sense to simply allocate s.length * 3 bytes for the output, in which case the first con
version attempt is guaranteed to convert the whole string.
...if the read item it the return dictionary is s.length, the con
version is done.
VideoTrack.kind - Web APIs
video track kind strings the kinds available for video tracks are: "alternative" a potential alternative to the main track, such as a different video take or a
version of the soundtrack with only the music and no dialogue.
... "captions" a
version of the main video track with captions burnt in.
... "subtitles" a
version of the main video track with subtitles burnt in.
WebGLRenderingContext.getParameter() - Web APIs
gl.renderer domstring gl.sample_buffers glint gl.sample_coverage_invert glboolean gl.sample_coverage_value glfloat gl.samples glint gl.scissor_box int32array (with 4 elements) gl.scissor_test glboolean gl.shading_language_
version domstring gl.stencil_back_fail glenum gl.stencil_back_func glenum gl.stencil_back_pass_depth_fail glenum gl.stencil_back_pass_depth_pass glenum gl.stencil_back_ref glint gl.stencil_back_value_mask gluint gl.stencil_back_writemask gluint gl.stencil_bits glint ...
... gl.stencil_ref glint gl.stencil_test glboolean gl.stencil_value_mask gluint gl.stencil_writemask gluint gl.subpixel_bits glint gl.texture_binding_2d webgltexture or null gl.texture_binding_cube_map webgltexture or null gl.unpack_alignment glint gl.unpack_colorspace_con
version_webgl glenum gl.unpack_flip_y_webgl glboolean gl.unpack_premultiply_alpha_webgl glboolean gl.vendor domstring gl.
version domstring gl.viewport int32array (with 4 elements) webgl 2 you can query the following pname parameters when using a webgl2renderingcontext.
... examples gl.getparameter(gl.dither); gl.getparameter(gl.
version); gl.getparameter(gl.viewport); specifications specification status comment webgl 1.0the definition of 'getparameter' in that specification.
WebGL constants - Web APIs
t_units 0x2a00 polygon_offset_factor 0x8038 texture_binding_2d 0x8069 sample_buffers 0x80a8 samples 0x80a9 sample_coverage_value 0x80aa sample_coverage_invert 0x80ab compressed_texture_formats 0x86a3 vendor 0x1f00 renderer 0x1f01
version 0x1f02 implementation_color_read_type 0x8b9a implementation_color_read_format 0x8b9b browser_default_webgl 0x9244 buffers constants passed to webglrenderingcontext.bufferdata(), webglrenderingcontext.buffersubdata(), webglrenderingcontext.bindbuffer(), or webglrenderingcontext.getbufferparameter().
... max_fragment_uniform_vectors 0x8dfd shader_type 0x8b4f shading_language_
version 0x8b8c current_program 0x8b8d depth or stencil tests constants passed to webglrenderingcontext.depthfunc() or webglrenderingcontext.stencilfunc().
... constant name value description unpack_flip_y_webgl 0x9240 unpack_premultiply_alpha_webgl 0x9241 unpack_colorspace_con
version_webgl 0x9243 additional constants defined webgl 2 these constants are defined on the webgl2renderingcontext interface.
Advanced techniques: Creating and sequencing audio - Web APIs
multiple oscillators oscillatornode "noise" random noise buffer, biquad filter audiobuffer, audiobuffersourcenode, biquadfilternode "dial up" loading a sound sample to play audiocontext.decodeaudiodata(), audiobuffersourcenode note: this instrument was not created to sound good, it was created to provide demonstration code and represents a very simplified
version of such an instrument.
...the final
version looks like this: function playsample(audiocontext, audiobuffer) { const samplesource = audiocontext.createbuffersource(); samplesource.buffer = audiobuffer; samplesource.playbackrate.setvalueattime(playbackrate, audioctx.currenttime); samplesource.connect(audiocontext.destination) samplesource.start(); return samplesource; } note: the sound file was sourced from soundbi...
... note: this is a much stripped down
version of chris wilson's a tale of two clocks article, which goes into this method in much more detail.
Web Audio API - Web APIs
audio worklets implement the worklet interface, a lightweight
version of the worker interface.
...the scriptprocessornode is kept for historic reasons but is marked as deprecated and will be removed in a future
version of the specification.
... obsolete interfaces the following interfaces were defined in old
versions of the web audio api spec, but are now obsolete and have been replaced by other interfaces.
Using the Web Speech API - Web APIs
browser support support for web speech api speech recognition is curently limited to chrome for desktop and android — chrome has supported it since around
version 33 but with prefixed interfaces, so you need to include prefixed
versions of them, e.g.
... the first line — #jsgf v1.0; — states the format and
version used.
... chrome for desktop and android have supported it since around
version 33, without prefixes.
Window - Web APIs
see mozscreenpixelspercsspixel in nsidomwindowutils for a con
version factor to adapt to screen pixels if needed.
...see mozscreenpixelspercsspixel for a con
version factor to adapt to screen pixels if needed.
...since firefox 57 (initially nightly-only), both
versions are only available from chrome (privileged) code, and not available to the web anymore.
XSL Transformations in Mozilla FAQ - Web APIs
<xsl:if xmlns:msxsl="urn:schemas-microsoft-com:xslt" test="system-property('msxsl:
version')=3"> <!-- msxml3 specific markup --> </xsl:if> what about media="print"?
... ie up to
version 6 required a deprecated namespace of a xslt working draft, please update to mozilla ;-), ie6+ or msxml3+, as it is fixed there.
... how do i build the standalone
version of transformiix?
aspect-ratio - CSS: Cascading Style Sheets
formal definition initial valueautoapplies toall elements except inline boxes and internal ruby or table boxesinheritednocomputed valueas specifiedanimation typediscrete formal syntax auto | <ratio> examples mapping width and height to aspect-ratio firefox has added an internal aspect-ratio property (in
version 69 onwards) that applies to replaced elements and other related elements that accept width and height attributes.
...artial support 79notes notes edge 79 adds internal support only for mapped valuesfirefox partial support 71notes partial support 71notes notes firefox 71 adds internal support only for mapped values no support 69 — 71notes disabled notes firefox 69 adds internal support only for mapped valuesdisabled from
version 69 until
version 71 (exclusive): this feature is behind the layout.css.width-and-height-map-to-aspect-ratio.enabled preference (needs to be set to true).
... nointernal mapping of width and height experimentalchrome full support 79edge full support 79firefox full support 71 full support 71 no support 69 — 71disabled disabled from
version 69 until
version 71 (exclusive): this feature is behind the layout.css.width-and-height-map-to-aspect-ratio.enabled preference (needs to be set to true).
CSS: Cascading Style Sheets
previously development of various parts of css specification was done synchronously, which allowed
versioning of the latest recommendation.
...however, css4 has never become an official
version.
...instead of
versioning the css specification, w3c now periodically takes a snapshot of the latest stable state of the css specification.
Live streaming web audio and video - Developer guides
hls hls or http live streaming is a protocol invented by apple inc and supported on ios, safari and the latest
versions of android browser / chrome.
... hls can also be decoded using javascript, which means we can support the latest
versions of firefox, chrome and internet explorer 10+.
... currently, opus is supported by firefox desktop and mobile as well as the latest
versions of desktop chrome and opera.
Setting up adaptive streaming media sources - Developer guides
<?xml
version="1.0" encoding="utf-8"?> <mpd xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns="urn:mpeg:dash:schema:mpd:2011" xsi:schemalocation="urn:mpeg:dash:schema:mpd:2011 dash-mpd.xsd" type="static" mediapresentationduration="pt654s" minbuffertime="pt2s" profiles="urn:mpeg:dash:profile:isoff-on-demand:2011"> <baseurl>http://example.com/ondemand/</baseurl> <period> <!-- engli...
... <?xml
version="1.0"?> <mpd xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns="urn:mpeg:dash:schema:mpd:2011" xsi:schemalocation="urn:mpeg:dash:schema:mpd:2011" profiles="urn:mpeg:dash:profile:isoff-main:2011" type="static" mediapresentationduration="pt0h9m56.46s"> <baseurl> http://example.com/segments </baseurl> <period start="pt0s"> <adaptationset bitstreamswitching="true"...
...apple uses the .m3u8 format (an extension of its .m3u playlist format) for index files — see below for an example: #ext-x-
version:3 #extm3u #ext-x-targetduration:10 #ext-x-media-sequence:1 # old-style integer duration; avoid for newer clients.
Writing Web Audio API code that works in every browser - Developer guides
you probably have already read the announcement on the web audio api coming to firefox, and are totally excited and ready to make your until-now-webkit-only sites work with firefox, which uses the unprefixed
version of the spec.
...this little library will "normalise" the interfaces for you and make it look as if your code is running in a standards compliant browser, by aliasing prefixed names to the unprefixed
versions.
... and it won't do anything if the unprefixed
versions are already present.
Introduction to HTML5 - Developer guides
html5 is the fifth revision and newest
version of the html standard.
...gecko began supporting some html5 features in
version 1.8.1.
...in previous
versions of html, it was done using a very complex <meta> element.
Printing - Developer guides
you want to adjust the user experience of printing, such as presenting a specially-formatted
version of your content before printing begins.
... open and automatically close a popup window when finished if you want to be able to automatically close a popup window (for example, the printer-friendly
version of a document) after the user prints its contents, you can use code like this: <!doctype html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>javascript window close example </title> <script type="text/javascript"> function popuponclick() { my_window = window.open('', 'mywindow', 'status=1,width=350,height=150'); my_window.document.
...iddframe.style.bottom = "0"; ohiddframe.style.width = "0"; ohiddframe.style.height = "0"; ohiddframe.style.border = "0"; ohiddframe.src = surl; document.body.appendchild(ohiddframe); } </script> </head> <body> <p><span onclick="printpage('externalpage.html');" style="cursor:pointer;text-decoration:underline;color:#0000ff;">print external page!</span></p> </body> </html> note: older
versions of internet explorer cannot print the contents of a hidden <iframe>.
<a>: The Anchor element - HTML: Hypertext Markup Language
note: when using target, add rel="noreferrer noopener" to avoid exploitation of the window.opener api; note: in newer browser
versions (e.g.
... using target="_blank" without rel="noreferrer" and rel="noopener" makes the website vulnerable to window.opener api exploitation attacks (vulnerability description), although note that, in newer browser
versions (e.g.
...</p> strong link text luckily, this is an easy fix, and it’s actually shorter than the inaccessible
version!
<img>: The Image Embed element - HTML: Hypertext Markup Language
x, internet explorer, opera, safari tiff tagged image file format image/tiff .tif, .tiff none built-in; add-ons required webp web picture format image/webp .webp chrome, edge, firefox, opera the abbreviation for each format links to a longer description of the format, its capabilities, and detailed browser compatibility information; including which
versions introduced support and specific special features that may have been introduced later.
... note: this attribute is mentioned in the latest w3c
version, html 5.2, but has been removed from the whatwg’s html living standard.
... <a href="https://developer.mozilla.org"> <img src="https://udn.realityripple.com/samples/6c/98485e5d8a.png" alt="visit the mdn site"> </a> using the srcset attribute in this example we include a srcset attribute with a reference to a high-resolution
version of the logo; this will be loaded instead of the src image on high-resolution devices.
<link>: The External Resource Link element - HTML: Hypertext Markup Language
ico is more ubiquitous, so you should use this format if cross-browser support is a concern (especially for old ie
versions).
...also this attribute doesn't stand for "revision" and must not be used with a
version number, even though many sites misuse it in this way.
...this provides a way for users to see multiple
versions of a page.
HTML elements reference - HTML: Hypertext Markup Language
<picture> the html <picture> element contains zero or more <source> elements and one <img> element to offer alternative
versions of an image for different display/device scenarios.
...in addition, you can create custom
versions of standard html elements.
... <image> the obsolete html image element (<image>) is an obsolete remnant of an ancient
version of html lost in the mists of time; use the standard <img> element instead.
HTML documentation index - HTML: Hypertext Markup Language
116 <image>: the obsolete image element element, html, html element reference, html reference, html element, non-standard, obsolete, reference the obsolete html image element (<image>) is an obsolete remnant of an ancient
version of html lost in the mists of time; use the standard <img> element instead.
... 175 <picture>: the picture element element, graphics, html, html embedded content, images, reference, web, webp, picture the html <picture> element contains zero or more <source> elements and one <img> element to offer alternative
versions of an image for different display/device scenarios.
... 236 quirks mode and standards mode gecko, guide, html, needsupdate, web development, web standards, xhtml in the old days of the web, pages were typically written in two
versions: one for netscape navigator, and one for microsoft internet explorer.
MIME types (IANA media types) - HTTP
image list at iana image or graphical data including both bitmap and vector still images as well as animated
versions of still image formats such as animated gif or apng.
...x, internet explorer, opera, safari tiff tagged image file format image/tiff .tif, .tiff none built-in; add-ons required webp web picture format image/webp .webp chrome, edge, firefox, opera the abbreviation for each format links to a longer description of the format, its capabilities, and detailed browser compatibility information; including which
versions introduced support and specific special features that may have been introduced later.
... audio and video types as is the case for images, html doesn't mandate that web browsers support any specific file and codec types for the <audio> and <video> elements, so it's important to consider your target audience and the range of browsers (and
versions of those browsers) they may be using when choosing the file type and codecs to use for media.
SameSite cookies - HTTP
none used to be the default value, but recent browser
versions made lax the default value to have reasonably robust defense against some classes of cross-site request forgery (csrf) attacks.
... none requires the secure attribute in latest browser
versions.
... cookies without samesite default to samesite=lax recent
versions of modern browsers provide a more secure default for samesite to your cookies and so the following message might appear in your console: some cookies are misusing the “samesite“ attribute, so it won’t work as expected.
HTTP Messages - HTTP
in http/1.1, and earlier
versions of the protocol, these messages were openly sent across the connection.
... options * http/1.1 the http
version, which defines the structure of the remaining message, acting as an indicator of the expected
version to use for the response.
... http responses status line the start line of an http response, called the status line, contains the following information: the protocol
version, usually http/1.1.
Proxy Auto-Configuration (PAC) file - HTTP
in chrome (
versions 52 to 73), you can disable this by setting pachttpsurlstrippingenabled to false in policy or by launching with the --unsafe-pac-url command-line flag (in chrome 74, only the flag works, and from 75 onward, there is no way to disable path-stripping; as of chrome 81, path-stripping does not apply to http urls, but there is interest in changing this behavior to match https); in firefox, the prefere...
...value format the javascript function returns a single string if the string is null, no proxies should be used the string can contain any number of the following building blocks, separated by a semicolon: direct connections should be made directly, without any proxies proxy host:port the specified proxy should be used socks host:port the specified socks server should be used recent
versions of firefox support as well: http host:port the specified proxy should be used https host:port the specified https proxy should be used socks4 host:port socks5 host:port the specified socks server (with the specified sock
version) should be used if there are multiple semicolon-separated settings, the left-most setting will be used, until firefox fails to establish the connection to the...
... the most "original" implementation of pac and its javascript libraries is, therefore, nsproxyautoconfig.js found in early
versions of firefox.
About JavaScript - JavaScript
the first ever javascript was created by brendan eich at netscape, and has since been updated to conform to ecma-262 edition 5 and later
versions.
... besides the above implementations, there are other popular javascript engines such as:- google's v8, which is used in the google chrome browser and recent
versions of opera browser.
... carakan in old
versions of opera.
Grammar and types - JavaScript
data type con
version javascript is a dynamically typed language.
...for example: '37' - 7 // 30 '37' + 7 // "377" converting strings to numbers in the case that a value representing a number is in memory as a string, there are methods for con
version.
... note : trailing commas can create errors in older browser
versions and it is a best practice to remove them.
JavaScript language resources - JavaScript
this was the first
version of the ecmascript standard.
... ecma-262 5.1 edition pdf, html june 2011 this
version is fully aligned with the 3rd edition of the international standard iso/iec 16262:2011.
...language specification ecma-402 3rd edition html june 2016 ecmascript 2016 internationalization api specification ecma-262 8th edition html june 2017 ecmascript 2017 language specification ecma-402 4th edition html june 2017 ecmascript 2017 internationalization api specification es.next is a dynamic name that refers to whatever the next
version is at the time of writing.
JSON.stringify() - JavaScript
boolean, number, and string objects are converted to the corresponding primitive values during stringification, in accord with the traditional con
version semantics.
...if any such values are encountered during con
version they are either omitted (when found in an object) or changed to null (when found in an array).
... it should return the value that should be added to the json string, as follows: if you return a number, string, boolean, or null, the stringified
version of that value is used as the property's value.
String - JavaScript
if you wish to compare without regard to upper or lower case characters, use a function similar to this: function isequal(str1, str2) { return str1.touppercase() === str2.touppercase() } // isequal upper case is used instead of lower case in this function, due to problems with certain utf-8 character con
versions.
...it performs type con
version when called as a function, rather than as a constructor, which is usually more useful.
...prototype.bold() <b> string.prototype.fixed() <tt> string.prototype.fontcolor() <font color="color"> string.prototype.fontsize() <font size="size"> string.prototype.italics() <i> string.prototype.link() <a href="url"> (link to url) string.prototype.small() <small> string.prototype.strike() <strike> string.prototype.sub() <sub> string.prototype.sup() <sup> examples string con
version it's possible to use string as a more reliable tostring() alternative, as it works when used on null, undefined, and on symbols.
Logical NOT (!) - JavaScript
n1 = !true // !t returns false n2 = !false // !f returns true n3 = !'' // !f returns true n4 = !'cat' // !t returns false double not (!!) it is possible to use a couple of not operators in series to explicitly force the con
version of any value to the corresponding boolean primitive.
... the con
version is based on the "truthyness" or "falsyness" of the value (see truthy and falsy).
... the same con
version can be done through the boolean function.
JavaScript
on june 17, 2015, ecma international published the sixth major
version of ecmascript, which is officially called ecmascript 2015, and was initially referred to as ecmascript 6 or es6.
...this documentation refers to the latest draft
version, which is currently ecmascript 2020.
... javascript
versions and release notes browse javascript's feature history and implementation status.
end - SVG: Scalable Vector Graphics
examples offset example <svg width="120" height="120" viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"
version="1.1"> <!-- animated rectangles --> <rect x="10" y="35" height="15" width="0"> <animate attributetype="xml" attributename="width" to="100" begin="0s" end="8s" fill="freeze" /> </rect> <rect x="10" y="60" height="15" width="0"> <animate attributetype="xml" attributename="width" to="75" begin="0s" end="6s" ...
...10" y="20" text-anchor="middle">8s</text> <line x1="110" y1="25" x2="110" y2="105" stroke="grey" stroke-width=".5" /> <line x1="10" y1="30" x2="110" y2="30" stroke="grey" stroke-width=".5" /> <line x1="10" y1="105" x2="110" y2="105" stroke="grey" stroke-width=".5" /> </svg> event example <svg width="120" height="120" viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"
version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink"> <!-- animated rectangle --> <rect x="10" y="35" height="15" width="0"> <animate attributetype="xml" attributename="width" from="0" to="100" begin="0s" end="endbutton.click" dur="8s" repeatcount="indefinite" fill="freeze" /> </rect> <!-- trigger --> <rect id="endbutton" style="cur...
...0" y="20" text-anchor="middle">8s</text> <line x1="110" y1="25" x2="110" y2="55" stroke="grey" stroke-width=".5" /> <line x1="10" y1="30" x2="110" y2="30" stroke="grey" stroke-width=".5" /> <line x1="10" y1="55" x2="110" y2="55" stroke="grey" stroke-width=".5" /> </svg> accesskey example <svg width="120" height="120" viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"
version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink"> <!-- animated rectangles --> <rect x="10" y="35" height="15" width="0"> <animate attributetype="xml" attributename="width" from="0" to="100" begin="0s" end="accesskey(e)" dur="8s" repeatcount="indefinite" fill="freeze" /> </rect> <!-- trigger --> <text x="60" y="80" text-anchor="...
SVG documentation index - SVG: Scalable Vector Graphics
versions of svg viewers prior to the release of firefox 1.5 unfortunately paid scant attention to namespaces, but they are essential to multi-xml dialect supporting user agents such as gecko-based browsers which must be very strict.
... 12 svg 2 support in mozilla firefox, svg svg 2 is the next major
version of the svg standard, which is a complete rework of the svg 1.2 draft.
... 240
version deprecated, svg, svg attribute the
version attribute is used to indicate what specification a svg document conforms to.
SVG 2 support in Mozilla - SVG: Scalable Vector Graphics
svg 2 is the next major
version of the svg standard, which is a complete rework of the svg 1.2 draft.
...
version 2 contains a lot of changes regarding the last stable
version svg 1.1.
... implementation status unknown auto as initial value for width and height attributes of <svg> implementation status unknown baseprofile and
version attributes removed from <svg> implementation status unknown svgsvgelement.forceredraw() deprecated turned into a no-op (bug 733764) svgsvgelement.deselectall() deprecated not yet deprecated (bug 1302705) <switch> not affecting <style> implementation status unknown requiredfeatures attribute removed implementation status unknown svgsvgele...
Clipping and masking - SVG: Scalable Vector Graphics
creating clips we create the above mentioned semicircle based on a circle element: <svg
version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <defs> <clippath id="cut-off-bottom"> <rect x="0" y="0" width="200" height="100" /> </clippath> </defs> <circle cx="100" cy="100" r="100" clip-path="url(#cut-off-bottom)" /> </svg> centered at (100,100) a circle with radius 100 is painted.
... <svg width="200" height="200"
version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <defs> <lineargradient id="gradient"> <stop offset="0" stop-color="black" /> <stop offset="1" stop-color="white" /> </lineargradient> <mask id="mask"> <rect x="0" y="0" width="200" height="200" fill="url(#gradient)" /> </mask> </defs> <rect x="0" y="0" width="200" height=...
...hence, if you set a stroke opacity on an element, that also has a fill, the fill will shine through on half of the stroke, while on the other half the background will appear: <svg width="200" height="200"
version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <rect x="0" y="0" width="200" height="200" fill="blue" /> <circle cx="100" cy="100" r="50" stroke="yellow" stroke-width="40" stroke-opacity=".5" fill="red" /> </svg> screenshotlive sample you see in this example the red circle on blue background.
Getting started - SVG: Scalable Vector Graphics
<svg
version="1.1" baseprofile="full" width="300" height="200" xmlns="http://www.w3.org/2000/svg"> <rect width="100%" height="100%" fill="red" /> <circle cx="150" cy="100" r="80" fill="green" /> <text x="150" y="125" font-size="60" text-anchor="middle" fill="white">svg</text> </svg> copy the code and paste it in a file demo1.svg.
...(firefox users: click here) the rendering process involves the following: we start with the <svg> root element: a doctype declaration as known from (x)html should be left off because dtd based svg validation leads to more problems than it solves before svg 2, to identify the
version of the svg for other types of validation the
version and baseprofile attributes should always be used instead.
... both
version and baseprofile attributes are deprecated in svg 2.
Introduction - SVG: Scalable Vector Graphics
svg is supported in all modern browsers and even a couple
versions back in some cases.
...firefox has supported some svg content since
version 1.5, and that support level has been growing with each release since.
... flavors of svg since becoming a recommendation in 2003, the most recent "full" svg
version is 1.1.
How to fix a website with blocked mixed content - Web security
this follows a practice adopted by internet explorer (since
version 9) and chrome.
... often, the https
version of the content already exists and this just requires adding an "s" to links - http:// to https://.
... for other domains, use the site's https
version if available.
XML introduction - XML: Extensible Markup Language
<?xml
version="1.0" encoding="utf-8"?> attributes:
version : used
version xml in this document.
... example <?xml
version="1.0" encoding="utf-8"?> <message> <warning> hello world <!--missing </warning> --> </message> now let's look at a corrected
version of that same document: <?xml
version="1.0" encoding="utf-8"?> <message> <warning> hello world </warning> </message> a document that contains an undefined tag is invalid.
...for example, to create a new &warning; entity, you can do this: <?xml
version="1.0" encoding="utf-8"?> <!doctype body [ <!entity warning "warning: something bad happened...
Introduction to using XPath in JavaScript - XPath
this enables con
version between the prefixes used in the xpath expressions and the possibly different prefixes used in the document.
... <?xml
version="1.0"?> <people xmlns:xul = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" > <person> <name first="george" last="bush" /> <address street="1600 pennsylvania avenue" city="washington" country="usa"/> <phonenumber>202-456-1111</phonenumber> </person> <person> <name first="tony" last="blair" /> <address street="10 downing street" city="london" country="uk"/> <phonenumber...
...for example with this document: <?xml
version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/atom"> <entry /> <entry /> <entry /> </feed> doc.evaluate('//entry', doc, nsresolver, xpathresult.any_type, null) will return an empty set, where nsresolver is the resolver returned by creatensresolver.
Module structure of the SDK - Archive of obsolete content
although the sdk repository in github includes copies of these modules, they are built into firefox and by default, when you run or build an add-on using jpm run or jpm xpi, it is the
versions of the modules in firefox that are used.
... if you need to use a different
version of the modules, you can do this by checking out the
version of the sdk that you need and passing the -o or --overload option to jpm run or jpm xpi.
SDK API Lifecycle - Archive of obsolete content
it has two main components: a stability index that defines how stable each module is a deprecation process that defines when and how stable sdk apis can be changed or removed from future
versions of the sdk while giving developers enough time to update their code.
...you can try it out and provide feedback, but we may change or remove it in future
versions without having to pass through a formal deprecation process.
SDK and XUL Comparison - Archive of obsolete content
compatibility although we can't promise we'll never break a high-level api, maintaining compatibility across firefox
versions is a top priority for us.
... mobile support starting in sdk 1.5, we've added experimental support for developing add-ons on the new native
version of firefox mobile.
XUL Migration Guide - Archive of obsolete content
because we expect to keep these apis compatible as new
versions of firefox are released, we call them the "supported" apis.
...but note that unlike the supported apis, low-level apis do not come with a compatibility guarantee, so we do not expect code using them will necessarily continue to work as new
versions of firefox are released.
page-mod - Archive of obsolete content
in earlier
versions of this module, you couldn't use relative urls in stylesheets loaded in this way, and you had to use a workaround.
... in current
versions this has been fixed, and the workaround is no longer needed.
self - Archive of obsolete content
version this property contains the add-on's
version string.
... it comes from the
version property set in the package.json file in the main package.
tabs - Archive of obsolete content
from
version 1.15, use the favicon module's getfavicon() function instead.
...this may come from http headers or other sources of mime information, and might be affected by automatic type con
versions performed by either the browser or extensions.
Localization - Archive of obsolete content
for example, here's a "package.json" defining a german localization for title and description: { "locales": { "de": { "title": "monstergenerator", "description": "erstelle dein eigenes monster" } }, "name": "monster-builder", "license": "mpl 2.0", "author": "me", "
version": "0.1", "title": "monster builder", "id": "monster-builder@me.org", "description": "build your own monster" } using localized strings in preferences by including a "preferences" structure in your add-on's "package.json" file, you can define preferences for your add-on that the user can see and edit using firefox's add-ons manager.
... for example, suppose your "package.json" defines a single preference: { "preferences": [ { "type": "string", "name": "monster_name", "value": "gerald", "title": "name" } ], "name": "monster-builder", "license": "mpl 2.0", "author": "me", "
version": "0.1", "title": "monster builder", "id": "monster-builder@me.org", "description": "build your own monster" } in your "en-us.properties" file, include these two items: monster_name_title= name monster_name_description= what is the monster's name?
Boxes - Archive of obsolete content
make the box style="display: block" and the wrapping behavior will occur when the box is resized: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="yourwindow" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <hbox style="display: block"> <label value="aaa"/> <label value="bbb"/> <label value="ccc"/> <label value="ddd"/> <label value="eee"/> <label value="fff"/> <label value="ggg"/> <label value="hhh"/> <label value="iii"/> <label value="jjj"/>...
...this keeps the image from stretching inside the box: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <box align="start" style="display:block"> <image src="chrome://global/skin/icons/error.png" style="padding:5px"/> <textbox /> <image src="chrome://global/skin/icons/error.png" style="padding:5px"/> <button label="hello"/> <image src="chr...
Forms related code snippets - Archive of obsolete content
ype html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>datepicker example - mdn</title> <script type="text/javascript"> /*\ |*| |*| datepicker example mdndeveloper network |*| |*| https://developer.mozilla.org/docs/code_snippets/forms |*| https://developer.mozilla.org/user:fusionchess |*| |*| this snippet is released under the gnu public license,
version 3 or later.
... note: the filereader() constructor was not supported by internet explorer for
versions before 10.
Miscellaneous - Archive of obsolete content
var osstring = services.appinfo.os; detecting the host application and
version // get the name of the application running us services.appinfo.name; // returns "firefox" for firefox services.appinfo.
version; // returns "2.0.0.1" for firefox
version 2.0.0.1 retrieving the
version of an extension as specified in the extension's install.rdf components.utils.import("resource://gre/modules/addonmanager.jsm"); addonmanager.getaddonbyid("extension-guid@example.org", function(addon) { // this is an asynchronous callback function that might not be called immediately alert("my extension...
...'s
version is " + addon.
version); }); restarting firefox/thunderbird/seamonkey_2.0 for firefox 3 see onwizardfinish around here: http://mxr.mozilla.org/seamonkey/sou...pdates.js#1639 for firefox 2 see around here: http://mxr.mozilla.org/mozilla1.8/so...pdates.js#1631 bug 338039 tracks improving this situation by providing a simple method to restart the application.
Custom about: URLs - Archive of obsolete content
this code will work for all
versions of firefox 4 and up.
... contractid() { return `@mozilla.org/network/protocol/about;1?what=${aboutpage_word}`; } static get queryinterface() { return xpcomutils.generateqi([ci.nsiaboutmodule]); } constructor() { object.freeze(this); } geturiflags(auri) { return ci.nsiaboutmodule.allow_script; } newchannel(auri, asecurity_or_aloadinfo) { let channel; if (services.vc.compare(services.appinfo.
version, '47.*') > 0) { const uri = services.io.newuri(aboutpage_uri, null, null); // greater than or equal to firefox48 so asecurity_or_aloadinfo is aloadinfo channel = services.io.newchannelfromuriwithloadinfo(uri, asecurity_or_aloadinfo); } else { channel = services.io.newchannel(aboutpage_uri, null, null); } channel.originaluri = auri; return channel; ...
Extension Etiquette - Archive of obsolete content
don't be redundant and include "extension," "mozilla/firefox/thunderbird," or the
version number in the name.
...
version numbering please follow the mozilla pattern: major
version dot current incarnation dot security/bugfix release (like 1.0.7).
Inline options - Archive of obsolete content
here is an example of an options.xul file: <?xml
version="1.0"?> <!doctype mydialog system "chrome://myaddon/locale/mydialog.dtd"> <vbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <setting type="bool" pref="extensions.myaddon.bool" title="boolean" desc="stored as a boolean preference" /> </vbox> note that it's limited to <setting> tags.
...tionstype as 2: <em:optionsurl>chrome://myaddon/content/name_of_my_file_to_use_for_inline_opts.xul</em:optionsurl> <em:optionstype>2</em:optionstype> your chrome.manifest file should contain the following, otherwise the path chrome://myaddon/content/name_of_my_file_to_use_for_inline_opts.xul will not exist content myaddon ./ this method allows you to maintain compatibility with previous
versions of firefox by adding an override to your chrome.manifest: ...
Installing Extensions and Themes From Web Pages - Archive of obsolete content
ttribute("hash"), tostring: function () { return this.url; } }; this specifies the display name (foo) for use in the confirmation dialog, the url to the extension (which is the link href, recall), the icon url to display in the confirmation dialog, a hash of the xpi file contents (to protect against corrupted downloads), and a tostring function which will allow this code to work with
versions of firefox 0.8 and earlier.
... tostring() the tostring() property should return the xpi url, for compatibility with firefox browsers older than
version 1.0, and other applications such as seamonkey.
Multiple item extension packaging - Archive of obsolete content
there is currently no feature to prevent or warn the user when installing an older
version of an extension.
... when specifying em:targetapplication the min
version specified should be the highest min
version and the max
version specified should be the lowest max
version from all of the installable bundles contained by the multiple item package for the em:targetapplication.
Chapter 6: Firefox extensions and XUL applications - Archive of obsolete content
installing this is bundled with the mozilla suite and the current
version of seamonkey, but it needs to be installed as an extension in firefox.
...fixme: not sure we should talk about this tool installation windows users can take advantage of a self-contained
version created by soutaro matsumoto called “gonzui for win32” http://soutaro.com/gonzui-win32/ run it as follows: download gonzui-win32-1.2.2.zip and expand it into a suitable directory.
Adding Toolbars and Toolbar Buttons - Archive of obsolete content
the way icons are handled in firefox changed considerably after firefox 4, so supporting older
versions is not mentioned here (you can check this document's change history for older revisions, though).
... you can have a different skin directory for each operating system using manifest flags in the chrome.manifest file: skin xulschoolhello classic/1.0 skin/unix/ skin xulschoolhello classic/1.0 skin/win/ os=winnt skin xulschoolhello classic/1.0 skin/mac/ os=darwin the os
version flag can be used in case we wanted to have different icons for mac os x lion and above, and others for older systems.
Appendix C: Avoiding using eval in Add-ons - Archive of obsolete content
you don't have to care about parameter naming (or changes in naming in future application
versions) or short-hand/arrow functions.
... document.getelementbyid("mymenu").docommand(); alternative: just hard-code what should happen if you know that the current
version of the application will call { executesomething(); executesomethingelse();} then just do the same in your code.
Custom XUL Elements with XBL - Archive of obsolete content
we'll look into xbl using a modified
version of the hello world extension.
...we use the shorthand
version of the property tag: <property name="name" onget="return this.getattribute('name');" onset="this.setattribute('name', val);" /> there's a less compact
version of the property tag that should be used if the getter or setter code involves more than one line of code: <property name="name"> <getter><![cdata[ return this.getattribute('name'); ]]></getter> <setter><![cdata[ thi...
Getting Started with Firefox Extensions - Archive of obsolete content
the hello world extension our sample extensions and this tutorial in general are meant for modern
versions of firefox, but most of it works on older
versions too.
...unsigned add-ons can still be installed in developer edition, nightly, and esr
versions of firefox, after toggling the xpinstall.signatures.required preference in about:config.
Useful Mozilla Community Sites - Archive of obsolete content
you just need to upload a new
version of your extension, and once it's approved it will be pushed as an update to all your users.
... there's a significant portion of users that use a localized
version of firefox, so you shouldn't neglect them.
Add-ons - Archive of obsolete content
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.
...these details apply to firefox, thunderbird, and seamonkey (
version 2.0 and above).
MMgc - Archive of obsolete content
it is possible that a future
version of mmgc might do exact marking.
...classic reference counting previous
versions of the flash player, up to flash player 7, used reference counting to track object lifetimes.
Making it into a dynamic overlay and packaging it up for distribution - Archive of obsolete content
we need to change some urls in the copy of tinderstatusoverlay.xul to point to the new locations the files will be in when they get installed via the xpi: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://tinderstatus/content/tinderstatus.css" type="text/css"?> <overlay id="tinderstatusoverlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript" src="chrome://tinderstatus/content/tinderstatus.js" /> <statusbar id="status-bar"> <statusbarpanel class="statusbarpanel-iconic...
...contents.rdf goes in the content sub-subdirectory: <?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:chrome="http://www.mozilla.org/rdf/chrome#"> <rdf:seq about="urn:mozilla:package:root"> <rdf:li resource="urn:mozilla:package:tinderstatus"/> </rdf:seq> <rdf:description about="urn:mozilla:package:tinderstatus" chrome:displayname="mozilla tinderstatus extension" chrome:author="myk melez" ...
Downloading Nightly or Trunk Builds - Archive of obsolete content
so to figure out how to download a cutting edge or bleeding edge or 'beta'
version of firefox, you need to look for a "build" (which is developer-speak for the packaged files you can download) of 1.9.1 (the number of the underlying 'platform' called 'gecko' or 'mozilla' that firefox uses).
...the three common cases are "trunk", meaning the most recent
version of mozilla; "branch", meaning the
version before trunk (though it can be any
version before trunk); and "next", meaning a possible
version in the future.
GRE - Archive of obsolete content
xulrunner: the new gre xulrunner is the new
version of the gre, which not only allows embedding but is capable of bootstrapping entire xul applications such as firefox.
...this allows the embedder to specify what
version(s) of gre are appropriate, and to specify any special features the gre must have (currently there are no special features defined).
Menu - Archive of obsolete content
a future
version of jetpack may change this behavior; see bug 527924.
... a future
version of jetpack will hopefully provide a better solution.) jetpack.menu.context.page the content context menu.
Monitoring downloads - Archive of obsolete content
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.
... note: the mozistorageconnection method close() is being added to firefox 3 alpha 8; in prior
versions of firefox, there is no way to explicitly close the database.
Nanojit - Archive of obsolete content
example the following code works with spidermonkey's hacked
version of nanojit.
...the con
version from lir to a program like one shown above is the task of the parser.
String Quick Reference - Archive of obsolete content
why: avoid copying and con
version from literal char-based strings to utf16 strings.
... old way: use nsautostring and assignwithcon
version() nsautostring widestring; widestring.assignwithcon
version("some string"); callwidefunction(widestring); // use widestring again, but need a const prunichar* callwidewithflatstring(widestring.get()) nsautostring widestring2; widestring2.assignwithcon
version("another string"); callwidefunction(widestring2); new way: use ns_literal_string or ns_named_literal_string // pre-declare the variable if you'll use it multiple times ns_named_literal_string(widestring, "some string"); callwidefunction(widestring); // use widestring again, but need a const prunichar* callwidewithflatstring(widestring.get()); // inline the string with ns_literal_string callwidefunction(ns_literal_string("another string")); converting literal strings to string objec...
Supporting private browsing mode - Archive of obsolete content
this._os.addobserver(this, "private-browsing", false); this._os.addobserver(this, "quit-application", false); try { var pbs = components.classes["@mozilla.org/privatebrowsing;1"] .getservice(components.interfaces.nsiprivatebrowsingservice); this._inprivatebrowsing = pbs.privatebrowsingenabled; } catch(ex) { // ignore exceptions in older
versions of firefox } }, observe : function (asubject, atopic, adata) { if (atopic == "private-browsing") { if (adata == "enter") { this._inprivatebrowsing = true; if (this.watcher && "onenterprivatebrowsing" in this._watcher) { this.watcher.onenterprivatebrowsing(); } } else if (adata == "exit") { this._inprivatebrowsing = fa...
...uit-application") { this._os.removeobserver(this, "quit-application"); this._os.removeobserver(this, "private-browsing"); } }, get inprivatebrowsing() { return this._inprivatebrowsing; }, get watcher() { return this._watcher; }, set watcher(val) { this._watcher = val; } }; of special note is the fact that this helper object is designed to not break on
versions of firefox without private browsing support (those prior to firefox 3.5).
Running Tamarin acceptance tests - Archive of obsolete content
ce $ export asc=/users/build/hg/tamarin-redux/utils/asc.jar $ export builtinabc=/users/build/hg/tamarin-redux/generated/builtin.abc $ export shellabc=/users/build/hg/tamarin-redux/generated/shell_toplevel.abc $ export avm=/users/build/hg/tamarin-redux/objdir-release/shell/avmshell $ python runtests.py tamarin tests started: 2010-09-28 10:37:06.410676 current configuration: x64-mac-tvm-release avm
version: 5260:6d1899261bac executing 2532 tests against vm: /users/build/hg/builds/5260-6d1899261bac/mac/avmshell_64 2532 running abcasm/abs_helper.as skipping...
... it doesn't already exist on the phone in /data/local/tamarin $ adb push tamarin-redux/platform/android/android_runner.sh /data/local/tamarin/android_runner.sh $ adb shell 'chmod 777 /data/loca/android_runner.sh' test it out with a simple .abc or no args for usage (should return exitcode=0) $ tamarin-redux/platform/android/android_shell.py hello.abc hello exitcode=0 test it out by retrieving the
version information of the shell on the android device $ $avm -d
version shell 1.4 debug build 6299:455bca954565 features avmsystem_32bit;avmsystem_unaligned_int_access;avmsystem_little_endian;avmsystem_arm;avmsystem_unix; avmfeature_jit;avmfeature_abc_interp;avmfeature_selftest;avmfeature_eval;avmfeature_protect_jitmem; avmfeature_shared_gcheap;avmfeature_cache_gqcn;avmfeature_safepoints;avmfeature_swf12...
Running Tamarin performance tests - Archive of obsolete content
--vm
version specify vm
version e.g.
... 502, use this if cannot be calculated from executable --vm2
version specify
version of avm2 --vmargs2 args to pass to avm2, if not specified --vmargs will be used --nooptimize do not optimize files when compiling --perfm parse the perfm results from avm --csv= also output to csv file, filename required --csvappend append to csv file instead of overwriting --score compute and print geometric mean of scores --index= index file to use (must end with .py) --saveindex= save results to given index file name option details indexing: there are two command line flags that control indexing: --index and —saveindex both require an index filename to be specified after the flag.
XML in Mozilla - Archive of obsolete content
for pointing into resources in xml documents mozilla also supports fixptr, a simplified, non-compatible
version of xpointer.
...add this line: pref("layout.selectanchor", true); dom load and save methods document.load() is a part of an old
version of the w3c dom level 3 load & save module.
Install Wizards (aka: Stub Installers) - Archive of obsolete content
m the net or from local xpi modules found next to the installer binary the code that processes user selections the code that calls the xpinstall engine through xpistub the libxpnet code that is statically linked in the stub installers are written in code native to the platform using native widget toolkits including the windows api for windows, the mac toolbox for the mac, and gtk for the unix
version.
... to learn more about the three platform-specific
versions of the stub installer follow the links below: unix stub installer mac stub installer windows stub installer what do we mean by xpistub?
Trigger Scripts and Install Scripts - Archive of obsolete content
triggers use the installtrigger object methods to compare software
versions, install chrome, and perform simple software installations.
... install scripts use the install, file, install
version and platform-specific installation object methods to initialize, queue, manage, and perform the installation of one or more software packages.
Windows Install - Archive of obsolete content
var winreg = getwinregistry() ; if(winreg != null) { // here, we get the current
version.
... winreg.setrootkey(winreg.hkey_current_user) ;// current_user subkey = "software\\microsoft\\windows\\current
version\\runonce" ; winreg.createkey(subkey,""); valname = "ren8dot3"; value = fprogram + "ren8dot3.exe " + ftemp + "ren8dot3.ini"; err = winreg.setvaluestring(subkey, valname, value); } } function prepareren8dot3(listlongfilepaths) { var ftemp = getfolder("temporary"); var fprogram = getfolder("program"); var fren8dot3ini = getwinprofile(ftemp, "ren8dot3.ini"); var binicreated = false; var flongfilepath; var sshortfilepath; if(fren8dot3ini != null) { for(i = 0; i < listlongfilepaths.length; i++) { flongfilepath = getfolder(fprogram, listlongfilepaths[i]); sshortfilepath = file.windowsgetshortname(flongf...
script.type - Archive of obsolete content
note: if the javascript file is in chrome://, setting this attribute to application/javascript will always use the latest available javascript
version.
... if you omit this attribute, the default (and older) javascript
version is used (like you get when including a javascript file from web content without specifying a
version number).
textbox (Toolkit autocomplete) - Archive of obsolete content
note: for seamonkey 2.0 and all
versions of thunderbird prior to 3.0 you also need to provide the disablehistory attribute.
...window, document, or any of the functions/objects/variables bound to the window object event object example <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="text/javascript"> function myfunction(e){ /* do something cool here or just say the below */ alert(e.target.nodename); } </script> ...
Textbox (XPFE autocomplete) - Archive of obsolete content
note: for seamonkey 2.0 and all
versions of thunderbird prior to 3.0 you also need to provide the disablehistory attribute.
...window, document, or any of the functions/objects/variables bound to the window object event object example <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="text/javascript"> function myfunction(e){ /* do something cool here or just say the below */ alert(e.target.nodename); } </script> ...
The Joy of XUL - Archive of obsolete content
while such changes are extensive and affect most (if not all) of the application, they are also isolated from one another, enabling the core xul definition and application logic to be shared among all of the custom
versions.
...using xpinstall it was easy for the developers to package a
version of calendar that could be installed directly over the internet by clicking a link.
Creating Dialogs - Archive of obsolete content
example dialog source view <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> <dialog id="donothing" title="dialog example" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" buttons="accept,cancel" ondialogaccept="return dook();" ondialogcancel="return docancel();"> <script> function dook(){ alert("you pressed ok!"); return true; } fu...
... example dialog with more features <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> <dialog id="mydialog" title="my dialog" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload="window.sizetocontent();" buttons="accept,cancel" buttonlabelaccept="set favourite" buttonaccesskeyaccept="s" ondialogaccept="return dosave();" ...
Creating a Window - Archive of obsolete content
the simplest xul file has the following structure: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <!-- other elements go here --> </window> this window will not do anything since it doesn't contain any ui elements.
...here is a line by line breakdown of the code above: <?xml
version="1.0"?> this line simply declares that this is an xml file.
Document Object Model - Archive of obsolete content
of course, we wouldn't want this in the final
version but we'll add it to reassure us that something would happen.
...in this case, the type con
version is done for you so the property is more convenient.
Introduction - Archive of obsolete content
standalone xulrunner application xulrunner is a packaged
version of the mozilla platform which allows you to create standalone xul applications.
...due to various changes in xul syntax over time, you will want to get the latest
version for the examples to work properly.
Localization - Archive of obsolete content
for japanese: <!entity findlabel "検索"> for example, the following text: <description value="&findlabel;"/> is translated as: english
version: <description value="find"/> japanese
version: <description value="検索"/> you would declare an entity for each label or string of text that you use in your interface.
... <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <?xml-stylesheet href="findfile.css" type="text/css"?> <!doctype window system "chrome://findfile/locale/findfile.dtd"> <window id="findfile-window" title="&findwindow.title;" persist="screenx screeny width height" orient="horizontal" onload="initsearchlist()" xmlns="http://www.mozilla.org/keymaster/gatekeeper/...
Styling a Tree - Archive of obsolete content
it is really just an xpcom
version of an array.
... getcellproperties: function(row,col){ if ((row %4) == 0){ return "makeitblue"; } } to support gecko
versions before and after this change use.
XPCOM Interfaces - Archive of obsolete content
the windows and macintosh
versions of a file component would be significantly different.
...the syntax of a contract id is: @<internetdomain>/module[/submodule[...]];<
version>[?<name>=<value>[&<name>=<value>[...]]] other components can be referred to in a similar way.
XUL Structure - Archive of obsolete content
remember that remote xul will have significant restrictions on what it can do, and does not work with current firefox
versions!
... by default, mozilla applications parse xul files and scripts, and store a pre-compiled
version in memory for the remainder of the application session.
XUL Questions and Answers - Archive of obsolete content
the following is the code they wrote: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="test-window" title="check list test" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gat...re.is.only.xul"> <listbox rows="4"> <listhead> <listheader label="multi-column"/> </listhead> <listcols> <listcol flex="1"/> </listcols> <listitem> <listcell type="...
... i get the error: gecko min
version requirement not met.
XUL Template Primer - Bindings - Archive of obsolete content
<?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin" type="text/css"?> <window xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" align="vertical"> <vbox datasources="friends.rdf" ref="urn:root"> <template> <rule> <conditions> <content uri="?uri"/> <triple subject="?uri" predicat...
... <?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:nc="http://home.netscape.com/nc-rdf#"> <rdf:description about="urn:root"> <nc:friends> <rdf:seq> <rdf:li> <rdf:description nc:name="alison appel"> <nc:address resource="#home"/> </rdf:description> </rdf:li> <rdf:li> <rdf:description nc:name=...
XUL Coding Style Guidelines - Archive of obsolete content
<?xml
version="1.0" encoding='utf-8'?> <!-- do not localize this file: [reason...] it isn't part of the build; --> when translators see this line, they won't bother to look at the rest of the file.
...xul localizability issues xhtml 1.1 recommendation namespaces in xml extensible markup language (xml) 1.0 euro sign the unicode standard®,
version 2.1 "xml applications" by frank boumphrey.
browser - Archive of obsolete content
are you here looking for information about the firefox web browser, or because you'd like to download the latest
version of firefox?
...(this one has no post data parameter, see loaduriwithflags for a
version that does) loaduri( uri, referrer, charset ) return type: no return value load a url into the document, with the given referrer and character set.
panel - Archive of obsolete content
warning: for firefox
versions between 3.6 and 4.0, placing an iframe, browser or editor inside a panel is not supported.
...for those
versions of firefox, it is best to avoid child frames in a panel, if possible.
script - Archive of obsolete content
note: if the javascript file is in chrome://, setting this attribute to application/javascript will always use the latest available javascript
version.
... if you omit this attribute, the default (and older) javascript
version is used (like you get when including a javascript file from web content without specifying a
version number).
wizard - Archive of obsolete content
in newer
versions of mozilla, a statusbar may be placed directly inside the wizard element which will be shared among all pages.
... attributes firstpage, lastpage, pagestep, title, windowtype properties canadvance, canrewind, currentpage, onfirstpage, onlastpage, pagecount, pageindex, pagestep, title, wizardpages methods advance, cancel, extra1, extra2, getbutton, getpagebyid, goto, rewind examples <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <wizard id="thewizard" title="secret code wizard" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script> function checkcode(){ document.getelementbyid('thewizard').canadvance = (document.getelementbyid('secretcode').value == "cabbage"); } </script> <wizardpage onpageshow="checkcode();"> <label value="enter the secret code:"/> <...
Windows and menus in XULRunner - Archive of obsolete content
here is an example: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://basicapp/skin/main.css" type="text/css"?> <!doctype window system "chrome://basicapp/locale/main.dtd"> <window id="main" title="&title;" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script src="main.js"/> ...
... building on the simple window code, here is what xul menus and toolbars look like: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://basicapp/skin/main.css" type="text/css"?> <!doctype window system "chrome://basicapp/locale/main.dtd"> <window id="main" title="&title;" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script src="main.js"/> <toolbox> <menubar id="menubar"> <menu id="file-menu" label="&file;"> <menupopup id="file-popup...
XULRunner - Archive of obsolete content
releases until
version 41, xulrunner could be downloaded from ftp.mozilla.org.
... firefox (from
version 3) ships with a private xulrunner package, which can run any compatible xulrunner application using the -app switch: firefox -app application.ini is equivalent to xulrunner -app application.ini older builds are also available.
Mozilla.dev.apps.firefox-2006-09-29 - Archive of obsolete content
summary: mozilla.dev.apps.firefox - september 22-29, 2006 announcements bon echo 20060921 nightly to recieve "major update" offer mike beltnzer announced that 'users running the bon echo 20060921 nightly build will be offered the chance to upgrade to a "new
version"' firefox start up performance boris zbarsky recently performed some profiling of firefox's start up - these are some of the details discussions problem handling dmg files on mac discussion about why sometimes dmg files are not mounted correctly after they are downloaded.
... can't view keith olbermann videos a user inability to launch videos, worked fine for others, ended up being a flash
version problem.
2006-09-29 - Archive of obsolete content
summary: mozilla.dev.apps.firefox - september 22-29, 2006 announcements bon echo 20060921 nightly to recieve "major update" offer mike beltnzer announced that 'users running the bon echo 20060921 nightly build will be offered the chance to upgrade to a "new
version"' firefox start up performance boris zbarsky recently performed some profiling of firefox's start up - these are some of the details discussions problem handling dmg files on mac discussion about why sometimes dmg files are not mounted correctly after they are downloaded.
... can't view keith olbermann videos a user inability to launch videos, worked fine for others, ended up being a flash
version problem.
2006-10-26 - Archive of obsolete content
bug in firefox when import passwords from seamonkey a possible bug find - perhaps a
version error instead?
... error building firefox-2.0rc3 on uclinux an error was found about building on uclinux, user googgled the error and suggests that the error found in older
versions.
2006-10-27 - Archive of obsolete content
bug in firefox when import passwords from seamonkey a possible bug find - perhaps a
version error instead?
... error building firefox-2.0rc3 on uclinux an error was found about building on uclinux, user googgled the error and suggests that the error found in older
versions.
2006-11-3 - Archive of obsolete content
summary: mozilla.dev.l10n - november 3, 2006 announcements mozip.net 1.2.0 released: the should have been 1.0 release mozip.net 1.2.0, a gui (graphic)
version of piaip's mozip command line utility, is available here.
... seamonkey 1.0.6 and 1.1 beta upcoming the seamonkey projet is planning a security release of the stable 1.0 series as well as a beta for the 1.1
version, all possibly in the next days or week.
2006-11-10 - Archive of obsolete content
code freeze for these
versions is on november 26
version numbering changes paul reed announced changes to the way
version numbers are done for pre-releases.
... discussion
version numbering changes some discussion about paul's announcement of
version number changes meetings november 6 project status meeting (notes) november 7 bon echoe status meeting (notes) november 8 gecko 1.9/gran paradiso status meeting: (agenda) ...
NPAPI plugin developer guide - Archive of obsolete content
play nesting rules for html elements using the appropriate attributes using the embed element for plug-in display using custom embed attributes plug-in references plug-in development overview writing plug-ins registering plug-ins ms windows unix mac os x drawing a plug-in instance handling memory sending and receiving streams working with urls getting
version and ui information displaying messages on the status line making plug-ins scriptable building plug-ins building, platforms, and compilers building carbonized plug-ins for mac os x type libraries installing plug-ins native installers xpi plug-ins installations plug-in installation and the windows registry initialization and destruction initialization insta...
... mode sending a stream creating a stream pushing data into the stream deleting the stream example of sending a stream urls getting urls getting the url and displaying the page posting urls posting data to an http server uploading files to an ftp server sending mail memory allocating and freeing memory mac os flushing memory (mac os only)
version, ui, and status information displaying a status line message getting agent information getting the current
version finding out if a feature exists reloading a plug-in ...
NPAPI plugin reference - Archive of obsolete content
this can be used to handle variations in different browsers (or
versions thereof) when implementing your plug-in.
... npn_
version lets plugins obtain
version information, both of the plug-in api and of the browser itself.
title - Archive of obsolete content
netscape rss 0.91 revision 3 example <?xml
version="1.0"?> <!doctype rss system "http://my.netscape.com/publish/formats/rss-0.91.dtd"> <rss
version="0.91"> <channel> <title>advogato</title> <link>http://www.advogato.org/article/</link> <description>recent advogato articles</description> <language>en-us</language> <image> <link>http://www.advogato.org/</link> <title>advogato</title> ...
...<td>✔</td> <td>✔</td> <td>✔</td> <td>✔</td> <td>?</td> <td>?</td> <td>?</td> <td>?</td> <td>?</td> </tr> <tr> <td>rss text input element</td> <td><textinput></td> <td>✔</td> <td>✔</td> <td>✔</td> <td>✔</td> <td>?</td> <td>?</td> <td>?</td> <td>?</td> <td>?</td> </tr> </table> </center> see also none rss element</td> <th colspan="9" style="text-align:center">rss
version ...
Introduction to Public-Key Cryptography - Archive of obsolete content
for comprehensive information about dns, see a string representation of distinguished names] at the following url: https://www.ietf.org/rfc/rfc1485.txt a typical certificate every x.509 certificate consists of two sections: the data section includes the following information: the
version number of the x.509 standard supported by the certificate.
... here are the data and signature sections of a certificate in human-readable format: certificate: data:
version: v3 (0x2) serial number: 3 (0x3) signature algorithm: pkcs #1 md5 with rsa encryption issuer: ou=ace certificate authority, o=ace industry, c=us validity: not before: fri oct 17 18:36:25 1997 not after: sun oct 17 18:36:25 1999 subject: cn=jane doe, ou=finance, o=ace industry, c=us subject public key info: algorithm: pkcs #1 rsa encryption public key: modulus: 00:ca:fa:79:98...
TCP/IP Security - Archive of obsolete content
(tls is the standards-based
version of ssl
version 3.
... more information on tls is available in rfc 4346, the tls protocol
version 1.1, available at https://www.ietf.org/rfc/rfc4346.txt.
install.rdf - Archive of obsolete content
copy the following text and paste it into a text file, then save that file as "install.rdf": <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>{themes_uuid}</em:id> <em:
version>themes_
version</em:
version> <!-- target application this extension can install into, with minimum and maximum supported
versions.
... --> <em:targetapplication> <description> <!-- firefox's uuid --> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:min
version>min_ff_
version</em:min
version> <em:max
version>max_ff_
version</em:max
version> </description> </em:targetapplication> <!-- front end metadata --> <!-- my_theme --> <em:name>my_theme</em:name> <em:description>my_theme</em:description> <em:creator>your_name</em:creator> <em:contributor>contributors_names</em:contributor> <em:homepageurl>themes_homepage</em:homepageurl> <em:updateurl> url_of_update_location </em:updateurl> <em:abouturl> url_of_about_page </em:abouturl> <!-- front end integration hooks (used by theme manager)--> <em:internalname>my_theme</em:internalname> </description> </rdf> ...
Making sure your theme works with RTL locales - Archive of obsolete content
example toolbar[iconsize="large"][mode="icons"] #back-button { -moz-image-region: rect(0px 396px 34px 360px); } toolbar[iconsize="large"][mode="icons"] #back-button:-moz-locale-dir(rtl) { -moz-image-region: rect(0px 516px 34px 480px); } this specifies the default, left-to-right
version of the button, then offers an override if the user's interface is being rendered in right-to-left mode.
... */ #a > #b > #c { /* normal rules */ } #a[chromedir="rtl"] > #b > #c { /* rtl rules */ } tip: sometimes, like in the back and forward arrows, you don't really need new
versions of the images.
Using IO Timeout And Interrupt On NT - Archive of obsolete content
if these limitations with io timeout and interrupt are not acceptable to the needs of your programs, you can consider using the win95
version of nspr.
... the win95
version runs without trouble on nt, but you would lose the better performance provided by nt fibers and asynchronous io.
E4X - Archive of obsolete content
<?xml
version=...?>) (see bug 336551).
... workaround: var response = xmlhttprequest.responsetext; // bug 270553 response = response.replace(/^<\?xml\s+
version\s*=\s*(["'])[^\1]+\1[^?]*\?>/, ""); // bug 336551 var e4x = new xml(response); resources e4x tutorial processing xml with e4x on mdc e4x for templating see the list of e4x-related pages on mdc ecma-357 standard brendan's presentation e4x at faqts.com e4x quick reference at rephrase.net ...
@cc_on - Archive of obsolete content
conditional compilation is supported in internet explorer 10 standards mode and in all earlier
versions.
... /*@cc_on @*/ /*@ document.write("javascript
version: " + @_jscript_
version + "."); document.write("<br />"); @if (@_win32) document.write("running on the 32-bit
version of windows."); @elif (@_win16) document.write("running on the 16-bit
version of windows."); @else document.write("running on a different operating system."); @end @*/ requirements supported in all
versions of internet explorer, but not...
@if - Archive of obsolete content
conditional compilation is supported in internet explorer 10 standards mode and in all earlier
versions.
... /*@cc_on @*/ /*@ document.write("javascript
version: " + @_jscript_
version + "."); document.write("<br />"); @if (@_win32) document.write("running on a 32-bit
version of windows."); @elif (@_win16) document.write("running on a 16-bit
version of windows."); @else document.write("running on a different operating system."); @end @*/ requirements supported in all
versions of internet explorer, but not in w...
New in JavaScript 1.5 - Archive of obsolete content
this
version was included in netscape navigator 6.0 was released on november 14, 2000 and was also used in later
versions of netscape navigator and firefox 1.0.
... you can compare javascript 1.5 to jscript
version 5.5 and internet explorer 5.5, which was released in july 2000.
LiveConnect - Archive of obsolete content
older
versions of gecko included special support for the java<->javascript bridge (such as the java and packages global objects), but as of mozilla 16 (firefox 16 / thunderbird 16 / seamonkey 2.13) liveconnect functionality is provided solely by the oracle's java plugin.
... mailing list newsgroup rss feed related topics javascript, plugins older notes (please update or remove as needed.) while the bloated liveconnect code in the mozilla source was removed in
version 1.9.2 of the platform (see bug 442399), its former api has been restored (see also the specification and this thread) (building on npapi?), and as of java 6 update 12, extensions as well as applets can make use of this restored api.
Properly Using CSS and JavaScript in XHTML Documents - Archive of obsolete content
xhtml is xml, not html one of the primary misunderstandings about xhtml is that it is just another
version of html.
... this misunderstanding is compounded by the fact that, prior to
version 9, microsoft® internet explorer only supports xhtml if it is served with mime media type text/html rather than the recommended application/xhtml+xml.
background-size - Archive of obsolete content
people should refer to the webkit and gecko
version to get the info they need.
...it's hard to get reliable information about its css support without having this browser (read: multiple
versions of this browser) installed.
XForms Custom Controls - Archive of obsolete content
as always, please refer directly to the source code to be sure that you are using the latest, up-to-date
version: extensions/xforms/nsixformsuiwidget.idl.
...it is bound to <xf:output mediatype="image/*"/> mimicking the current xforms 1.1 draft: <?xml
version="1.0" encoding="utf-8"?> <!doctype html public "-//w3c//dtd xhtml 1.1//en" "http://www.w3.org/tr/xhtml11/dtd/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xf="http://www.w3.org/2002/xforms"> <head> <title>custom image control sample</title> <bindings id="xformsbindings" xmlns="http://www.mozilla.org/xbl" xmlns:html="http://www.w3.org/1999/xhtml"> ...
Troubleshooting XForms Forms - Archive of obsolete content
ensure that your <html> element contains the supported namespace declaration: xmlns="http://www.w3.org/1999/xhtml" (instead of the newer, unratified
version, xhtml 2.0, located at http://www.w3.org/2002/06/xhtml2 ) inline instance, no controls get bound have you remembered to use the correct namespace for the instance nodes?
...you can also see the current list of open xforms bugs, or the list of fixed bugs that have not made it to the release
versions yet.
Archived open Web documentation - Archive of obsolete content
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: stopiteration the stopiteration object was used to tell the end of the iteration in the legacy iterator protocol.
... styling the amazing netscape fish cam page 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.
Describing microformats in JavaScript - Archive of obsolete content
microformat definition format the microformat definition must contain the following entries: mf
version specifies the
version number of the microformat api to which the definition was written.
...the adr microformat is defined as follows: var adr_definition = { mf
version: 0.8, mfobject: adr, classname: "adr", properties: { "type" : { plural: true, types: ["work", "home", "pref", "postal", "dom", "intl", "parcel"] }, "post-office-box" : { }, "street-address" : { plural: true }, "extended-address" : { }, "locality" : { }, "region" : { }, "postal-code" : { }, "country-name" : { }...
bootstrap.js - Extensions
function startup(data, reason) { /// bootstrap data structure @see /docs/extensions/bootstrapped_extensions#bootstrap_data /// string id /// string
version /// nsifile installpath /// nsiuri resourceuri /// /// reason types: /// app_startup /// addon_enable /// addon_install /// addon_upgrade /// addon_downgrade } function shutdown(data, reason) { /// bootstrap data structure @see /docs/extensions/bootstrapped_extensions#bootstrap_data /// string id /// string
version /// nsifi...
...le installpath /// nsiuri resourceuri /// /// reason types: /// app_shutdown /// addon_disable /// addon_uninstall /// addon_upgrade /// addon_downgrade } function install(data, reason) { /// bootstrap data structure @see /docs/extensions/bootstrapped_extensions#bootstrap_data /// string id /// string
version /// nsifile installpath /// nsiuri resourceuri /// /// reason types: /// addon_install /// addon_upgrade /// addon_downgrade } function uninstall(data, reason) { /// bootstrap data structure @see /docs/extensions/bootstrapped_extensions#bootstrap_data /// string id /// string
version /// nsifile installpath /// nsiuri resourceuri /// /// reason types: /...
Game distribution - Game development
you'll get free hosting,
version control and possible contributors if your project is interesting enough.
...remember that you have to deal with the cross-platform issues yourself by uploading separate
versions for different platforms.
Game promotion - Game development
you can also sell a full
version of the game from inside your browser demo
version, which will be a great move considering high competition, some developers even manage to make full browser
versions.
... promo codes if you're selling the game, then create the ability to distribute promo codes allowing people to access your game for free (or at least a demo or time-limited
version), and send them all over the place — to press, youtubers, as competition prizes, etc.
Building up a basic demo with A-Frame - Game development
high level overview the current
version of a-frame is 0.3.2, which means it's highly experimental, but it already works and you can test it right away in the browser.
...here's how the final
version looks and works: if you have a vr device available, now is a good time to try out your scene with it too.
Visual-js game engine - Game development
2) you are free to use any
version of visual js library in any other project (even commercial projects) as long as the copyright header is left intact except for plugins on sale and graphics that come with them (they have special commercial licence).
...ense obj loader : https://github.com/frenchtoast747/webgl-obj-loader textures download from http://textures.com more texture downloads http://www.textures4photoshop.com/ female body v3.blend this file has been released by andrescuccaro under the following license: creative commons attribution 3.0 about gui for windows (canvas2d part only) : windows gui application
version 1.0 (using visual-js 0.9 lib) important : you will need net 4.5.2 minimum also redistribution pack for c++ how to start project ?
Visual JS GE - Game development
you need to edit the config file to include the correct paths to the node app and project instance, as indicated below: module.exports = {
version : "0.5", path_of_node_app : "d:/path_to_server_instance_folder/server/" , // edit here path_of_www : "d:/xamp/htdocs/project_instance/", // path_to_www edit here editor_port : "1013", reg_path : "users/", account_port : 3666 , destroy_session_after_x_mseconds : 20000, }; local node.js application tools (uses in developer mode only) the following section provides informa...
... visual_js.exe
version 1.0 — comes with source editor.
Gecko FAQ - Gecko Redirect 1
netscape released its own
version of the browser branded as netscape navigator.
... older
versions of gecko supported earlier
versions of win32 and mac os x.
IPv4 - MDN Web Docs Glossary: Definitions of Web-related terms
ipv4 is the fourth
version of the communication protocol underlying the internet and the first
version to be widely deployed.
...(
version number 5 was assigned in 1979 to the experimental internet stream protocol, which however has never been called ipv5.) learn more general knowledge ipv4 on wikipedia ...
Type coercion - MDN Web Docs Glossary: Definitions of Web-related terms
type coercion is the automatic or implicit con
version of values from one data type to another (such as strings to numbers).
... type con
version is similar to type coercion because they both convert values from one data type to another with one key difference — type coercion is implicit whereas type con
version can be either implicit or explicit.
CSS and JavaScript accessibility best practices - Learn web development
chrome and edge (and newer
versions of ie) will focus the element when the link is clicked, without needing the onclick/focus() block.
...maybe we want to provide a thumbnail image that shows a larger
version of the image when it is moused over or focused (like you'd see on an e-commerce product catalog.) we've made a very simple example, which you can find at mouse-and-keyboard-events.html (see also the source code).
Advanced styling effects - Learn web development
users of older ie
versions might just have to cope with no shadows, so just test your designs to make sure your content is legible without them.
...first, background-blend-mode — here we'll show a couple of simple <div>s, so you can compare the original with the blended
version: <div> </div> <div class="multiply"> </div> now some css — we are adding to the <div> one background image and a green background color: div { width: 250px; height: 130px; padding: 10px; margin: 10px; display: inline-block; background: url(https://mdn.mozillademos.org/files/13090/colorful-heart.png) no-repeat center 20px; background-color: green; } .multiply { background-ble...
Flexbox - Learn web development
button { flex: 1 auto; margin: 5px; font-size: 18px; line-height: 1.5; } cross browser compatibility flexbox support is available in most new browsers — firefox, chrome, opera, microsoft edge and ie 11, newer
versions of android/ios, etc.
... however you should be aware that there are still older browsers in use that don't support flexbox (or do, but support a really old, out-of-date
version of it.) while you are just learning and experimenting, this doesn't matter too much; however if you are considering using flexbox in a real website you need to do testing and make sure that your user experience is still acceptable in as many browsers as possible.
Using CSS generated content - Learn web development
for example, you might have different language
versions of your document that share a stylesheet.
... if you specify content in your stylesheet that requires translation, you have to put those parts of your stylesheet in different files and arrange for them to be linked with the appropriate language
versions of your doucment.
HTML forms in legacy browsers - Learn web development
okay, let's admit it, when we said "legacy browser" we all have in mind safari or old
versions of internet explorer, but they are far from the only ones.
... <button> the <button> element suffered from two issues that are now resolved: a bug in old
versions of internet explorer sent the html content available between the starting and ending tag of the <button> element instead of the content of the value attribute when clicked.
Styling web forms - Learn web development
we will build a fancy-looking "postcard" contact form; see here for the finished
version.
...your form should now look like this: note: if your example does not work quite like you expected and you want to check it against our
version, you can find it on github — see it running live (also see the source code).
Installing basic software - Learn web development
a
version control system, to manage files on servers, collaborate on a project with a team, share code and assets and avoid editing conflicts.
... right now, git is the most popular
version control system along with the github or gitlab hosting service.
The web and web standards - Learn web development
by late 1990, timbl had created all the things needed to run the first
version of the web — http, html, the first web browser, which was called worldwideweb, an http server, and some web pages to look at.
...you wouldn't want a single company suddenly deciding to put the entire web behind a paywall, or releasing a new
version of html that everyone has to buy to continue making web sites, or worse still, just deciding they aren't interested any more and just turning it off.
Using data attributes - Learn web development
internet explorer 11+ provides support for the standard, but all earlier
versions do not support dataset.
... in firefox 49.0.2 (and perhaps earlier/later
versions), the data attributes that exceed 1022 characters will not be read by javascript (ecmascript 4).
Adding vector graphics to the Web - Learn web development
more advanced svg features include <fecolormatrix> (transform colors using a transformation matrix,) <animate> (animate parts of your vector graphic,) and <mask> (apply a mask over the top of your image.) as a simple example, the following code creates a circle and a rectangle: <svg
version="1.1" baseprofile="full" width="300" height="200" xmlns="http://www.w3.org/2000/svg"> <rect width="100%" height="100%" fill="black" /> <circle cx="150" cy="100" r="90" fill="blue" /> </svg> this creates the following output: from the example above, you may get the impression that svg is easy to handcode.
... svg is not supported in older browsers, so may not be suitable if you need to support older
versions of internet explorer with your web site (svg started being supported as of ie9.) raster graphics are arguably better for complex precision images such as photos, for the reasons described above.
From object to iframe — other embedding technologies - Learn web development
this is great for incorporating third-party content into your website that you might not have direct control over and don't want to have to implement your own
version of — such as video from online video providers, commenting systems like disqus, maps from online map providers, advertising banners, etc.
... use https https is the encrypted
version of http.
HTML table basics - Learn web development
one thing you'll notice is that the table does look a bit more readable there — this is because the table you see above on this page has minimal styling, whereas the github
version has more significant css applied.
...if you get stuck, or want to check your work, you can find our
version on github as timetable-fixed.html (see it live also).
Function return values - Learn web development
it looks like this: function random(number) { return math.floor(math.random() * number); } this could be written as follows: function random(number) { const result = math.floor(math.random() * number); return result; } but the first
version is quicker to write, and more compact.
... note: if you have trouble getting the example to work, feel free to check your code against the finished
version on github (see it running live also), or ask us for help.
Test your skills: Functions - Learn web development
note: in the examples below, if there is an error in your code it will be outputted into the results panel on the page, to help you try to figure out the answer (or into the browser's javascript console, in the case of the downloadable
version).
... you'll want to clear the canvas before drawing, so that when the code is updated in the case of the live
version, you don't get lots of rectangles drawn on top of one another.
Manipulating documents - Learn web development
if you look at that paragraph in your browser's page inspector/dom inspector, you'll see that these lines are indeed adding inline styles to the document: <p style="color: white; background-color: black; padding: 10px; width: 250px; text-align: center;">we hope you enjoyed the ride.</p> note: notice how the javascript property
versions of the css styles are written in lower camel case whereas the css
versions are hyphenated (e.g.
... note: you can find our finished
version of the dom-example.html demo on github (see it live also).
A first splash into JavaScript - Learn web development
at this point, replace your current checkguess() function with this
version instead: function checkguess() { let userguess = number(guessfield.value); if (guesscount === 1) { guesses.textcontent = 'previous guesses: '; } guesses.textcontent += userguess + ' '; if (userguess === randomnumber) { lastresult.textcontent = 'congratulations!
...try your final code out, or play with our finished
version here.
Test your skills: Strings - Learn web development
note: in the examples below, if there is an error in your code it will be outputted into the results panel on the page, to help you try to figure out the answer (or into the browser's javascript console, in the case of the downloadable
version).
... there is one more small fix to do — add a full stop onto the end of the quote, and save the final
version in a variable called finalquote.
Storing the information you need — Variables - Learn web development
so, let was created in modern
versions of javascript, a new keyword for creating variables that works somewhat differently to var, fixing its issues in the process.
...there is no reason to use var, unless you need to support old
versions of internet explorer with your code (it doesn't support let until
version 11; the modern windows edge browser supports let just fine).
JavaScript object basics - Learn web development
note: if you are having trouble getting this to work, try comparing your code against our
version — see oojs-finished.html (also see it running live).
... the live
version will give you a blank screen, but that's ok — again, open your devtools and try typing in the above commands to see the object structure.
Introduction to client-side frameworks - Learn web development
if you want to see code samples from this section in action, you can check out a working
version of the app on codepen, which also allows users to add and delete new tasks.
... framework browser support preferred dsl supported dsls angular ie9+ typescript html-based; typescript react modern (ie9+ with polyfills) jsx jsx; typescript vue ie9+ html-based html-based, jsx, pug ember modern (ie9+ in ember
version 2.18) handlebars handlebars, typescript note: dsls we've described as "html-based" do not have official names.
Framework main features - Learn web development
let’s update our counterbutton code from above to allow it to count clicks: function counterbutton() { const [count, setcount] = usestate(0); return ( <button onclick={() => setcount(count + 1)}>clicked {count} times</button> ); } in this
version we are using additional usestate() functionality to create a special setcount() function, which we can invoke to update the value of count.
...all of them track the current rendered
version of your browser's dom, and each makes slightly different decisions about how the dom should change as components in your application re-render.
Accessibility in React - Learn web development
note: if you need to check your code against our
version, you can find a finished
version of the sample react app code in our todo-react repository.
... for a running live
version, see https://mdn.github.io/todo-react-build/.
Beginning our React todo list - Learn web development
note: if you need to check your code against our
version, you can find a finished
version of the sample react app code in our todo-react repository.
... for a running live
version, see https://mdn.github.io/todo-react-build/.
Starting our Svelte Todo list app - Learn web development
repl to code along with us using the repl, start at https://svelte.dev/repl/b7b831ea3a354d3789cefbc31e2ca495?
version=3.23.2 todo list app features this is how our todo list app wil look like once it's ready: using this ui our user will be able to: browse their tasks.
... repl to see the current state of the code in a repl, visit: https://svelte.dev/repl/c862d964d48d473ca63ab91709a0a5a0?
version=3.23.2 summary with our markup and styling in place our todo list app is starting to take shape, and we have everything ready so that we can start to focus on the features we have to implement.
TypeScript support in Svelte - Learn web development
from that
version onward you have to use export/import type syntax to import types and interfaces.
... our localstore.ts file will end up like this — try the new code now in your
version: // localstore.ts import { writable } from 'svelte/store' import type { jsonvalue } from './types/json.type' export const localstore = <t extends jsonvalue>(key: string, initial: t) => { // receives the key of the local storage and an initial value const tostring = (value: t) => json.stringify(value, null, 2) // helper function const toobj = json.parse ...
Componentizing our Svelte app - Learn web development
repl to code along with us using the repl, start at https://svelte.dev/repl/99b9eb228b404a2f8c8959b22c0a40d3?
version=3.23.2 breaking the app into components in svelte, an application is composed from one or more components.
... repl to see the current state of the code in a repl, visit: https://svelte.dev/repl/76cc90c43a37452e8c7f70521f88b698?
version=3.23.2 summary now we have all of our app's required functionality in place.
Working with Svelte stores - Learn web development
repl to code along with us using the repl, start at https://svelte.dev/repl/d1fa84a5a4494366b179c87395940039?
version=3.23.2 dealing with our app state we have already seen how our components can communicate with each other using props, two-way data binding, and events.
... repl to see the current state of the code in a repl, visit: https://svelte.dev/repl/378dd79e0dfe4486a8f10823f3813190?
version=3.23.2 summary in this article we added two new features: an alert component and persisting todos to web storage.
Getting started with Vue - Learn web development
great for development <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> production script (optimized
version, minimal console warnings.
... it is recommended that you specify a
version number when including vue on your site so that any framework updates do not break your live site without you knowing.) <script src="/static/external/29/29296ccacaa9ed35ed168fc51e36f54fd6f8db9c7786bbf38cc59a27229ba5c2.svg"></script> however, this approach has some limitations.
Focus management with Vue refs - Learn web development
note: if you need to check your code against our
version, you can find a finished
version of the sample vue app code in our todo-vue repository.
... for a running live
version, see https://mdn.github.io/todo-vue/dist/.
Command line crash course - Learn web development
always the same
version feels like any other unix command although the cons list is shorter, the negative impact of global installing is potentially much larger than the benefits.
... now try running this
version of the command: prettier --write index.js you’ll get an output like this checking formatting...
omni.ja (formerly omni.jar)
several unzip tools and archives (except for the latest
version of 7-zip) currently cannot read omni.ja, due to the optimization that is applied to the file.
...users of older
versions of windows can use infozip's unzip tool to extract files - make a copy of omni.ja, and drag-and-drop it onto unzip.exe.
Mozilla accessibility architecture
however, on windows there are crash issues with the automatic windows-generated
versions of event_create and event_destroy, so the msaa client cannot listen to them.
...something that could create more work would be a decision to support the macintosh accessibility api, a new api being developed by microsoft for future
versions of windows or some other new api developed for cross platform or small device use.
Gecko info for Windows accessibility vendors
firefox (please use
version 1.1 alpha builds or later) thunderbird (please use
version 1.1 alpha builds or later) mozilla seamonkey (please use 1.8 alpha builds or later) how to find the content window and load the document screen readers need to find the content window so that they know where to start grabbing the msaa tree, in order to load the current document into a buffer in their own process.
...essentially w3c's xml-based
version of flash - mixes well with other markup based content, supports the dom and has accessibility features.
Index
676 index add-ons, glossary, guide, index found 689 pages: 677 signing and distributing your add-on add-ons, extensions, webextensions, distribution, publication, reviews, signing add-ons need to be signed before they can be installed into release and beta
versions of firefox.
...add-ons hosted on amo automatically receive updates to new
versions posted there.
Creating reftest-based unit tests
if you built a debug
version of the browser, there can be a lot of extra console output.
...i have seen a case where the html file in the bug had a problem, but the checked-in
version was "cleaned up" and not valid for testing.
Debugging on Windows
;; mozilla (1.9) ; internal strings nsastring_internal=<mdata,su>, length=<mlength,u> nsacstring_internal=<mdata,s>, length=<mlength,u> ; xpcom strings nsastring=<nsstringcontainer.v,su>, length=<nsstringcontainer.d1,u> nsacstring=<nscstringcontainer.v,s>, length=<nscstringcontainer.d1,u> nsstringcontainer=<v,su>, length=<d1,u> nscstringcontainer=<v,s>, length=<d1,u> there is a more extensive
version of this file in progress in autoexpforvc8.
...these instructions apply to visual studio 10 on windows 7; other software
versions likely need to have file paths adjusted.
HTTP logging
on all newer
versions of windows, you can hold down the windows key and press "r".
...on all newer
versions of windows, you can hold down the windows key and press "r".
Configuring Build Options
sometimes it can be useful to build multiple
versions of the source (such as with and without diagnostic asserts).
...for example, a mozconfig-dbg: mk_add_options moz_objdir=@topsrcdir@/obj-ff-dbg ac_add_options --enable-debug and a mozconfig-rel-opt: mk_add_options moz_objdir=@topsrcdir@/obj-ff-rel-opt ac_add_options --disable-debug ac_add_options --enable-optimize allow for building both
versions by specifiying the configuration via the mozconfig environment variable: $ env mozconfig=/path/to/mozconfig-dbg ./mach build $ env mozconfig=/path/to/mozconfig-rel-opt ./mach build don't forget to set the mozconfig environment variable for the mach run command as well.
Old Thunderbird build
this page covers the basic steps needed to build a thunderbird up to
version 59.
... building thunderbird before you start, make sure that the
version you checked out is not busted.
The Firefox codebase: CSS Guidelines
writing cross-platform css firefox supports many different platforms and each of those platforms can contain many different configurations: windows 7, 8 and 10 default theme aero basic (windows 7, 8) windows classic (windows 7) high contrast (all
versions) linux macos file structure the browser/ directory contains styles specific to firefox the toolkit/ directory contains styles that are shared across all toolkit applications (thunderbird and seamonkey) under each of those two directories, there is a themes directory containing 4 sub-directories: shared linux osx windows the shared directories contain styles shared across a...
... writing media queries boolean media queries do this: @media (-moz-mac-yosemite-theme: 0) { not this: @media not all and (-moz-mac-yosemite-theme) { privilege css for most common configuration it is better to put the most common configuration (latest
version of an os, or default theme for example) outside of the media query.
Creating Custom Events That Can Pass Data
note that starting with
version 6, firefox supports dom level 3 customevent, which lets you dispatch custom events with arbitrary data from javascript.
...be aware that this means your stuff won't work with everyone else's
version of firefox unless you get your patches into the trunk.
Commenting IDL for better documentation
this article will help you understand how you can format your comments to help ensure that the con
version process can be automated as much as possible in order to ensure that your interface gets properly documented.
...but by following the guidelines here, you can help make sure that our tools can generate a "good start"
version of the documentation for your interfaces, and that the writers will be able to easily figure out what the tools are not able to do automatically.
Reviewer Checklist
compatibility
version files, databases, messages tag messages with ids to disambiguate callers.
... android apis added since froyo should be guarded by a
version check.
Multiple Firefox profiles
for qa, testing, and bug triaging contributors, you may want to have multiple development
versions of firefox installed, each with its own profile.
...it takes little time to set up a new profile, and once it is complete, all of your firefox
versions will update separately and can be run simultaneously.
Firefox and the "about" protocol
available about: urls depend on your specific firefox
version.
... here is a complete list of urls in the about: pseudo protocol: about: page description about:about provides an overview of all about: pages available for your current firefox
version about:addons add-ons manager about:buildconfig displays the configuration and platform used to build firefox about:cache displays information about the memory, disk, and appcache about:checkerboard switches to the checkerboarding measurement page, which allows to detect checkerboarding issues about:config provides a way to inspect and change firefox preferences and settings about:compat lists overriding site compatability fixes, linked to specific bug issues.
Firefox
contents experimental features in firefoxthis page lists features that are in nightly
versions of firefox along with information on how to activate them, if necessary.firefox and the "about" protocolthere is a lot of useful information about firefox hidden away behind the about: url protocol.
... linux compatibility matrixthe following table lists the available library
versions for the mozilla.org-distributed firefox builds dependencies, and/or to build firefox.multiple firefox profilesa profile in firefox is the collection of settings, customizations, add-ons, and other personalizations that a user has made or installed into their copy of firefox.
Browser API
it currently works in (privileged) chrome code on firefox desktop (
version 47 and above).
... mozbrowserasyncscroll sent when the browser <iframe> content scrolls (the apcz
version.) see also mozbrowserscroll.
Chrome-only API reference
it currently works in (privileged) chrome code on firefox desktop (
version 47 and above).chromeworkerif you're developing privileged code, and would like to create a worker that can use js-ctypes to perform calls to native code, you can do so by using chromeworker instead of the standard worker object.
...to use a postmessage with callback
version of chromeworker that features promises, see promiseworker.
How to get a process dump with Windows Task Manager
a firefox nightly or release you need a firefox
version for which symbols are available from the mozilla symbol server.
... you can use any official nightly build or released
version of firefox from mozilla.
How to implement a custom autocomplete search component
basic example for gecko 2.0 and up (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this example is your first best try because: it has no specific logic (it just returns a dummy array of choices) it doesn't care about compatibility with older gecko
versions first copy the following javascript code into a file named basic_autocomplete.js into the components directory (or whatever components folder is appropriate in your case): warning: the uuid used below in chrome.manifest and assigned to class_id must be changed before use.
...a bit more complex example compatible with old gecko
versions first copy the following javascript code into a file named "simple_autocomplete.js" into the "components" directory (or whatever "components" folder is appropriate in your case) warning: the uuid used below in chrome.manifest and assigned to class_id must be changed before use.
IME handling guide
preedit string), suggests a list of what the user attempts to input, commits composition string as a selected item off the list and commits composition string without any con
version.
...then, it can retrieve expected character's rect even if the cache of tsftextstore is different from the actual contents because tip typically needs caret position's character rect (for a popup to indicate current input mode or next word suggestion list) or first character rect of the target clause of current composition (for a candidate list window of con
version).
Implementing Download Resuming
that would lead to a situation where the first part of the file corresponds to the initial
version, while the latter part belongs to a different
version, leading to an unusable result.
... note: in
versions of firefox prior to 3.0 alpha 7, nsiwebbrowserpersist cannot append to existing files (as opposed to overwriting them), and is therefore not usable for this task (see bug 129921).
DeferredTask.jsm
with deferredtask, the task is delayed by a few milliseconds and, should a new change to the data occur during this period, only the final
version of the data is actually written; a further grace delay is added to take into account other changes.
... for example, during shutdown, you may want to ensure that any pending write is processed, using the latest
version of the data if the timer is armed: asyncshutdown.profilebeforechange.addblocker( "example service: shutting down", () => savedeferredtask.finalize() ); instead, if you are going to delete the saved data from disk anyways, you might as well prevent any pending write from starting, while still ensuring that any write that is currently in progress terminates, so that the file is not in use an...
JNI.jsm
to use it, you first need to import the code module into your javascript scope: components.utils.import("resource://gre/modules/jni.jsm"); this module was available in firefox since
version 17.
... if you would like to support
versions before that, you can copy and paste the contents of the jsm file int jni stands for java native interface; this library allows calling java code running in java virtual machines (jvms), etc.
PromiseWorker.jsm
here's the simplified diagram of how promiseworker works (svg
version of the promiseworker diagram) setup and usage this section explains how to set up and use a promiseworker.
...se_domyfuncfalse - " "you passed in a non-true value for shouldresolve argument and therefore this will reject the main thread promise" bootstrap.js line 25 other examples github :: promiseworker with backward compatability - this example is of a firefox addon that copies and pastes in the contents of promiseworker.js and promiseworker.jsm so that it works all the way back till the firefox
version in which the promise interface was frozen.
Using JavaScript code modules
for example: components.utils.import("resource://app/my_module.jsm"); alert(foo()); // displays "foo" alert(bar.size + 3); // displays "6" alert(dummy); // displays "dummy is not defined" because 'dummy' was not exported from the module note: when you're testing changes to a code module, be sure to change the application's build id (e.g., the
version) before your next test run; otherwise, you may find yourself running the previous
version of your module's code.
... sharing objects using code modules an extremely important behavior of components.utils.import() is that modules are cached when loaded and subsequent imports do not reload a new
version of the module, but instead use the previously cached
version.
JavaScript code modules
assert.jsm implements the commonjs unit testing specification
version 1.1, which provides a basic standardized interface for performing in-code logical assertions with optional, customizable error reporting.
... promiseworker.jsm a
version of chromeworker which uses promises to return the worker's result instead of using an event to do so.
Localization and Plurals
chrome://mozapps/locale/downloads/do...tes,hours,days chrome://mozapps/locale/downloads/do...dstitlepercent chrome://browser/locale/browser.prop...auseddownloads
version history 0.1: initial
version with pluralrule check, properties input loading, table generation, sample output display 0.2: use pluralform.numforms() to get the number of forms instead of figuring out locally to better support future rules - requires build from 2007/01/27 or later 0.3: generate a list of what numbers fall into which plural form to minimize the sample output to at most 3 of each...
...for example, your extension localized for english with plural rule #1, which expects 2 plural forms, is installed on a localized
version of firefox with plural rule #4, which expects 3 forms: /** * create a pair of plural form functions for the given plural rule number.
Localization content best practices
similarly, if the ui string is flash
version, do not simply present the translator with
version for translation.
...the word
version may have to go before or after flash and one or both may need to be inflected.
Localizing without a specialized tool
repeating the process allows a localizer to create a testable package to see his or her work as they progress to a final
version.
... you should see something like this: x-testing browser chrome browser aboutcerterror.dtd // add and localize this file aboutdialog.dtd +aboutlink +aboutlink.accesskey +about
version +closecmdgnome.accesskey +closecmdgnome.label +copyright +copyright.accesskey +copyrightgnome.accesskey +copyrightinfo1 +copyrightinfo2 +licenselink +licenselinktext aboutprivatebrowsing.dtd // add and localize this file aboutrobots.dtd // add and loc...
Initial setup
we use
version 2.13 and higher for these builds.
...you can find
version 3.79.1 or higher here.
Translation phase
version 5.26 is the latest
version.
... virtaal an offline, stand-alone
version of pootle that is also built on the translate toolkit api.
Creating localizable web content
if the screenshot shows the application that the website directly relates to (firefox on mozilla.com/firefox, personas on getpersonas.com), try to use screenshots from the localized
version.
... if however the screenshot shows a third-party application or website, it's acceptable to use the english
version if it's not available in the target language.
Mozilla DOM Hacking Guide
nsdomclassinfo::getclassinfoinstance() there are two
versions of this function.
...a bad con
version exception would be thrown.
Intel Power Gadget
understanding the power gadget output the following screenshot (from the mac
version) demonstrates the available measurements.
... (an energia dashboard can be seen here; please note that the data has not been updated since early 2014.)
version 3.0 (available on mac and windows, but not on linux) also exposes an api from which the same measurements can be extracted programmatically.
Profiling with the Gecko Profiler and Local Symbols on Windows
if you're building a beta or release channel
version, and you want proper c++ callstacks in your profiles, add ac_add_options --enable-profiling to your firefox .mozconfig file.
... generate the breakpad symbol files by running ./mach buildsymbols: https://developer.mozilla.org/en/building_firefox_with_debug_symbols#breakpad_symbol_files this will have created symbols under $objdir/dist/ , named after the binary name, architecture and
version, so something like "firefox-40.0a1.en-us-win32.crashreporter-symbols.zip" point talos to this zipfile by passing its path to the --symbolspath flag.
Phishing: a short definition
since
version 2.0, firefox has used google’s safebrowsing service, to detect known web forgeries, and display an alert instead of the fraudulent website.
...after verifying username and password, the user is prompted to open the otp app and enter the corresponding 6-digit code, representing a hashed
version of the secret key and a nonce - potentially time-based.
A guide to searching crash reports
specifically, crash-stats offers two basic functions: searching you can search the crash reports database by over 100 criteria: crash signature, date, platform, product,
version, etc.
... fields are provided for four common search criteria: product,
version, platform, and process type.
McCoy
it will not run on older
versions of linux and there are known problems even on up to date systems.
... releasing an update once you are ready to release an updated
version of your add-on you must create yourself an update.rdf file.
About NSPR
(the "20" in "nspr20" does not mean "
version 2.0" but rather "second generation".) many of the concepts have been reformed, expanded, and matured.
...the current implementation supports macintosh (ppc), win-32 (winnt, win9x) and 20
versions of unix and is still expanding.
PR_GetOpenFileInfo64
description pr_getopenfileinfo64 is the 64-bit
version of pr_getopenfileinfo.
... see also for the 32-bit
version of this function, see pr_getopenfileinfo.
Process Initialization
this chapter describes the nspr api for
versioning, process initialization, and shutdown of nspr.
... identity and
versioning initialization and cleanup module initialization identity and
versioning name and
version constants pr_name pr_
version pr_
versioncheck initialization and cleanup nspr detects whether the library has been initialized and performs implicit initialization if it hasn't.
NSPR API Reference
er difference types boolean types status type for return values threads threading types and constants threading functions creating, joining, and identifying threads controlling thread priorities controlling per-thread private data interrupting and yielding setting global thread concurrency getting a thread's scope process initialization identity and
versioning name and
version constants initialization and cleanup module initialization locks lock type lock functions condition variables condition variable type condition variable functions monitors monitor type monitor functions cached monitors cached monitor functions i/o types directory type file descriptor types file info types network address types type...
...tomicincrement pr_atomicdecrement pr_atomicset interval timing interval time type and constants interval functions date and time types and constants time parameter callback functions functions memory management operations memory allocation functions memory allocation macros string operations pl_strlen pl_strcpy pl_strdup pl_strfree floating point number to string con
version pr_strtod pr_dtoa pr_cnvtf long long (64-bit) integers bitmaps formatted printing linked lists linked list types prclist linked list macros pr_init_clist pr_init_static_clist pr_append_link pr_insert_link pr_next_link pr_prev_link pr_remove_link pr_remove_and_init_link pr_insert_before pr_insert_after dynamic library linking lib...
NSPR release process
set the nspr
version number.
... remove "beta" from the nspr
version number for the final release.
Building NSS
build_opt 0 build a debug (non-optimized)
version of nss.
... 1 build an optimized (non-debug)
version of nss.
NSS Certificate Download Specification
in all cases the certificates are x509
version 1, 2, or 3.
...the contents of the
version, digestalgorithms, contentinfo, crls, and signerinfos fields are ignored.
Cryptography functions
the nss
version column indicates which
versions of nss support the function.
... function name/documentation source code nss
versions pk11_algtagtomechanism mxr 3.2 and later pk11_authenticate mxr 3.2 and later pk11_blockdata mxr 3.2 and later pk11_changepw mxr 3.2 and later pk11_checkuserpassword mxr 3.2 and later pk11_cipherop mxr 3.2 and later pk11_clonecontext mxr 3.2 and later pk11_configurepkcs11 mxr 3.2 and later pk11_convertsessionprivkeytotokenprivkey mxr 3.6 and later pk11_convertsessionsymkeytotokensymkey mxr 3.6 and later pk11_copytokenprivkeytos...
FIPS Mode - an explanation
(note, the current
version of fips 140 is revision 2, a.k.a.
... firefox can only use the latest
version of ssl, known as "tls", and not the older ssl 2 or ssl 3.0 protocols, and firefox can only talk to those servers that use fips standard encryption algorithms such as aes or triple-des.
Introduction to Network Security Services
we guarantee that applications using the exported apis will remain compatible with future
versions of those libraries.
... support for ilp32 in nss 3.2 and later
versions, there are two new shared libraries for the platforms hp-ux for parisc cpus and solaris for (ultra)sparc (not x86) cpus.
JSS Provider Notes
the class java.security.spec.pbekeyspec in jdk
versions earlier than 1.4 does not contain the salt and iteration fields, which are necessary for pbe key generation.
...if you are using a jdk (or jre)
version earlier than 1.4, you cannot use class java.security.spec.pbekeyspec.
Mozilla-JSS JCA Provider notes
the class java.security.spec.pbekeyspec in jdk
versions earlier than 1.4 does not contain the salt and iteration fields, which are necessary for pbe key generation.
...if you are using a jdk (or jre)
version earlier than 1.4, you cannot use class java.security.spec.pbekeyspec.
JSS 4.4.0 Release Notes
ps://bugzilla.mozilla.org/buglist.cgi?product=jss&target_milestone=4.4&target_milestone=4.4&bug_status=resolved&resolution=fixed documentation build instructions for jss at https://hg.mozilla.org/projects/jss/file/tip/readme platform information you can check out the source from mercurial via hg clone -r 055aa3ce8a61 https://hg.mozilla.org/projects/jss jss 4.4.0 works with openjdk
versions 1.7 or higher we suggest the latest - openjdk 1.8.
...furthermore, applications that restrict their use of jss apis to the functions listed in jss public functions will remain compatible with future
versions of the jss shared libraries.
NSS_3.11.10_release_notes.html
s bug 424169: add geotrust primary certification authority root to nss bug 425469: add multiple new roots: geotrust bug 426568: add comodo certification authority certificate to nss bug 431381: add network solutions certificate authority root to nss bug 431621: add diginotar root ca root to nss bug 431772: add network solutions and diginotar root certs to nss bug 442912: fix nssckbi
version number on 3.11 branch bug 443045: fix pk11_generatekeypair for ecc keys on the 3.11 branch bug 444850: nss misbehaves badly in the presence of a disabled pkcs#11 slot bug 462948: lint warnings for source files that include keythi.h documentation for a list of the primary nss documentation pages on mozilla.org, see nss documentation.
... furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.12.5 release_notes
bug 510435: remove unused make variable dso_ldflags bug 510436: add macros for build numbers (4th component of
version number) to nssutil.h bug 511227: firefox 3.0.13 fails to compile on freebsd/powerpc bug 511312: nss fails to load softoken, looking for sqlite3.dll bug 511781: add new tls 1.2 cipher suites implemented in windows 7 to ssltap bug 516101: if pk11_importcert fails, it leaves the certificate undiscoverable by cert_pkixverifycert bug 518443: pk11_importandreturnprivatekey leaks an arena bug 5184...
... furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.12.6 release notes
all bytes after an embedded null bug 536474: add support for logging pre-master secrets bug 537356: implement new safe ssl3 & tls renegotiation bug 537795: nss_initcontext does not work with nss_registershutdown bug 537829: allow nss to build for android bug 540304: implement ssl_handshakenegotiatedextension bug 541228: remove an obsolete nspr
version check in lib/util/secport.c bug 541231: nssinit.c doesn't need to include ssl.h and sslproto.h.
... furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.14.2 release notes
note: the new assembly code requires gnu as
version 2.19 or newer.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.15.1 release notes
new types in sslprot.h ssl_library_
version_tls_1_2 - the protocol
version of tls 1.2 on the wire, value 0x0303.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.15.4 release notes
updated the set of root ca certificates (
version 1.96).
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.16 release notes
the built-in roots module has been updated to
version 1.97, which adds, removes, and distrusts several certificates.
... the certutil utility has been improved to support creation of
version 1 and
version 2 certificates, in addition to the existing
version 3 support.
NSS 3.17.2 release notes
bug 1078669: certutil crashes when an argument is passed to the --cert
version option.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.17.3 release notes
cc certification authority sha1 fingerprint: d1:cb:ca:5d:b2:d5:2a:7f:69:3b:67:4d:e5:f0:5a:1d:0c:95:7d:f0 cn = globalsign ecc root ca - r4 sha1 fingerprint: 69:69:56:2e:40:80:f4:24:a1:e7:19:9f:14:ba:f3:ee:58:ab:6a:bb cn = globalsign ecc root ca - r5 sha1 fingerprint: 1f:24:c6:30:cd:a4:18:ef:20:69:ff:ad:4f:dd:5f:46:3a:1b:69:aa the
version number of the updated root ca list has been set to 2.2 bugs fixed in nss 3.17.3 this bugzilla query returns all the bugs fixed in nss 3.17.3: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classification=components&query_format=advanced&product=nss&target_milestone=3.17.3 compatibility nss 3.17.3 shared libraries are backward compatible with all older nss 3.x shared libraries.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.17.4 release notes
notable changes in nss 3.17.4 bug 1084986: if an ssl/tls connection fails, because client and server don't have any common protocol
version enabled, nss has been changed to report error code ssl_error_unsupported_
version (instead of reporting ssl_error_no_cypher_overlap).
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.18.1 release notes
cn=mcsholding test, o=mcsholding, c=eg sha1 fingerprint: e1:f3:59:1e:76:98:65:c4:e4:47:ac:c3:7e:af:c9:e2:bf:e4:c5:76 the
version number of the updated root ca list has been set to 2.4 bugs fixed in nss 3.18.1 this bugzilla query returns all the bugs fixed in nss 3.18.1: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classification=components&query_format=advanced&product=nss&target_milestone=3.18.1 compatibility nss 3.18.1 shared libraries are backward compatible with all older nss 3.18 shared libraries.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.19.2 release notes
note: future
versions of nss may increase the minimum keysizes required by the freebl module.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.19.3 release notes
h5 sha1 fingerprint: c4:18:f6:4d:46:d1:df:00:3d:27:30:13:72:43:a9:12:11:c6:75:fb cn = tÜrktrust elektronik sertifika hizmet sağlayıcısı h6 sha1 fingerprint: 8a:5c:8c:ee:a5:03:e6:05:56:ba:d8:1b:d4:f6:c9:b0:ed:e5:2f:e0 cn = certinomis - root ca sha1 fingerprint: 9d:70:bb:01:a5:a4:a0:18:11:2e:f7:1c:01:b9:32:c5:34:e7:88:a8 the
version number of the updated root ca list has been set to 2.5 bugs fixed in nss 3.19.3 this bugzilla query returns all the bugs fixed in nss 3.19.3: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classification=components&query_format=advanced&product=nss&target_milestone=3.19.3 compatibility nss 3.19.3 shared libraries are backward compatible with all older nss 3.19 shared libraries.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.24 release notes
although these certificates can be configured, they will not be used by nss in this
version.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.25 release notes
the trusted ca certificate list has been updated to
version 2.8.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.27.2 Release Notes
previous
versions of nss leaked the memory used to store distinguished names when ssl_settrustanchors() was used.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.28.1 release notes
ss 2 public primary certification authority - g4 sha-256 fingerprint: fe:86:3d:08:22:fe:7a:23:53:fa:48:4d:59:24:e8:75:65:6d:3d:c9:fb:58:77:1f:6f:61:6f:9d:57:1b:c5:92 cn = symantec class 2 public primary certification authority - g6 sha-256 fingerprint: cb:62:7d:18:b5:8a:d5:6d:de:33:1a:30:45:6b:c6:5c:60:1a:4e:9b:18:de:dc:ea:08:e7:da:aa:07:81:5f:f0 the
version number of the updated root ca list has been set to 2.11 a misleading assertion/alert has been removed, when nss tries to flush data to the peer but the connection was already reset.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.28.2 release notes
nss 3.28.2 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_28_2_rtm/src/ incorrect
version number note the
version numbers embedded in the nss 3.28.2 are wrong (it reports itself as
version 3.28.1).
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.30.2 release notes
fc:84:b3:8a:d6:af:00:90:35:dd:94:57 trust flags: email cn = tubitak kamu sm ssl kok sertifikasi - surum 1 sha-256 fingerprint: 46:ed:c3:68:90:46:d5:3a:45:3f:b3:10:4a:b8:0d:ca:ec:65:8b:26:60:ea:16:29:dd:7e:86:79:90:64:87:16 trust flags: websites technically constrained to: gov.tr, k12.tr, pol.tr, mil.tr, tsk.tr, kep.tr, bel.tr, edu.tr, org.tr the
version number of the updated root ca list has been set to 2.14 (the
version numbers 2.12 and 2.13 for the root ca list have been skipped.) bugs fixed in nss 3.30.2 bug 1350859 - march 2017 batch of root ca changes bug 1349705 - implemented domain name constraints for ca: tubitak kamu sm ssl kok sertifikasi - surum 1 compatibility nss 3.30.2 shared libraries are backward compatible with all ol...
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.33 release notes
this
version of nss uses a formally verified implementation of curve25519 on 64-bit systems.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.34.1 release notes
the
version of the ca list was set to 2.20.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.36.1 release notes
notable changes in nss 3.36.1 in nss
version 3.35 the iteration count in optimized builds, which is used for password based encryption algorithm related to encrypted pkcs#7 or pkcs#12 data, was increased to one million iterations.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.40 release notes
nss 3.40 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_40_rtm/src/ new in nss 3.40 new functionality the draft-00
version of encrypted sni support is implemented tstclnt now takes -n option to specify encrypted sni key new functions none notable changes in nss 3.40 the mozilla::pkix library has been ported from mozilla psm to nss.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.43 release notes
e flag is set bug 1528262 - add a -j option to the strsclnt command to specify sigschemes bug 1513909 - add manual for nss-policy-check bug 1531074 - fix a deref after a null check in seckey_setpublicvalue bug 1517714 - properly handle esni with hrr bug 1529813 - expose hkdf-expand-label with mechanism bug 1535122 - align tls 1.3 hkdf trace levels bug 1530102 - use getentropy on compatible
versions of freebsd.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.45 release notes
only relevant for clients that might have copied the unit test code verbatim bug 1550022 - ensure nssutil3 gets built on android bug 1528174 - chacha20poly1305 should no longer modify output length on failure bug 1549382 - don't leak in pkcs#11 modules if c_getslotinfo() returns error bug 1551041 - fix builds using gcc < 4.3 on big-endian architectures bug 1554659 - add
versioning to openbsd builds to fix link time errors using nss bug 1553443 - send session ticket only after handshake is marked as finished bug 1550708 - fix gyp scripts on solaris sparc so that libfreebl_64fpu_3.so builds bug 1554336 - optimize away unneeded loop in mpi.c bug 1559906 - fipstest: use ckm_tls12_master_key_derive instead of vendor specific mechanism bug 1558126 - tls_aes_256_gcm_sha...
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.47 release notes
upcoming changes to default tls configuration the next nss team plans to make two changes to the default tls configuration in nss 3.48, which will be released in early december: tls 1.3 will be the default maximum tls
version.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.49 release notes
bugs fixed in nss 3.49 bug 1513586 - set downgrade sentinel for client tls
versions lower than 1.2.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.51.1 release notes
bugs fixed in nss 3.51.1 bug 1619102 - add workaround option to include both dtls and tls
versions in dtls supported_
versions.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.51 release notes
bug 1611209 - correct swapped pkcs11 values of ckm_aes_cmac and ckm_aes_cmac_general bug 1612259 - complete integration of wycheproof ecdh test cases bug 1614183 - check if ppc __has_include(<sys/auxv.h>) bug 1614786 - fix a compilation error for ‘getfipsenv’ "defined but not used" bug 1615208 - send dtls
version numbers in dtls 1.3 supported_
versions extension to avoid an incompatibility.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.52 release notes
bug 1619102 - add workaround option to include both dtls and tls
versions in dtls supported_
versions.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.53.1 release notes
bugs fixed in nss 3.53.1 cve-2020-12402 - use constant-time gcd and modular in
version in mpi.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.55 release notes
bug 1652331 - update nss 3.55 nspr
version to 4.27.
...furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS sources building testing
find the directory that contains the highest
version number.
...in past
versions, all files were located in a directory hierarchy that started with the "mozilla" prefix.
nss tech note7
it's used to support ssl2, which modifies the key encoding to include the ssl
version number.
... answer: the
version without the initial 00 says : "ps is a string of strong pseudo-random octets [random] [...] long enough that the value of the quantity being crypted is one octet shorter than the rsa modulus" the
version with the initial 00 instead says to pad to the same length as the rsa modulus.
PKCS 12 functions
the nss
version column indicates which
versions of nss support the function.
... function name/documentation source code nss
versions sec_pkcs12addcertandkey mxr 3.2 and later sec_pkcs12addpasswordintegrity mxr 3.2 and later sec_pkcs12createexportcontext mxr 3.2 and later sec_pkcs12createpasswordprivsafe mxr 3.2 and later sec_pkcs12createunencryptedsafe mxr 3.2 and later sec_pkcs12decoderfinish mxr 3.2 and later sec_pkcs12decodergetcerts mxr 3.4 and later sec_pkcs12decoderimportbags mxr 3.2 and later sec_pkcs12decoderiterateinit mxr 3.10 and later sec_pkcs12decoderiteratenext mxr...
PKCS 7 functions
the nss
version column indicates which
versions of nss support the function.
... function name/documentation source code nss
versions sec_pkcs7addcertificate mxr 3.3 and later sec_pkcs7addrecipient mxr 3.2 and later sec_pkcs7addsigningtime mxr 3.2 and later sec_pkcs7containscertsorcrls mxr 3.4 and later sec_pkcs7contentisencrypted mxr 3.4 and later sec_pkcs7contentissigned mxr 3.4 and later sec_pkcs7contenttype mxr 3.2 and later sec_pkcs7copycontentinfo mxr 3.4 and later sec_pkcs7createcertsonly mxr 3.3 and later sec_pkcs7createdata mxr 3.2 and later sec_pk...
FC_GetTokenInfo
ulsessioncount: number of sessions that this application currently has open with the token ulrwsessioncount: number of read/write sessions that this application currently has open with the token hardware
version: hardware
version number, for example, 8.3 (major=0x08, minor=0x03), which are the
version numbers of the certificate and key databases, respectively.
... firmware
version: firmware
version number, 0.0 (major=0x00, minor=0x00).
SSL functions
the nss
version column indicates which
versions of nss support the function.
... function name/documentation source code nss
versions nss_getclientauthdata mxr 3.2 and later nss_setdomesticpolicy mxr 3.2 and later nss_setexportpolicy mxr 3.2 and later nss_setfrancepolicy mxr 3.2 and later nssssl_
versioncheck mxr 3.2.1 and later ssl_authcertificate mxr 3.2 and later ssl_authcertificatehook mxr 3.2 and later ssl_badcerthook mxr 3.2 and later ssl_certdbhandleset mxr 3.2 and later ssl_canbypass mxr 3.11.7 and later ssl_cipherpolicyget mxr 3.2 and later ssl_cipherpolicyset mxr 3.2 and later ssl_cipherprefget mxr 3.2 and later ssl_cipherprefgetdefault mxr 3...
NSS Tools
many tools implement private
versions of pkcs11init(), opencertdb(), etc.
...the ssltap tool does not decrypt data, but it shows things like the type of ssl message (clienthello, serverhello, etc) and connection data (protocol
version, cipher suite, etc).
NSS tools : signver
the last
versions of these legacy databases are: o cert8.db for certificates o key3.db for keys o secmod.db for pkcs #11 module information berkeleydb has performance limitations, though, which prevent it from being easily used by multiple applications simultaneously.
...licensed under the gnu public license
version 2.
Download Rhino
1.7.7.2.zip rhino 1.7.8 2018-01-22 release notes rhino1.7.8.zip rhino 1.7.9 2018-03-15 release notes rhino1.7.9.zip rhino 1.7.10 2018-04-09 release notes rhino1.7.10.zip rhino 1.7.11 2019-05-30 release notes rhino1.7.11.zip rhino 1.7.12 2020-01-13 release notes rhino1.7.12.zip to download older rhino
versions, see the rhino downloads archive.
... previous
versions were released under mpl 1.1/gpl 2.0 license.
How to embed the JavaScript engine
the code differs for each spidermonkey
version, please choose right
version for your spidermonkey.
...# if you're using
version other than spidermonkey 31, please change -lmozjs-xx to your
version.
64-bit Compatibility
ldcp ldc ldcq piadd add qiadd piand and qiand pilsh lsh qilsh pirsh rsh qirsh pursh ush qursh pcmov cmov qcmov pior or qior pxor xor qxor addp iaddp qaddp peq - puge eq - uge qeq - quge pcall icall qcall the 32-bit
versions have the following inputs and outputs.
... ldc i32, i32 i32 add i32, i32 i32 and i32, i32 i32 lsh i32, i32 i32 rsh i32, i32 i32 ush i32 cmov i32, i32, i32 i32 or i32, i32 i32 xor i32, i32 i32 iaddp i32, i32 i32 eg - uge i32, i32 i32 icall n/a i32 the 64-bit
versions have the following inputs and outputs.
JS::OrdinaryToPrimitive
syntax bool js::ordinarytoprimitive(jscontext *cx, js::handleobject obj, jstype type, js::mutablehandlevalue vp); name type description cx jscontext * the context in which to perform the con
version.
...it implements the default con
version behavior shared by most objects in js, so it's useful as a fallback.
JSObjectOps.defaultValue
syntax typedef jsbool (*jsconvertop)(jscontext *cx, jsobject *obj, jstype type, jsval *vp); name type description cx jscontext * pointer to the js context in which the con
version is needed.
...many expressions in the ecmascript language, such as a+b, involve implicit con
version of the operands using [[defaultvalue]].
JS_CompileScript
js_compileucscript is the unicode
version of the function.
...length indicates the size of the text
version of the script in characters.
JS_DefaultValue
syntax bool js_defaultvalue(jscontext *cx, js::handle<jsobject*> obj, jstype hint, js::mutablehandle<js::value> vp); name type description cx jscontext * the context in which to perform the con
version.
...objects with a custom jsclass specified by the embedder will invoke that class's convert hook, which must convert the object to a primitive value, to determine the primitive result of con
version.
JS_EncodeString
if js_cstringsareutf8 is true, then the returned string of js_encodestring is utf-8, and the con
version is lossless.
...use js_getstringchars to access the 16-bit characters of a javascript string without con
versions or copying.
JS_EvaluateScript
js_evaluateucscript is the unicode
version of the function.
...length indicates the size of the text
version of the script in characters.
JS_GET_CLASS
note: in spidermonkey
versions prior to spidermonkey 1.8.8, js_getclass took both a jscontext* and a jsobject* as arguments in thread-safe builds, and in non-thread-safe builds it took only a jsobject*.
... newer
versions have removed the context argument, so that the same signature is used regardless whether or not the build is thread-safe.
JS_GetClass
in spidermonkey
versions prior to spidermonkey 1.8.8, js_getclass took both a jscontext* and a jsobject* as arguments in thread-safe builds, and in non-thread-safe builds it took only a jsobject*.
... newer
versions have removed the context argument, so that the same signature is used regardless whether or not the build is thread-safe.
JS_GetStringBytes
if js_cstringsareutf8 is true, then the returned string is utf-8, and the con
version is lossless.
...use js_getstringchars to access the 16-bit characters of a javascript string without con
versions or copying.
JS_NewStringCopyN
js_newucstringcopyn is the unicode
version of the function.
...if the array s contains more than n characters, the new string contains a truncated
version of the original string.
JS_PushArguments
syntax jsval * js_pusharguments(jscontext *cx, void **markp, const char *format, ...); jsval * js_pushargumentsva(jscontext *cx, void **markp, const char *format, va_list ap); name type description cx jscontext * the context in which to perform any necessary con
versions.
...to perform the opposite con
version, converting an array of jsvals to various native c types, use js_convertarguments.
JS_ValueToBoolean
syntax jsbool js_valuetoboolean(jscontext *cx, jsval v, jsbool *bp); name type description cx jscontext * the context in which to perform the con
version.
... for
versions greater than js
version_1_2, all objects convert to js_true, even boolean wrapper objects like the one produced by new boolean(false).
JS_ValueToECMAInt32
syntax jsbool js_valuetoecmaint32(jscontext *cx, jsval v, int32 *ip); jsbool js_valuetoecmauint32(jscontext *cx, jsval v, uint32 *ip); jsbool js_valuetouint16(jscontext *cx, jsval v, uint16 *ip); name type description cx jscontext * the context in which to perform the con
version.
...this second con
version cannot fail.
JS_ValueToInt32
syntax jsbool js_valuetoint32(jscontext *cx, jsval v, int32 *ip); name type description cx jscontext * the context in which to perform the con
version.
...if the result is nan, an infinity, or a number outside the 32-bit range, js_valuetoint32 reports an error and con
version fails.
SpiderMonkey 45
if you are compiling with microsoft's visual studio, note the minimum supported
version is msvc 2013.
... on remaining platforms the jit is disabled; javascript code runs in an interpreter, as it has in previous
versions.
SpiderMonkey releases
we are very limited in our ability to support older
versions, including those labeled as "releases" on this page.
... the easiest way to fetch the
version corresponding to the current firefox release is to visit the treeherder page for the release repository and click on the first sm(pkg) link you see.
Shell global objects
there may be some difference between each
versions.
... shell only functions functions always available
version([number]) get or force a script compilation
version number.
AT APIs Support
firefox extensions) gecko
version for firefox and all other gecko-based products: this documentation applies to up-to-date product builds based on gecko 1.9.2 -- currently not available on official releases.
... msaa msaa sdk tools -
version 1.3 is recommended instead of 2.0 because it includes source code for the tools iaccessible2 accessibility probe -- includes msaa support as well atk/at-spi accerciser - interactive python accessibility explorer for the gnome desktop gecko dom inspector has an ability to test gecko accessibility layer, supports base features.
History Service Design
once the database connection has been set-up the schema
version of the database is checked.
... schema
version is upgraded every time a change is made to the database schema, history service will eventually upgrade the database, moving and fixing its datas accordingly.
Binary compatibility
if mozilla decides to upgrade to a compiler that does not have the same abi as the current
version, any built component may fail.
...if you build a component and it works fine in
version 1.0 of mozilla.
Preface
in order to build it, your gecko sdk or mozilla source tree needs to be
version 1.2 or later (xpcom interfaces were not fully frozen in prior releases).
...distribution of substantively modified
versions of this document is prohibited without the explicit permission of the copyright holder.
Starting WebLock
the ns_decl_iweblock declaration macro expands into the following: ns_imethod lock(void); ns_imethod unlock(void); ns_imethod addsite(const char *url); ns_imethod removesite(const char *url); ns_imethod getsites(nsisimpleenumerator * *asites); ns_imethod setsites(nsisimpleenumerator *asites); representing return values in xpcom the code sample above is the c++
version of the iweblock interface methods.
...distribution of substantively modified
versions of this document is prohibited without the explicit permission of the copyright holder.
xpcshell
(however, it might not be there if you have a non-debug
version of firefox, mozilla, thunderbird, etc.) $ cd /opt/mozilla $ ./run-mozilla.sh ./xpcshell js> execute xpcshell from window the built xpcshell.exe can't be executed under the mozilla build shell(bash).
... it should be executed under the window command prompt source_directory/obj-xxxxx/dist/bin> xpcshell.exe using the latest
version of javascript at present, xpcshell doesn't use the latest
version of javascript, so newer language features, such as the let statement introduced in javascript 1.7, are not available.
Language bindings
for example, privileged code using an xray to a dom object sees only the original, native
version of the dom object.
...this can be particularly handy with restartless (boostrapped) extensions, so that you can unload an old
version of a code module when a new
version of your add-on is installed.components.utils.unwaivexraysundo a previous call to components.utils.waivexrays(), restoring xray vision for the caller.components.utils.waivexrayswaives xray vision for an object, giving the caller a transparent wrapper to the underlying object.javaxpcomjavaxpcom allows for communication between java and xpcom, such that a java app...
nsDependentCSubstring
call this
version when you know the length of 'data'.
...call this
version when 'data' is null-terminated.
nsDependentSubstring
call this
version when you know the length of 'data'.
...call this
version when 'data' is null-terminated.
imgIContainer
flag_decode_no_colorspace_con
version: do not do any colorspace con
version; ignore any embedded profiles, and do not convert to any particular destination space.
... flag_sync_decode 0x1 flag_decode_no_premultiply_alpha 0x2 flag_decode_no_colorspace_con
version 0x4 flag_clamp 0x8 frame_first 0 constants for specifying various "special" frames.
jsdIStackFrame
last
version set on this context.
...see the
version_* consts on jsdidebuggerservice.
mozIStorageConnection
schema
version long the schema
version of the database.
...the
version will be reported as 0 if it is not set.
nsIAccessNode
note: the meanings of width, height and other size measurements depend on the
version of css being used.
... note: the meanings of width, height and other size measurements depend on the
version of css being used.
nsIAccessibleEvent
constants constant gecko
version description 1.7 - 1.8.1 1.9 - 1.9.2 2.0 event_show 0x8002 0x0001 an object has been created.
... gecko 1.9.2 note this event is never sent in
versions of gecko prior to 1.9.2, even though the constant existed.
nsIDOMNode
inherits from: nsisupports last changed in gecko 0.9.6 method overview nsidomnode appendchild(in nsidomnode newchild) nsidomnode clonenode(in boolean deep); boolean hasattributes(); boolean haschildnodes(); nsidomnode insertbefore(in nsidomnode newchild, in nsidomnode refchild) boolean issupported(in domstring feature, in domstring
version); void normalize(); nsidomnode removechild(in nsidomnode oldchild) nsidomnode replacechild(in nsidomnode newchild, in nsidomnode oldchild) attributes attribute type description attributes nsidomnamednodemap read only.
...return value insertbefore() nsidomnode insertbefore( in nsidomnode newchild, in nsidomnode refchild ); parameters newchild refchild return value issupported() boolean issupported( in domstring feature, in domstring
version ); parameters feature
version return value normalize() void normalize(); parameters none.
nsIDOMWindowInternal
method overview firefox 3.5 note the prompt() and find() methods changed in firefox 3.5 to make all their parameters optional; in previous
versions, all parameters were required.
... pkcs11 nsidompkcs11 obsolete: this property is not supported in newer
versions of firefox.
nsIDOMWindowUtils
the structure of the json is unspecified and may vary between
versions of firefox.
... the structure of the json is unspecified and may vary between
versions of firefox.
getFile
symbolic names the list of symbolic names is subject to change, so be sure to take a look at the xpcom/io/nsdirectoryservicedefs.h file for the
version of gecko you're working with for the latest list.
... c constant string value notes ns_os_system_dir "sysd" available on mac os x only these locations are supported only on mac os x
versions of gecko.
nsIFile
the native
version of these strings are not guaranteed to be a usable path to pass to nspr or the c stdlib.
... xpcom provides the string con
version functions ns_cstringtoutf16 and ns_utf16tocstring, which can be used to convert a string between utf-16 and the native character encoding.
nsIMsgDBHdr
the value here will effectively be the unparsed
version of the header.
... label nsmsglabelvalue indicates one of the old 5 label values used by old
versions.
nsIMsgFilterList
defined in comm-central/ mailnews/ base/ search/ public/ nsimsgfilterlist.idl attributes folder attribute nsimsgfolder nsimsgfilterlist::folder
version readonly attribute short nsimsgfilterlist::
version arbitraryheaders readonly attribute acstring nsimsgfilterlist::arbitraryheaders shoulddownloadallheaders readonly attribute boolean nsimsgfilterlist::shoulddownloadallheaders filtercount readonly attribute unsigned long nsimsgfilterlist::filtercount loggingenabled attribute boolean nsimsgfilterlist::loggingenabled defaultfile attribute nsilocalfile nsimsgfilterlist::defaultfile logstream attribute nsioutputstream nsimsgfilterlist::logstream logurl readonly attribute acstring nsimsgfilterlist::logurl methods getfilterat() nsimsgfilter nsimsgfilterlist::getfilterat (in unsigned lo...
...g olduri, in acstring newuri, in boolean caseinsensitive ) clearlog() void nsimsgfilterlist::clearlog () ensurelogfile() void nsimsgfilterlist::ensurelogfile () flushlogifnecessary () void nsimsgfilterlist::flushlogifnecessary () const const nsmsgfilterfileattribvalue nsimsgfilterlist::attribnone = 0 const nsmsgfilterfileattribvalue nsimsgfilterlist::attrib
version = 1 const nsmsgfilterfileattribvalue nsimsgfilterlist::attriblogging = 2 const nsmsgfilterfileattribvalue nsimsgfilterlist::attribname = 3 const nsmsgfilterfileattribvalue nsimsgfilterlist::attribenabled = 4 const nsmsgfilterfileattribvalue nsimsgfilterlist::attribdescription = 5 const nsmsgfilterfileattribvalue nsimsgfilterlist::attribtype = 6 const nsmsgfilterfileattribvalue nsimsgf...
nsINavBookmarksService
tarray
version of getbookmarkfolders() for ease of use in c++ code.
... this method is a tarray
version of getbookmarkidsforuri() for ease of use in c++ code.
nsIParserUtils
astring converttoplaintext( in astring src, in unsigned long flags, in unsigned long wrapcol ); parameters src the html source to parse (c++ callers are allowed but not required to use the same string for the return value.) flags con
version option flags defined in nsidocumentencoder.
... return value the plain text con
version of the html specified in src.
nsITXTToHTMLConv
netwerk/streamconv/public/nsitxttohtmlconv.idlscriptable this interface allows you to modify the con
version from plain text to html.
... method overview void preformathtml(in boolean value); void settitle(in wstring text); prior
versions of the interface named the methods using the initialcaps style instead of the intercaps style.
nsITimer
this
version takes a function to call.
...this
version takes a function to call and a closure to pass to that function.
nsIToolkitProfileService
to access the built-in profile manager in
versions of firefox up to 4.0 and thunderbird up to 3.3 you can launch with the -profilemanager command line flag.
... future
versions will require the separate profile manager application.
nsIWebBrowserPersist
persist_flags_no_con
version 16 do not run the incoming data through a content converter for example to decompress it.
... persist_flags_autodetect_apply_con
version 16384 let the webbrowserpersist decide whether the incoming data is encoded and whether it needs to go through a content converter, for example to decompress it.
nsIXULBrowserWindow
setjsdefaultstatus() sets the default status according to javascript's
version of the default status.
... setjsstatus() sets the status according to javascript's
version of the status.
Setting HTTP request headers
to unregister the observer use nsiobserverservice.removeobserver as follows: observerservice.removeobserver(httprequestobserver, "http-on-modify-request"); all-in-one example here is a slightly different
version of our httprequestobserver object.
... while the previous
version we showed before was good for learning, in an actual real-world application, you'd probably want to code it more like the following.
Reference Manual
old-style casts degenerate into the equivalent of reinterpret_cast if no con
version is defined.
...even if you don't follow these suggestions, your nscomptr code may still end up smaller, or at worst only negligibly bulkier than the raw pointer
version.
XPCOM tasks
p3 i/o functionality (except for the filespec facility) probably doesn't belong in xpcom; perhaps it should be moved to netwerk p3 the `twips' units routines (or perhaps all routines) in "nsunitcon
version.h" probably belong in layout.
... p2 do we still require our own
version of quicksort?
XPIDL
methods and attributes are mangled on con
version to native code.
...attributes named 'iid' and methods named 'getiid' are forbidden, although this is checked before binaryname con
version.
Autoconfiguration in Thunderbird
to make the
version without an autoconfig dns entry work you have to make sure that example.com points to the webserver you will place the config-v1.1.xml on.
...former
versions of this spec defined http only.
Main Windows
warning: this content is for older
versions of thunderbird.
...for instance, the “add new toolbar” buttons from toolkit aren’t in the thunderbird
version.
Thunderbird Binaries
thunderbird current release can be downloaded from https://www.mozilla.org/thunderbird/ past thunderbird releases can be downloaded from https://releases.mozilla.org/pub/thunderbird/releases/ early preview releases whilst writing new
versions of thunderbird, developers release preview
versions, known as betas.
...you should see a string that looks something like this: comm-central-1.9.2 branch: mozilla/5.0 (windows; u; windows nt 5.1; en-us; rv:1.9.2.2pre) gecko/20100308 lanikai/3.1b1pre comm-central-trunk: mozilla/5.0 (windows; u; windows nt 5.1; en-us; rv:1.9.3a1pre) gecko/20090826 shredder/3.1a1pre the part that you want to note is the gecko revision number (rv) and the thunderbird
version string.
Building a Thunderbird extension 1: introduction
warning: this content is for older
versions of thunderbird.
...odify the thunderbird user interface) adding javascript (explains how to add some simple javascript to your thunderbird extension) installing locally (enabling the extension on your local thunderbird instance) packaging (making a distribution package that contains the extension) distributing (from your own site or from http://addons.mozilla.org/) this tutorial is compatible with thunderbird
versions 2,3 and 5.
Using the Mozilla symbol server
symbol indices are named like so: symbols.mozilla.org/{lowercased:name}/{lowercased:name}-{
version}-{platform}-{buildid}-symbols.txt.
...the rest of values are based on the contents of the application.ini file under the [app] heading: for example, the thunderbird 3.1b2 release with name=thunderbird,
version=3.1b2, buildid=20100430125415 would have a filename of "thunderbird-3.1b2-linux-20100430125415-symbols.txt" under the thunderbird directory at symbols.mozilla.org.
Virtualenv
if you have git installed, you can clone the latest
version of virtualenv: git clone git://github.com/pypa/virtualenv.git if you have pip or easy_install, you can install virtualenv directly from the web: pip install virtualenv # -or- easy_install virtualenv this will fetch virtualenv from pypi and install it in your site-packages.
... the virtualenv software, mirrored from a canonical
version, lives in python/virtualenv.
Working with windows in chrome code
todo: link to how to pass an xpcom object to a new window when it has a more useful example opener code: window.opendialog("chrome://test/content/progress.xul", "myprogress", "chrome,centerscreen", {status: "reading remote data", maxprogress: 50, progress: 10} ); progress.xul: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window onload="onload();" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script><![cdata[ var gstatus, gprogressmeter; var maxprogress = 100; function onload() { gstatus = document.getelementbyid("status"); gprogressmeter = document.getelementbyid("progressmeter"); if("arguments" in window ...
... works in older
versions of firefox.
Working with ArrayBuffers
introductory reading the pointer types section of the type con
version page explains the fundamentals of this operation.
..._t.ptr, // *src ctypes.size_t // count ); } catch (ex) { throw new error('i dont know where to memcpy is defined on your operating system, "' + os.constants.sys.name + '"'); lib.close() } memcpy(myimgdat.data, pixelbuffer, myimgdat.data.length); // myimgdat.data.length is imgwidth * imgheight *4 because per pixel there is r, g, b, a numbers lib.close(); see also type con
version ...
PointerType
writing to this value writes the c con
version of the data into the pointed-to memory.
... see also ctype cdata type con
version ...
js-ctypes
unlike binary xpcom components, it allows developers to ship a single binary for use with multiple
versions of firefox.
... using js-ctypes ctypes.open custom native file standard os libraries finding window handles working with data working with arraybuffers declaring types declaring and calling functions declaring and using callbacks type con
version memory management chromeworker js-ctypes reference a reference guide to the js-ctypes api.
Initialization and Destruction - Plugins
the function tables also contain
version information that the plug-in checks to verify that it is compatible with the api capabilities provided by the application.
... to check this information, use npn_
version.
Debugging service workers - Firefox Developer Tools
this is very useful because, once registered, the service worker will not necessarily update to the new
version immediately, which can make debugging a pain.
... from updating your service worker: if your service worker has previously been installed, but then a new
version of the worker is available on refresh or page load, the new
version is installed in the background, but not yet activated.
Edit fonts - Firefox Developer Tools
note: the updated font tools as shown in this article are available in firefox 63 onwards; if you are using an older
version of firefox the tools will not look or behave quite the same, but they will be similar (most notably the font editor will not be available).
...for example linux oses need the latest linux freetype
version, and macos prior to 10.13 does not support variable fonts.
UI Tour - Firefox Developer Tools
computed view the computed view shows you the complete computed css for the selected element (the computed values are the same as what getcomputedstyle would return.): compatibility view starting with firefox developer edition
version 77, the compatibility view shows css compability issues, if any, for properties applied to the selected element, and for the current page as a whole.
...as new browser
versions are released, the
version numbers in this list will be updated.
Paint Flashing Tool - Firefox Developer Tools
you should see that the margin-left
version triggers a series of repaints as the element moves, while the transform
version only causes repaints in the start and end positions.
...it's difficult to know what optimizations the browser will make to minimize repaints, and they are subject to change from one
version to the next.
Settings - Firefox Developer Tools
note that this option was called "disable cache" in firefox
versions previous to 49, but it was renamed to make it clearer that this affects the http cache, and not service workers/the cache api.
... note: this option got removed from the ui in firefox 56, because this
version ships with a new debugger ui, but it can still be enabled for the old ui by setting the preference devtools.debugger.workers to true.
Console messages - Firefox Developer Tools
summary the http
version, response code, and time taken to complete.
...then any messages or errors your source generates will show up in the web console with a link back to the original source, not the compressed
version.
Web Console remoting - Firefox Developer Tools
": 425 }, { "from": "conn0.netevent14", "type": "networkeventupdate", "updatetype": "requestcookies", "cookies": 0 }, { "from": "conn0.netevent14", "type": "networkeventupdate", "updatetype": "requestpostdata", "datasize": 1024, "discardrequestbody": false }, { "from": "conn0.netevent14", "type": "networkeventupdate", "updatetype": "responsestart", "response": { "http
version": "http/1.1", "status": "304", "statustext": "not modified", "headerssize": 194, "discardresponsebody": true } }, { "from": "conn0.netevent14", "type": "networkeventupdate", "updatetype": "eventtimings", "totaltime": 1 }, { "from": "conn0.netevent14", "type": "networkeventupdate", "updatetype": "responseheaders", "headers": 6, "headerssize": 194 }, { "from": ...
...s": { "blocked": 0, "dns": 0, "connect": 0, "send": 0, "wait": 16, "receive": 0 }, "totaltime": 16 } the fileactivity packet when a file load is observed the following fileactivity packet is sent to the client: { "from": "conn0.console9", "type": "fileactivity", "uri": "file:///home/mihai/public_html/mozilla/test2.css" } history protocol changes by firefox
version: firefox 18: initial
version.
AnalyserNode - Web APIs
analysernode.mindecibels is a double value representing the minimum power value in the scaling range for the fft analysis data, for con
version to unsigned byte values — basically, this specifies the minimum value for the range of results when using getbytefrequencydata().
... analysernode.maxdecibels is a double value representing the maximum power value in the scaling range for the fft analysis data, for con
version to unsigned byte values — basically, this specifies the maximum value for the range of results when using getbytefrequencydata().
Attr.localName - Web APIs
note: in gecko 1.9.2 and earlier, the property returns the upper-cased
version of the local name for html attributes in html doms (as opposed to xhtml attributes in xml doms).
... in later
versions, in compliance with html5, the property returns in the case of the internal dom storage, which is lower case for both html attributes in html doms and xhtml attributes in xml doms.
AudioBufferSourceNode.AudioBufferSourceNode() - Web APIs
desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetaudiobuffersourcenode() constructorchrome full support 55notes full support 55notes notes before
version 59, the default values were not supported.edge full support ≤79firefox full support 53ie no support noopera full support 42safari ?
... webview android full support 55notes full support 55notes notes before
version 59, the default values were not supported.chrome android full support 55notes full support 55notes notes before
version 59, the default values were not supported.firefox android full support 53opera android full support 42safari ios ?
AudioTrack.kind - Web APIs
audio track kind strings the kinds available for audio tracks are: "alternative" a potential alternative to the main track, such as a different audio take or a
version of the soundtrack with only the music and no dialogue.
... "translation" a translated
version of the primary audio track.
BasicCardRequest.supportedNetworks - Web APIs
ndroidopera for androidsafari on iossamsung internetsupportednetworkschrome no support noedge no support ≤18 — 79firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... webview android no support nochrome android full support 57firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
BasicCardResponse.billingAddress - Web APIs
r androidopera for androidsafari on iossamsung internetbillingaddresschrome no support noedge no support ≤18 — 79firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... webview android no support nochrome android full support 57firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
BasicCardResponse.cardNumber - Web APIs
x for androidopera for androidsafari on iossamsung internetcardnumberchrome no support noedge no support ≤18 — 79firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... webview android no support nochrome android full support 57firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
BasicCardResponse.cardSecurityCode - Web APIs
androidopera for androidsafari on iossamsung internetcardsecuritycodechrome no support noedge no support ≤18 — 79firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... webview android no support nochrome android full support 57firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
BasicCardResponse.cardholderName - Web APIs
r androidopera for androidsafari on iossamsung internetcardholdernamechrome no support noedge no support ≤18 — 79firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... webview android no support nochrome android full support 57firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
BasicCardResponse.expiryMonth - Web APIs
for androidopera for androidsafari on iossamsung internetexpirymonthchrome no support noedge no support ≤18 — 79firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... webview android no support nochrome android full support 57firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
BasicCardResponse.expiryYear - Web APIs
x for androidopera for androidsafari on iossamsung internetexpiryyearchrome no support noedge no support ≤18 — 79firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... webview android no support nochrome android full support 57firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
CanvasRenderingContext2D.filter - Web APIs
a drop shadow is effectively a blurred, offset
version of the drawing's alpha mask drawn in a particular color, composited below the drawing.
...a value of 100% means complete in
version.
A basic ray-caster - Web APIs
after realizing, to my delight, that the nifty <canvas> element i'd been reading about was not only soon to be supported in firefox, but was already supported in the current
version of safari, i had to try a little experiment.
...as the rays intersect walls, then they render a vertical sliver of canvas in the color of the wall they've hit, blended with a darker
version of the color according to the distance to the wall.
ChannelSplitterNode - Web APIs
channel count mode "explicit" older implementations, as per earlier
versions of the spec use "max".
...older implementations, as per earlier
versions of the spec use 2 (not used in the default count mode).
Constraint validation API - Web APIs
note: firefox supported a proprietary error attribute — x-moz-errormessage — for many
versions, which allowed you set custom error messages in a similar way.
... this has been removed as of
version 66 (see bug 1513890).
DOMException - Web APIs
versionerror an attempt was made to open a database using a lower
version than the existing
version (no legacy code value and constant name).
...adds the notreadableerror, unknownerror, constrainterror, dataerror, transactioninactiveerror, readonlyerror,
versionerror, operationerror, and notallowederror values.
DelayNode() - Web APIs
desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetdelaynode() constructorchrome full support 55notes full support 55notes notes before
version 59, the default values were not supported.edge full support ≤79firefox full support 53ie no support noopera full support 42safari ?
... webview android full support 55notes full support 55notes notes before
version 59, the default values were not supported.chrome android full support 55notes full support 55notes notes before
version 59, the default values were not supported.firefox android full support 53opera android full support 42safari ios ?
Document.all - Web APIs
con
version to boolean document.all is the only falsy object accessible to javascript, because it has the [[ishtmldda]] internal slot.
... this was done because of compatibility with older
versions of internet explorer.
Document.clear() - Web APIs
the document.clear() method clears the whole specified document in early (pre-1.0)
versions of mozilla.
... in recent
versions of mozilla-based applications, as well as in internet explorer and netscape 4, this method does nothing.
Document.createElementNS() - Web APIs
for backwards compatibility with previous
versions of the custom elements specification, some browsers will allow you to pass a string here instead of an object, where the string's value is the custom element's tag name.
...although this is not an extremely useful xul document, it does demonstrate the use of elements from two different namespaces within a single document: <?xml
version="1.0"?> <page xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml" title="||working with elements||" onload="init()"> <script type="application/javascript"><![cdata[ let container; let newdiv; let txtnode; function init(){ container = document.getelementbyid("containerbox"); newdiv = document.createelementns(...
Document - Web APIs
document.xml
version obsolete since gecko 10 returns the
version number as specified in the xml declaration or "1.0" if the declaration is absent.
... extension for html documents the document interface for html documents inherit from the htmldocument interface or, since html5, is extended for such documents: document.clear() in majority of modern browsers, including recent
versions of firefox and internet explorer, this method does nothing.
Element - Web APIs
in later
versions, html elements are in the http://www.w3.org/1999/xhtml namespace in both html and xml trees.
... this change is implemented in chrome since
version 46.0 and firefox since
version 48.0.
Event - Web APIs
animationevent audioprocessingevent beforeinputevent beforeunloadevent blobevent clipboardevent closeevent compositionevent cssfontfaceloadevent customevent devicelightevent devicemotionevent deviceorientationevent deviceproximityevent domtransactionevent dragevent editingbeforeinputevent errorevent fetchevent focusevent gamepadevent hashchangeevent idb
versionchangeevent inputevent keyboardevent mediastreamevent messageevent mouseevent mutationevent offlineaudiocompletionevent overconstrainederror pagetransitionevent paymentrequestupdateevent pointerevent popstateevent progressevent relatedevent rtcdatachannelevent rtcidentityerrorevent rtcidentityevent rtcpeerconnectioniceevent sensorevent storageevent svgevent svgzoomevent time...
... event.srcelement a non-standard alias (from old
versions of microsoft internet explorer) for event.target.
HTMLCanvasElement.getContext() - Web APIs
this context is only available on browsers that implement webgl
version 1 (opengl es 2.0).
...this context is only available on browsers that implement webgl
version 2 (opengl es 3.0).
HTMLIFrameElement.allowPaymentRequest - Web APIs
desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetallowpaymentrequest experimentalchrome full support 60disabled full support 60disabled disabled from
version 60: this feature is behind the #web-payments preference (needs to be set to enabled).
... webview android no support nochrome android full support 61disabled full support 61disabled disabled from
version 61: this feature is behind the #web-payments preference (needs to be set to enabled).
HTMLImageElement.currentSrc - Web APIs
opera for androidsafari on iossamsung internetcurrentsrc experimentalchrome full support 45edge full support 13firefox full support 38 full support 38 no support 32 — 52disabled disabled from
version 32 until
version 52 (exclusive): this feature is behind the dom.image.srcset.enabled preference (needs to be set to true).
... support 10.1webview android full support 45chrome android full support 45firefox android full support 38 full support 38 no support 32 — 52disabled disabled from
version 32 until
version 52 (exclusive): this feature is behind the dom.image.srcset.enabled preference (needs to be set to true).
HTMLInputElement.setSelectionRange() - Web APIs
optionally, in newer browser
versions, you can specify the direction in which selection should be considered to have occurred.
...chrome, starting from
version 33, throws an exception while accessing those properties and method on the rest of input types.
HTMLInputElement - Web APIs
valueasdate date object: returns / sets the value of the element, interpreted as a date, or null if con
version is not possible.
... valueasnumber double: returns the value of the element, interpreted as one of the following, in order: a time value a number nan if con
version is impossible autocapitalize string: defines the capitalization behavior for user input.
HTMLMediaElement.srcObject - Web APIs
usage notes older
versions of the media source specification required using createobjecturl() to create an object url then setting src to that url.
... const mediasource = new mediasource(); const video = document.createelement('video'); video.srcobject = mediasource; supporting fallback to the src property the examples below support older browser
versions that require you to create an object url and assign it to src if srcobject isn't supported.
HTMLOrForeignElement.dataset - Web APIs
name con
version dash-style to camelcase con
version a custom data attribute name is transformed to a key for the domstringmap entry with the following rules the prefix data- is removed (including the dash); for any dash (u+002d) followed by an ascii lowercase letter a to z, the dash is removed, and the letter is transformed into its uppercase counterpart; other characters (including other dashes) a...
... camelcase to dash-style con
version the opposite transformation, which maps a key to an attribute name, uses the following rules: restriction: before the transformation, a dash must not be immediately followed by an ascii lowercase letter a to z; the prefix data- is added; any ascii uppercase letter a to z is transformed into a dash, followed by its lowercase counterpart; other characters are left unchanged.
IDBFactory - Web APIs
idbfactory.databases a method that returns a list of all available databases, including their names and
versions.
...// moreover, you may need references to some window.idb* objects: window.idbtransaction = window.idbtransaction || window.webkitidbtransaction || window.msidbtransaction; window.idbkeyrange = window.idbkeyrange || window.webkitidbkeyrange || window.msidbkeyrange; // (mozilla has never prefixed these objects, so we don't need window.mozidb*) // let us open
version 4 of our database var dbopenrequest = window.indexeddb.open("todolist", 4); // these two event handlers act on the database being opened successfully, or not dbopenrequest.onerror = function(event) { console.error("error loading database."); }; dbopenrequest.onsuccess = function(event) { console.info("database initialised."); // store the result of opening the database in the db var...
IDBIndex - Web APIs
10.3samsung internet android full support 5.0getallkeyschrome full support 48edge full support ≤18firefox full support 44disabled full support 44disabled disabled from
version 44: this feature is behind the dom.indexeddb.experimental preference.
... 35safari full support 10.1webview android full support 48chrome android full support 48firefox android full support 44disabled full support 44disabled disabled from
version 44: this feature is behind the dom.indexeddb.experimental preference.
IDBTransaction.mode - Web APIs
versionchange allows any operation to be performed, including ones that delete and create object stores and indexes.
... this mode is for updating the
version number of transactions that were started using idbdatabase.set
version().
IIRFilterNode() - Web APIs
desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetiirfilternode() constructorchrome full support 55notes full support 55notes notes before
version 59, the default values were not supported.edge full support ≤79firefox full support 53ie no support noopera full support 42safari ?
... webview android full support 55notes full support 55notes notes before
version 59, the default values were not supported.chrome android full support 55notes full support 55notes notes before
version 59, the default values were not supported.firefox android full support 53opera android full support 42safari ios ?
InstallTrigger - Web APIs
compare
version compares the
version of a file or package with the
version of an existing file or package.
... get
version returns an object representing the
version number from the client
version registry for the specified component.
MutationEvent - Web APIs
cross-browser support these events are not implemented consistently across different browsers, for example: ie prior to
version 9 didn't support the mutation events at all and does not implement some of them correctly in
version 9 (for example, domnodeinserted) webkit doesn't support domattrmodified (see webkit bug 8191 and the workaround) "mutation name events", i.e.
... domelementnamechanged and domattributenamechanged are not supported in firefox (as of
version 11), and probably in other browsers as well.
Navigator - Web APIs
navigatorid.app
version read only returns the
version of the browser as a domstring.
... navigator.vendorsub returns the vendor
version number (e.g.
NavigatorID.platform - Web APIs
for example: "macintel", "win32", "freebsd i386", "webtv os" example console.log(navigator.platform); usage notes most browsers, including chrome, edge, and firefox 63 and later, return "win32" even if running on a 64-bit
version of windows.
... internet explorer and
versions of firefox prior to
version 63 still report "win64".
Node - Web APIs
in later
versions, this does not happen, so the property is in lower case for both html and xhtml.
...in later
versions, html elements are in the http://www.w3.org/1999/xhtml/ namespace in both html and xml trees.
Notification.requestPermission() - Web APIs
}); previously, the syntax was based on a simple callback; this
version is now deprecated: notification.requestpermission(callback); parameters callback optional deprecated since gecko 46 an optional callback function that is called with the permission value.
...firefox is already doing this from
version 72, for example.
OfflineAudioContext.startRendering() - Web APIs
browsers currently support two
versions of the startrendering() method — an older event-based
version and a newer promise-based
version.
... syntax event-based
version: offlineaudioctx.startrendering(); offlineaudioctx.oncomplete = function(e) { // e.renderedbuffer contains the output buffer } promise-based
version: offlineaudioctx.startrendering().then(function(buffer) { // buffer contains the output buffer }); parameters none.
OfflineAudioContext - Web APIs
event handlers offlineaudiocontext.oncomplete is an eventhandler called when processing is terminated, that is when the complete event (of type offlineaudiocompletionevent) is raised, after the event-based
version of offlineaudiocontext.startrendering() is used.
...this page covers both the event-based
version and the promise-based
version.
OffscreenCanvas.getContext() - Web APIs
this context is only available on browsers that implement webgl
version 1 (opengl es 2.0).
...this context is only available on browsers that implement webgl
version 2 (opengl es 3.0).
PaymentRequest.abort() - Web APIs
oidopera for androidsafari on iossamsung internetabort()chrome full support 61edge full support 15firefox full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... 11.1webview android no support nochrome android full support 53firefox android full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentRequest.canMakePayment() - Web APIs
for androidsafari on iossamsung internetcanmakepayment()chrome full support 61edge full support 16firefox full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... 11.1webview android no support nochrome android full support 53firefox android full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentRequest.prototype.id - Web APIs
androidopera for androidsafari on iossamsung internetidchrome full support 61edge full support 16firefox full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... 11.1webview android no support nochrome android full support 60firefox android full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentRequest.onshippingaddresschange - Web APIs
roidsafari on iossamsung internetonshippingaddresschangechrome full support 61edge full support 15firefox full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... 11.1webview android no support nochrome android full support 53firefox android full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentRequest.onshippingoptionchange - Web APIs
droidsafari on iossamsung internetonshippingoptionchangechrome full support 61edge full support 15firefox full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... 11.1webview android no support nochrome android full support 53firefox android full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentRequest.shippingOption - Web APIs
a for androidsafari on iossamsung internetshippingoptionchrome full support 61edge full support 15firefox full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... 11.1webview android no support nochrome android full support 53firefox android full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentRequest.shippingType - Web APIs
era for androidsafari on iossamsung internetshippingtypechrome full support 61edge full support 15firefox full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... 11.1webview android no support nochrome android full support 55firefox android full support 55notes disabled full support 55notes disabled notes available only in nightly builds.disabled from
version 55: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentRequest.payerName - Web APIs
dopera for androidsafari on iossamsung internetpayernamechrome full support 61edge full support 15firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... yeswebview android no support nochrome android full support 58firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
PaymentResponse.requestId - Web APIs
dopera for androidsafari on iossamsung internetrequestidchrome full support 61edge full support 16firefox full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... yeswebview android no support nochrome android full support 60firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from
version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
Performance Timeline - Web APIs
however, note there is one key difference with these methods; the performance observer entry list
versions are used to retrieve observed performance entries within the observer callback.
... performance observers were added to the level 2
version of the standard and were not widely implemented.
Permissions - Web APIs
ternet android full support 5.0revoke experimentalnon-standardchrome full support 46edge full support 79firefox full support 51disabled full support 51disabled disabled from
version 51: this feature is behind the dom.permissions.revoke.enable preference (needs to be set to true).
... safari no support nowebview android full support 46chrome android full support 46firefox android full support 51disabled full support 51disabled disabled from
version 51: this feature is behind the dom.permissions.revoke.enable preference (needs to be set to true).
Plugin - Web APIs
note: own properties of plugin objects are no longer enumerable in the latest browser
versions.
... plugin.
version read only the plugin's
version number string.
PublicKeyCredential.id - Web APIs
this property is a base64url encoded
version of publickeycredential.rawid.
... syntax id = publickeycredential.id value a domstring being the base64url encoded
version of publickeycredential.rawid.
PushManager.registrations() - Web APIs
version the current
version that the push endpoint is at.
... example var req = navigator.push.registrations(); req.onsuccess = function(e) { if (req.result.length > 0) { for (var i = 0, l = req.result.length; i < l; i++) { console.log("existing registration", req.result[i].pushendpoint, req.result[i].
version); } // reuse existing endpoints.
RTCPeerConnection.addIceCandidate() - Web APIs
if no candidate object is specified, or its value is null, an end-of-candidates signal is sent to the remote peer using the end-of-candidates a-line, formatted simply like this: a=end-of-candidates deprecated parameters in older code and documentation, you may see a callback-based
version of this function.
...you should update any existing code to use the promise-based
version of addicecandidate() instead.
RTCPeerConnection.createAnswer() - Web APIs
deprecated parameters in older code and documentation, you may see a callback-based
version of this function.
...you should update any existing code to use the promise-based
version of createanswer() instead.
RTCPeerConnection.createOffer() - Web APIs
deprecated parameters in older code and documentation, you may see a callback-based
version of this function.
...you should update any existing code to use the promise-based
version of createoffer() instead.
RTCPeerConnection.getStats() - Web APIs
this
version of getstats() is obsolete; in addition, the data it returns is entirely different from the current specification, and the form of that data was never documented.
... this form of getstats() has been or will soon be removed from most browsers; you should not use it, and should update existing code to use the new promise-based
version.
RTCRtpCapabilities - Web APIs
those components are: red (redundant audio data) the media type of an red entry may vary due to there being several
versions of it, but it will end with red, such as video/red or video/fwdred.
... fec (forward error correction) an fec component handles error correction data; its media type may also vary due to there being advanced
versions of the standard available, but it will always end with fec.
RTCRtpContributingSource.source - Web APIs
android webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetsourcechrome full support 59edge full support ≤79firefox full support 59disabled full support 59disabled disabled from
version 59: this feature is behind the media.peerconnection.rtpsourcesapi.enable preference (needs to be set to true).
... webview android full support 59chrome android full support 59firefox android full support 59disabled full support 59disabled disabled from
version 59: this feature is behind the media.peerconnection.rtpsourcesapi.enable preference (needs to be set to true).
Service Worker API - Web APIs
if there is an existing service worker available, the new
version is installed in the background, but not yet activated — at this point it is called the worker in waiting.
...the point where this event fires is generally a good time to clean up old caches and other things associated with the previous
version of your service worker.
TextRange - Web APIs
this property should only be used as one of the solutions when you need to be compatible with lower
versions of ie, rather than relying on it completely in cross browser scripts.
...it can be used as an alternative to element.scrollintoview in the lower
version of ie.
UIEvent.pageX - Web APIs
this property was never part of any standard, and was only implemented across a subset of browsers, and only for a limited number of
versions.
... a standardized
version of pagex was added to the mouseevent interface, however, and is well-supported.
URL.createObjectURL() - Web APIs
using object urls for media streams in older
versions of the media source specification, attaching a stream to a <video> element required creating an object url for the mediastream.
... older
versions of this specification used createobjecturl() for mediastream objects; this is no longer supported.
URL API - Web APIs
url api interfaces the url api is a simple one, with only a couple of interfaces to its name: url urlsearchparams older
versions of the specification included an interface called urlutilsreadonly, which has since been merged into the workerlocation interface.
...arams.sort(); let keys = url.searchparams.keys(); for (let key of keys) { let val = url.searchparams.get(key); let row = document.createelement("tr"); let cell = document.createelement("td"); cell.innertext = key; row.appendchild(cell); cell = document.createelement("td"); cell.innertext = val; row.appendchild(cell); tbl.appendchild(row); }; } a working
version of this example can be found on glitch.
WebGLRenderingContext.texImage2D() - Web APIs
nsigned_byte 3 3 rgba unsigned_short_4_4_4_4 4 2 rgba unsigned_short_5_5_5_1 4 2 rgb unsigned_short_5_6_5 3 2 luminance_alpha unsigned_byte 2 2 luminance unsigned_byte 1 1 alpha unsigned_byte 1 1 other possible values in webgl2 for the
versions of teximage2d that take an arraybufferview or a glintptr offset sized format base format r bits g bits b bits a bits shared bits color renderable texture filterable r8 red 8 ● ● r8_snorm red s8 ● rg8 rg 8 8 ...
... rgba8ui rgba ui8 ui8 ui8 ui8 ● rgba16i rgba i16 i16 i16 i16 ● rgba16ui rgba ui16 ui16 ui16 ui16 ● rgba32i rgba i32 i32 i32 i32 ● rgba32ui rgba ui32 ui32 ui32 ui32 ● possible values in webgl2 for the
versions of teximage2d that take a texture an htmlimageelement, htmlcanvaselement, htmlvideoelement, imagebitmap, or imagedata gl.alpha: discards the red, green and blue components and reads the alpha component.
Rendering and the WebXR frame animation callback - Web APIs
a basic renderer in this
version of the webxr renderering callback, we use a very straightforward approach that works great for relatively simple projects.
... for example, to reduce the frame rate by 50%, just skip every other frame: let tick = 0; function drawframe(time, frame) { animationframerequestid = frame.session.requestanimationframe(drawframe); if (!(tick % 2)) { /* draw the scene */ } tick++; } this
version of the frame callback maintains a tick counter.
Starting up and shutting down a WebXR session - Web APIs
be sure to read the readme carefully; the polyfill comes in several
versions depending on what degree of compatibility with newer javascript features your target browsers include.
...
version 0.4.0 of the extension was announced on march 26, 2020.
Using Web Workers - Web APIs
however, unlike pass-by-reference, the '
version' from the calling context is no longer available once transferred.
... audio worklet provide the ability for direct scripted audio processing to be done in a worklet (a lightweight
version of worker) context.
window.cancelIdleCallback() - Web APIs
i on iossamsung internetcancelidlecallback experimentalchrome full support 47edge full support 79firefox full support 55 full support 55 full support 53disabled disabled from
version 53: this feature is behind the dom.requestidlecallback.enabled preference (needs to be set to true).
... nowebview android full support 47chrome android full support 47firefox android full support 55 full support 55 full support 53disabled disabled from
version 53: this feature is behind the dom.requestidlecallback.enabled preference (needs to be set to true).
Window.event - Web APIs
1edge full support 12firefox full support 63notes disabled full support 63notes disabled notes this was briefly enabled by default in 65, then removed again while related compatibility issues are sorted out (see bug 1520756).disabled from
version 63: this feature is behind the dom.window.event.enabled preference (needs to be set to true).
... 1chrome android full support 18firefox android full support 63notes disabled full support 63notes disabled notes this was briefly enabled by default in 65, then removed again while related compatibility issues are sorted out (see bug 1520756).disabled from
version 63: this feature is behind the dom.window.event.enabled preference (needs to be set to true).
Window.prompt() - Web APIs
d inside an <iframe> unless its sandbox attribute has the value allow-modals.edge full support 12firefox full support 1ie full support 4notes full support 4notes notes this function has no effect in the modern ui/metro
version of internet explorer for windows 8.
...desktop
versions of ie do implement this function.opera full support 3notes full support 3notes notes starting with opera 33, this method is blocked inside an <iframe> unless its sandbox attribute has the value allow-modals.safari full support 1webview android full support 1notes full support 1notes notes starting with webview 46, this method is blocked inside an <iframe> unless its sandbox attribute has the value allow-modals.chrome android ...
Window.window - Web APIs
yet another reason to use this property, is for libraries which wish to offer oop-
versions, and non-oop
versions (especially javascript modules).
...in the non-namespaced
version, "this.window" would refer back to "window", and also be able to readily get the document location.
WorkerNavigator - Web APIs
navigatorid.app
version read only returns the
version of the browser as a string.
... navigatorlanguage.languageread only returns a domstring representing the language
version of the browser.
XMLHttpRequest - Web APIs
note: according to the http/2 specification (8.1.2.4 response pseudo-header fields), http/2 does not define a way to carry the
version or reason phrase that is included in an http/1.1 status line.
... specifications specification status comment xmlhttprequest living standard live standard, latest
version ...
XSLT Basic Example - Web APIs
figure 1 : simple xslt example xml document (example.xml) : <?xml
version="1.0"?> <?xml-stylesheet type="text/xsl" href="example.xsl"?> <article> <title>my article</title> <authors> <author>mr.
...bar</author> </authors> <body>this is my article text.</body> </article> xsl stylesheet (example.xsl) : <?xml
version="1.0"?> <xsl:stylesheet
version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform"> <xsl:output method="text"/> <xsl:template match="/"> article - <xsl:value-of select="/article/title"/> authors: <xsl:apply-templates select="/article/authors/author"/> </xsl:template> <xsl:template match="author"> - <xsl:value-of select="." /> </xsl:template> </xsl:stylesheet> browser output : article - my article authors: - mr.
ARIA live regions - Accessibility
general support for live regions was added to jaws on
version 10.0.
... in windows eyes supports live regions since
version 8.0 "for use outside of browse mode for microsoft internet explorer and mozilla firefox".
ARIA annotations - Accessibility
wai-aria
version 1.3 sees the addition of a set of new features, collectively known as aria annotations, which allow the creation of accessible annotations inside web documents.
... aria annotation roles and objects are currently exposed in: firefox from
version 75 onwards, on windows and linux (on macos, we are first waiting for apple to define what safari will expose as apple-dialect attributes to voiceover, and will then follow suit.) chrome from
version 81 onwards, currently behind the #enable-accessibility-expose-aria-annotations flag (go to chrome://flags to enable this.) unfortunately, you won’t be able to use any of these yet, as screenreade...
ARIA - Accessibility
in addition, the
version of the operating system, browser, and assistive technology are contributing factors.
... older software
versions may not support certain aria roles, have only partial support, or misreport its functionality.
Accessibility and Spacial Patterns - Accessibility
the nature of space can change depending upon what mime type is being used, and its
version.
... for example, borders on svg can extend both inward and outward from its dimensions, or for newer
versions of svg, entirely outward from it, thus reducing the space around the svg to enable perception.
::slotted() - CSS: Cascading Style Sheets
ox for androidopera for androidsafari on iossamsung internet::slottedchrome full support 50edge full support 79firefox full support 63 full support 63 no support 59 — 63disabled disabled from
version 59 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
...ll support 10webview android full support 50chrome android full support 50firefox android full support 63 full support 63 no support 59 — 63disabled disabled from
version 59 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
:host() - CSS: Cascading Style Sheets
efox for androidopera for androidsafari on iossamsung internet:host()chrome full support 54edge full support 79firefox full support 63 full support 63 no support 61 — 63disabled disabled from
version 61 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
...ling slotted content (::slotted) is buggy.webview android full support 54chrome android full support 54firefox android full support 63 full support 63 no support 61 — 63disabled disabled from
version 61 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
:host - CSS: Cascading Style Sheets
irefox for androidopera for androidsafari on iossamsung internet:hostchrome full support 54edge full support 79firefox full support 63 full support 63 no support 61 — 63disabled disabled from
version 61 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
...ll support 10webview android full support 54chrome android full support 54firefox android full support 63 full support 63 no support 61 — 63disabled disabled from
version 61 until
version 63 (exclusive): this feature is behind the dom.webcomponents.shadowdom.enabled preference (needs to be set to true).
:scope - CSS: Cascading Style Sheets
no support 20 — 32disabled disabled from
version 20 until
version 32 (exclusive): this feature is behind the layout.css.scope-pseudo.enabled preference (needs to be set to true).
... full support 20disabled disabled from
version 20: this feature is behind the layout.css.scope-pseudo.enabled preference (needs to be set to true).
Alternative style sheets - CSS: Cascading Style Sheets
specifying alternative style sheets in a web page provides a way for users to see multiple
versions of a page, based on their needs or preferences.
...chrome requires an extension to use the feature (as of
version 48).
CSS Box Alignment - CSS: Cascading Style Sheets
the gap properties were originally prefixed with grid- in the grid layout specification and some browsers only support these prefixed
versions.
... grid-row-gap grid-column-gap grid-gap the prefixed
versions will be maintained as an alias of the unprefixed ones, however you can always double up in the way that you would with vendor prefixes, adding the grid-gap property and then the gap property with the same values.
Using feature queries - CSS: Cascading Style Sheets
therefore the grid
version should just overwrite the floated one.
... in the above scenario, it doesn't matter that ie11 doesn't support feature queries or css grid — it would get the floated
version anyway, which is then overwritten by browsers that do support grid.
Cross-browser Flexbox mixins - CSS: Cascading Style Sheets
reverse { -webkit-box-direction: reverse; -webkit-box-orient: vertical; -moz-box-direction: reverse; -moz-box-orient: vertical; } @else { -webkit-box-direction: normal; -webkit-box-orient: horizontal; -moz-box-direction: normal; -moz-box-orient: horizontal; } -webkit-flex-direction: $value; -ms-flex-direction: $value; flex-direction: $value; } // shorter
version: @mixin flex-dir($args...) { @include flex-direction($args...); } flexbox wrap the flex-wrap property controls whether the flex container is single-lined or multi-lined and the direction of the cross-axis, which determines the direction in which the new lines are stacked in.
...nd; -ms-flex-pack: end; } @else if $value == space-between { -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; } @else if $value == space-around { -ms-flex-pack: distribute; } @else { -webkit-box-pack: $value; -moz-box-pack: $value; -ms-flex-pack: $value; } -webkit-justify-content: $value; justify-content: $value; } // shorter
version: @mixin flex-just($args...) { @include justify-content($args...); } flexbox align items flex items can be aligned in the cross axis of the current line of the flex container, similar to justify-content but in the perpendicular direction.
Basic Concepts of grid layout - CSS: Cascading Style Sheets
browsers are updating to remove this prefix, however the prefixed
versions will be maintained as aliases making them safe to use.
... at the present time, some browsers do not support the unprefixed
versions which is why the live examples in this guide use grid- prefixed
versions.
Line-based placement with CSS Grid - CSS: Cascading Style Sheets
browsers are updating their rendering engines to remove this prefix, however the prefixed
versions will be maintained as aliases, making them safe to use.
... at the present time, some browsers do not support the unprefixed
versions, which is why the live examples in this guide use grid- prefixed
versions.
Pseudo-elements - CSS: Cascading Style Sheets
however, since this distinction was not present in older
versions of the w3c spec, most browsers support both syntaxes for the original pseudo-elements.
... index of standard pseudo-elements ::after (:after) ::backdrop ::before (:before) ::cue ::cue-region ::first-letter (:first-letter) ::first-line (:first-line) ::grammar-error ::marker ::part() ::placeholder ::selection ::slotted() ::spelling-error browser lowest
version support of internet explorer 8.0 :pseudo-element 9.0 :pseudo-element ::pseudo-element firefox (gecko) 1.0 (1.0) :pseudo-element 1.0 (1.5) :pseudo-element ::pseudo-element opera 4.0 :pseudo-element 7.0 :pseudo-element ::pseudo-element safari (webkit) 1.0 (85) :pseudo-element ::pseudo-element specifications specification status comment css level 1 reco...
animation-delay - CSS: Cascading Style Sheets
full support 49prefixed prefixed implemented with the vendor prefix: -webkit- full support 44prefixed disabled prefixed implemented with the vendor prefix: -webkit-disabled from
version 44: this feature is behind the layout.css.prefixes.webkit preference (needs to be set to true).
...x android full support 16 full support 16 full support 49prefixed prefixed implemented with the vendor prefix: -webkit- full support 44prefixed disabled prefixed implemented with the vendor prefix: -webkit-disabled from
version 44: this feature is behind the layout.css.prefixes.webkit preference (needs to be set to true).
animation-direction - CSS: Cascading Style Sheets
t-firefox full support 16 full support 16 full support 49prefixed prefixed implemented with the vendor prefix: -webkit- full support 44prefixed disabled prefixed implemented with the vendor prefix: -webkit-disabled from
version 44: this feature is behind the layout.css.prefixes.webkit preference (needs to be set to true).
...x android full support 16 full support 16 full support 49prefixed prefixed implemented with the vendor prefix: -webkit- full support 44prefixed disabled prefixed implemented with the vendor prefix: -webkit-disabled from
version 44: this feature is behind the layout.css.prefixes.webkit preference (needs to be set to true).
box-direction - CSS: Cascading Style Sheets
1prefixed full support 1prefixed prefixed implemented with the vendor prefix: -moz- full support 49prefixed prefixed implemented with the vendor prefix: -webkit- full support 48prefixed disabled prefixed implemented with the vendor prefix: -webkit-disabled from
version 48: this feature is behind the layout.css.prefixes.webkit preference (needs to be set to true).
... 4prefixed full support 4prefixed prefixed implemented with the vendor prefix: -moz- full support 49prefixed prefixed implemented with the vendor prefix: -webkit- full support 48prefixed disabled prefixed implemented with the vendor prefix: -webkit-disabled from
version 48: this feature is behind the layout.css.prefixes.webkit preference (needs to be set to true).
column-count - CSS: Cascading Style Sheets
12 full support 12prefixed prefixed implemented with the vendor prefix: -webkit-firefox full support 52 full support 52 no support 1.5 — 74prefixed notes prefixed implemented with the vendor prefix: -moz-notes prior to
version 37, multiple columns didn't work with display: table-caption elements.ie full support 10opera full support 11.1 full support 11.1 full support 15prefixed prefixed implemented with the vendor prefix: -webkit-safari ...
... full support 18prefixed prefixed implemented with the vendor prefix: -webkit-firefox android full support 52 full support 52 full support 4prefixed notes prefixed implemented with the vendor prefix: -moz-notes prior to
version 37, multiple columns didn't work with display: table-caption elements.opera android full support 11.1 full support 11.1 full support 14prefixed prefixed implemented with the vendor prefix: -webkit-safari ios full support ...
invert() - CSS: Cascading Style Sheets
syntax invert(amount) parameters amount the amount of the con
version, specified as a <number> or a <percentage>.
... examples invert(0) /* no effect */ invert(.6) /* 60% in
version */ invert(100%) /* completely inverted */ specifications specification status filter effects module level 1the definition of 'invert()' in that specification.
font-stretch - CSS: Cascading Style Sheets
in earlier
versions of the font-stretch specification, the property accepts only the nine keyword values.
... html <div class="container"> <p class="condensed">an elephantine lizard</p> <p class="normal">an elephantine lizard</p> <p class="expanded">an elephantine lizard</p> </div> css /* this example uses the league mono variable font, developed by tyler finck (https://www.tylerfinck.com/) and used here under the terms of the sil open font license,
version 1.1: http://scripts.sil.org/cms/scripts/page.php?item_id=ofl_web */ @font-face { src: url('https://mdn.mozillademos.org/files/16014/leaguemonovariable.ttf'); font-family:'leaguemonovariable'; font-style: normal; font-stretch: 1% 500%; /* required by chrome */ } .container { border: 10px solid #f5f9fa; padding: 0 1rem; font: 1.5rem 'leaguemonovariable', sans-serif; } .condensed { ...
font-variant-caps - CSS: Cascading Style Sheets
ndroidopera for androidsafari on iossamsung internetfont-variant-capschrome full support 52edge full support 79firefox full support 34 full support 34 no support 24 — 34disabled disabled from
version 24 until
version 34 (exclusive): this feature is behind the layout.css.font-features.enabled preference (needs to be set to true).
...no support nowebview android full support 52chrome android full support 52firefox android full support 34 full support 34 no support 24 — 34disabled disabled from
version 24 until
version 34 (exclusive): this feature is behind the layout.css.font-features.enabled preference (needs to be set to true).
font-variant-position - CSS: Cascading Style Sheets
ndroidopera for androidsafari on iossamsung internetfont-variant-positionchrome no support noedge no support nofirefox full support 34 full support 34 no support 24 — 34disabled disabled from
version 24 until
version 34 (exclusive): this feature is behind the layout.css.font-features.enabled preference (needs to be set to true).
... no support nowebview android no support nochrome android no support nofirefox android full support 34 full support 34 no support 24 — 34disabled disabled from
version 24 until
version 34 (exclusive): this feature is behind the layout.css.font-features.enabled preference (needs to be set to true).
font-variant - CSS: Cascading Style Sheets
rt 1.0css fonts module level 3 shorthandchrome full support 52edge full support 79firefox full support 34 full support 34 no support 33 — 34disabled disabled from
version 33 until
version 34 (exclusive): this feature is behind the layout.css.font-features.enabled preference (needs to be set to true).
...l support 9.1webview android full support 52chrome android full support 52firefox android full support 34 full support 34 no support 33 — 34disabled disabled from
version 33 until
version 34 (exclusive): this feature is behind the layout.css.font-features.enabled preference (needs to be set to true).
mask-type - CSS: Cascading Style Sheets
formal definition initial valueluminanceapplies to<mask> elementsinheritednocomputed valueas specifiedanimation typediscrete formal syntax luminance | alpha examples setting an alpha mask html <div class="redsquare"></div> <svg
version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="0" height="0"> <defs> <mask id="m" maskcontentunits="objectboundingbox" style="mask-type:alpha"> <rect x=".1" y=".1" width=".8" height=".8" fill="red" fill-opacity="0.7"/> </mask> </defs> </svg> css .redsquare { height: 100px; width: 100px; background-color: rgb...
...(128, 128, 128); border: solid 1px black; mask: url("#m"); } result setting a luminance mask html <div class="redsquare"></div> <svg
version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="0" height="0"> <defs> <mask id="m" maskcontentunits="objectboundingbox" style="mask-type:luminance"> <rect x=".1" y=".1" width=".8" height=".8" fill="red" fill-opacity="0.7"/> </mask> </defs> </svg> css .redsquare { height: 100px; width: 100px; background-color: rgb(128, 128, 128); border: solid 1px black; mask: url("#m"); mask-type:luminance; } result specifications specification status comment css masking module level 1the definition of 'mask-type' in that specification.
position - CSS: Cascading Style Sheets
d full support 6.0stickychrome full support 56edge full support 16firefox full support 32 full support 32 no support 26 — 48disabled disabled from
version 26 until
version 48 (exclusive): this feature is behind the layout.css.sticky.enabled preference (needs to be set to true).
...plemented with the vendor prefix: -webkit-webview android full support 56chrome android full support 56firefox android full support 32 full support 32 no support 26 — 48disabled disabled from
version 26 until
version 48 (exclusive): this feature is behind the layout.css.sticky.enabled preference (needs to be set to true).
ruby-position - CSS: Cascading Style Sheets
t explorer 9 and later support an old draft values: inline (equivalent of having display: inline on the ruby), and above (synonym of the modern over).opera no support nosafari no support nonotes no support nonotes notes safari implements a non-standard, prefixed,
version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).webview android no support nochrome android no support nofirefox android full support ...
... 38opera android no support nosafari ios no support nonotes no support nonotes notes safari implements a non-standard, prefixed,
version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).samsung internet android no support nointer-character experimentalchrome no support noedge no support nofirefox no support noie no support ...
<shape> - CSS: Cascading Style Sheets
1.0rect() deprecatedchrome full support 1edge full support 12firefox full support 1ie full support 5.5notes full support 5.5notes notes for internet explorer
versions 5.5 through 7, the rect() function uses spaces (instead of commas) to separate parameters.
... for internet explorer 8 and later
versions, only the standard comma-separated syntax is supported.opera full support 9.5safari full support 1.3webview android full support 37chrome android full support 18firefox android full support 4opera android full support 14safari ios full support 1samsung internet android full support 1.0legend full support full supportdeprecated.
text-transform - CSS: Cascading Style Sheets
the capitalize line in the browser compatibility table contains the
version the different engines started to support this now precisely-defined behavior.
...the full-width
version is used to mix them smoothly with asian ideographic characters.
Getting Started - Developer guides
httprequest = new xmlhttprequest(); } else if (window.activexobject) { // ie 6 and older httprequest = new activexobject("microsoft.xmlhttp"); } note: for illustration purposes, the above is a somewhat simplified
version of the code to be used for creating an xmlhttp instance.
...the document (test.xml) contains the following: <?xml
version="1.0" ?> <root> i'm a test.
Cross-browser audio basics - Developer guides
note: a very early spec specified that the browser should return no instead of an empty string, but thankfully the number of people using older browsers that implement this
version of the spec are few and far between.
... desktop desktop browser
version chrome 4+ firefox 3.5+ internet explorer 9+ opera 10.5+ safari 4+ mobile mobile browser
version chrome (android) 32+ firefox (android) 26+ ie mobile 10+ opera mobile 11+ safari (ios) 4+ android browser 2.3+ blackberry 7+ ...
Mutation events - Developer guides
cross-browser support these events are not implemented consistently across different browsers, for example: ie prior to
version 9 didn't support the mutation events at all and does not implement some of them correctly in
version 9 (for example, domnodeinserted) webkit doesn't support domattrmodified (see webkit bug 8191 and the workaround) "mutation name events", i.e.
... domelementnamechanged and domattributenamechanged are not supported in firefox (as of
version 11), and probably in other browsers as well.
Using HTML sections and outlines - Developer guides
they are intended to enhance the limited semantics of earlier
versions of html, which included only the <div> tag as a generic mechanism for grouping related content.
... next up, older ie
versions do not allow styling of unsupported elements, unless you create an instance of them in the dom.
Index - Developer guides
d <video> elements allows us to change the speed, or rate, at which a piece of web audio or video is playing 15 writing web audio api code that works in every browser api you probably have already read the announcement on the web audio api coming to firefox, and are totally excited and ready to make your until-now-webkit-only sites work with firefox, which uses the unprefixed
version of the spec.
... 43 writing forward-compatible websites css, compatibility, dom, html, javascript, web development this page explains how to write websites that do not break when new browser
versions are released.
A hybrid approach - Developer guides
examples for mozilla's web o’ wonder demo site, we tried out a basic
version of the hybrid approach, with positive results.
...in fact, one potential path for the main mozilla site is roughly outlined in the “the good” section above: using user-agent detection, route visitors to a landing page for the firefox
version for their device.
Mobile Web Development - Developer guides
if you do need to use these features, check whether other browsers implement their own
versions of these features, and target them too.
... for example, if you set a gradient as a background for some text using a vendor-prefixed property like -webkit-linear-gradient, it's best to include the other vendor-prefixed
versions of the linear-gradient() property.
The Web Open Font Format (WOFF) - Developer guides
it uses a compressed
version of the same table-based sfnt structure used by truetype, opentype, and open font format, but adds metadata and private-use data structures, including predefined fields allowing foundries and vendors to provide license information if desired.
... there are two
versions of woff; woff and woff2, they mostly differ in regard to the compression algorithm used.
<input type="checkbox"> - HTML: Hypertext Markup Language
for example, in the following demo we include multiple checkboxes to allow the user to select their interests (see the full
version in the examples section).
... examples the following example is an extended
version of the "multiple checkboxes" example we saw above — it has more standard options, plus an "other" checkbox that when checked causes a text field to appear to enter a value for the "other" option.
<input type="file"> - HTML: Hypertext Markup Language
note: you can set as well as get the value of htmlinputelement.files in all modern browsers; this was most recently added to firefox, in
version 57 (see bug 1384030).
...the custom returnfilesize() function returns a nicely-formatted
version of the size in bytes/kb/mb (by default the browser reports the size in absolute bytes).
<input type="radio"> - HTML: Hypertext Markup Language
selecting a radio button by default to make a radio button selected by default, you simply include checked attribute, as shown in this revised
version of the previous example: <form> <p>please select your preferred contact method:</p> <div> <input type="radio" id="contactchoice1" name="contact" value="email" checked> <label for="contactchoice1">email</label> <input type="radio" id="contactchoice2" name="contact" value="phone"> <label for="contactchoice2">phone</label> <input type="radio" id="contactchoice3" ...
... styling radio inputs the following example shows a slightly more thorough
version of the example we've seen throughout the article, with some additional styling, and with better semantics established through use of specialized elements.
Link types - HTML: Hypertext Markup Language
<a>, <area> <link>, <form> canonical from wikipedia, the free encyclopedia: canonical_link_element a canonical link element is an html element that helps webmasters prevent duplicate content issues by specifying the "canonical" or "preferred"
version of a web page as part of search engine optimization.
... while once part of the html specification, this has been removed from the spec and is only implemented by
versions of firefox prior to firefox 63.
Preloading content with rel="preload" - HTML: Hypertext Markup Language
you can see an example of this in our video example (see the full source code, and also the live
version): <head> <meta charset="utf-8"> <title>video preload example</title> <link rel="preload" href="sintel-short.mp4" as="video" type="video/mp4"> <link rel="preload" href="sintel-short.webm" as="video" type="video/webm"> </head> <body> <video controls> <source src="sintel-short.mp4" type="video/mp4"> <source src="sintel-short.webm" type="video/webm"> <p>your browser doesn't su...
...browsers that don't support mp4 can still load the webm
version, but don't get the advantages of preloading.
Data URLs - HTTP
data:text/plain;base64,sgvsbg8sifdvcmxkiq== base64-encoded
version of the above data:text/html,%3ch1%3ehello%2c%20world!%3c%2fh1%3e an html document with <h1>hello, world!</h1> data:text/html,<script>alert('hi');</script> an html document that executes a javascript alert.
...to mitigate such issues, top-level navigation to data:// urls has been blocked in firefox 59+ (release
version, nightly/beta from 58), and we hope to see other browsers follow suit soon.
Basics of HTTP - HTTP
connection management in http/1.x http/1.1 was the first
version of http to support persistent connection and pipelining.
...this article explains how http frames allow multiplexing and solve the 'head-of-line' blocking problem of former http
versions.
Content Security Policy (CSP) - HTTP
csp is designed to be fully backward compatible (except csp
version 2 where there are some explicitly-mentioned inconsistencies in backward compatibility; more details here section 1.1).
...(sometimes you may see mentions of the x-content-security-policy header, but that's an older
version and you don't need to specify it anymore.) alternatively, the <meta> element can be used to configure a policy, for example: <meta http-equiv="content-security-policy" content="default-src 'self'; img-src https://*; child-src 'none';"> threats mitigating cross site scripting a primary goal of csp is to mitigate and report xss attacks.
Content negotiation - HTTP
a product token is a name followed by a '/' and a
version number, like firefox/4.0.1.
... the vary header was added in the
version 1.1 of http and is necessary in order to allow caches to work appropriately.
ETag - HTTP
the etag http response header is an identifier for a specific
version of a resource.
...if a user visits a given url again (that has an etag set), and it is stale (too old to be considered usable), the client will send the value of its etag along in an if-none-match header field: if-none-match: "33a64df551425fcc55e4d42a148795d9f25f89d4" the server compares the client's etag (sent with if-none-match) with the etag for its current
version of the resource, and if both values match (that is, the resource has not changed), the server sends back a 304 not modified status, without a body, which tells the client that the cached
version of the response is still good to use (fresh).
Index - HTTP
58 etag http, reference, response, header the etag http response header is an identifier for a specific
version of a resource.
... 110 user-agent http, reference, header the user-agent request header contains a characteristic string that allows the network protocol peers to identify the application type, operating system, software vendor or software
version of the requesting software user agent.
Server - HTTP
how much detail to include is an interesting balance to strike; exposing the os
version is probably a bad idea, as mentioned in the earlier warning about overly-detailed values.
... however, exposed apache
versions helped browsers work around a bug those
versions had with content-encoding combined with range.
Strict-Transport-Security - HTTP
description if a website accepts a connection through http and redirects to https, visitors may initially communicate with the non-encrypted
version of the site before being redirected, if, for example, the visitor types http://www.foo.com/ or even just foo.com.
...the redirect could be exploited to direct visitors to a malicious site instead of the secure
version of the original site.
Vary - HTTP
for example, if you are serving different content to mobile users, it can help you to avoid that a cache may mistakenly serve a desktop
version of your site to your mobile users.
... it can help google and other search engines to discover the mobile
version of a page, and might also tell them that no cloaking is intended.
Via - HTTP
header type general header forbidden header name yes syntax via: [ <protocol-name> "/" ] <protocol-
version> <host> [ ":" <port> ] or via: [ <protocol-name> "/" ] <protocol-
version> <pseudonym> directives <protocol-name> optional.
... <protocol-
version> the
version of the protocol used, such as "1.1".
X-Forwarded-For - HTTP
a standardized
version of this header is the http forwarded header.
...the standardized
version of this header is forwarded.
X-Forwarded-Host - HTTP
a standardized
version of this header is the http forwarded header.
...the standardized
version of this header is forwarded.
X-Forwarded-Proto - HTTP
a standardized
version of this header is the http forwarded header.
...the standardized
version of this header is forwarded.
A typical HTTP session - HTTP
an absolute url without the protocol or domain name the http protocol
version subsequent lines represent an http header, giving the server information about what type of data is appropriate (e.g., what language, what mime types), or other data altering its behavior (e.g., not sending an answer if it is already cached).
...similar to a client request, a server response is formed of text directives, separated by crlf, though divided into three blocks: the first line, the status line, consists of an acknowledgment of the http
version used, followed by a status request (and its brief meaning in human-readable text).
507 Insufficient Storage - HTTP
the hypertext transfer protocol (http) 507 insufficient storage response status code may be given in the context of the web distributed authoring and
versioning (webdav) protocol (see rfc 4918).
... status 507 insufficient storage specifications specification title rfc 4918, section 11.5: 507 insufficient storage web distributed authoring and
versioning ...
508 Loop Detected - HTTP
the hypertext transfer protocol (http) 508 loop detected response status code may be given in the context of the web distributed authoring and
versioning (webdav) protocol.
... status 508 loop detected specifications specification title rfc 5842, section 7.2: 508 loop detected web distributed authoring and
versioning ...
A re-introduction to JavaScript (JS tutorial) - JavaScript
this takes the base for the con
version as an optional second argument, which you should always provide: parseint('123', 10); // 123 parseint('010', 10); // 10 in older browsers, strings beginning with a "0" are assumed to be in octal (radix 8), but this hasn't been the case since 2013 or so.
... you can perform this con
version explicitly using the boolean() function: boolean(''); // false boolean(234); // true however, this is rarely necessary, as javascript will silently perform this con
version when it expects a boolean, such as in an if statement (see below).
Expressions and operators - JavaScript
the sole exceptions to type con
version within comparisons involve the === and !== operators, which perform strict equality and inequality comparisons.
... + - bitwise shift << >> >>> relational < <= > >= in instanceof equality == != === !== bitwise-and & bitwise-xor ^ bitwise-or | logical-and && logical-or || conditional ?: assignment = += -= *= /= %= <<= >>= >>>= &= ^= |= &&= ||= ??= comma , a more detailed
version of this table, complete with links to additional details about each operator, may be found in javascript reference.
Classes - JavaScript
strict mode the body of a class is executed in strict mode, i.e., code written here is subject to stricter syntax for increased performance, some otherwise silent errors will be thrown, and certain keywords are reserved for future
versions of ecmascript.
...by defining things which are not visible outside of the class, you ensure that your classes' users can't depend on internals, which may change
version to
version.
Date.prototype.toUTCString() - JavaScript
based on rfc7231 and modified according to ecma-262 toutcstring, it can have negative values in the 2021
version the source for this interactive example is stored in a github repository.
...the most common return value was an rfc-1123 formatted date stamp, which is a slightly updated
version of rfc-822 date stamps.
Date - JavaScript
date format and time zone con
versions there are a number of methods available to obtain a date in various formats, as well as to perform time zone con
versions.
... in addition to methods to read and alter individual components of the local date and time (such as getday() and sethours()), there are also
versions of the same methods that read and manipulate the date and time using utc (such as getutcday() and setutchours()).
Error - JavaScript
es6 custom error class
versions of babel prior to 7 can handle customerror class methods, but only when they are declared with object.defineproperty().
... otherwise, old
versions of babel and other transpilers will not correctly handle the following code without additional configuration.
FinalizationRegistry - JavaScript
any behavior you observe in one engine may be different in another engine, in another
version of the same engine, or even in a slightly different situation with the same
version of the same engine.
... different javascript engines may do these things differently, or the same engine may change its algorithms across
versions.
Function.name - JavaScript
source code such as: function foo() {}; let foo = new foo(); if (foo.constructor.name === 'foo') { console.log("'foo' is an instance of 'foo'"); } else { console.log('oops!'); } may be compressed to: function a() {}; let b = new a(); if (b.constructor.name === 'foo') { console.log("'foo' is an instance of 'foo'"); } else { console.log('oops!'); } in the uncompressed
version, the program runs into the truthy-branch and logs "'foo' is an instance of 'foo'".
... whereas, in the compressed
version it behaves differently, and runs into the else-branch.
Object.create() - JavaScript
however, adding the generic method directly, does: ocn = object.create( null ); // create "null" object (same as before) ocn.tostring = tostring; // since new object lacks method then assign it directly from generic
version > ocn.tostring() // shows "[object object]" > "ocn is: " + ocn // shows "ocn is: [object object]" ob={}; ob.pn=ocn; ob.po=oco; // create a compound object (same as before) > showproperties(ob) // display top-level properties - po: [object object] - pn: [object object] however, setting the generic prototype as the new object's prototype works even better: ocn = object.create( null ); ...
... note that while the setting of null as [[prototype]] is supported in the real es5 object.create, this polyfill cannot support it due to a limitation inherent in
versions of ecmascript lower than 5.
String.prototype.charCodeAt() - JavaScript
backward compatibility: in historic
versions (like javascript 1.2) the charcodeat() method returns a number indicating the iso-latin-1 codeset value of the character at the given index.
... 'abc'.charcodeat(0) // returns 65 fixing charcodeat() to handle non-basic-multilingual-plane characters if their presence earlier in the string is unknown this
version might be used in for loops and the like when it is unknown whether non-bmp characters exist before the specified index position.
String.prototype.normalize() - JavaScript
and since the number of code points in each
version is different, they even have different lengths.
...that's because "nfd" gives you the decomposed
version of the canonical form, in which single code points are split into multiple combining ones.
String.prototype.replace() - JavaScript
only available in browser
versions supporting named capturing groups.
... groups in browser
versions supporting named capturing groups, will be an object whose keys are the used group names, and whose values are the matched portions (undefined if not matched).
String.prototype.toLocaleUpperCase() - JavaScript
also notice that con
version is not necessarily a 1:1 character mapping, as some characters might result in two (or even more) characters when transformed to upper-case.
...this also implies that the con
version is not stable, so i.e.
Symbol - JavaScript
typeof symbol() === 'symbol' typeof symbol('foo') === 'symbol' typeof symbol.iterator === 'symbol' symbol type con
versions some things to note when working with type con
version of symbols.
... the "safer" string(sym) con
version works like a call to symbol.prototype.tostring() with symbols, but note that new string(sym) will throw.
WeakRef - JavaScript
any behavior you observe in one engine may be different in another engine, in another
version of the same engine, or even in a slightly different situation with the same
version of the same engine.
... different javascript engines may do these things differently, or the same engine may change its algorithms across
versions.
WebAssembly.Module.customSections() - JavaScript
note that the webassembly text format currently doesn't have a syntax specified for adding new custom sections; you can however add a name section to your wasm during con
version from text format over to .wasm.
... the wast2wasm command available as part of the wabt tool has a --debug-names option — specify this during con
version to get a .wasm with a names custom section, for example: wast2wasm simple-name-section.was -o simple-name-section.wasm --debug-names examples using customsections the following example (see the custom-section.html source and live example) compiles the loaded simple-name-section.wasm byte code.
Equality (==) - JavaScript
the most notable difference between this operator and the strict equality (===) operator is that the strict equality operator does not attempt type con
version.
... examples comparison with no type con
version 1 == 1; // true "hello" == "hello"; // true comparison with type con
version "1" == 1; // true 1 == "1"; // true 0 == false; // true 0 == null; // false 0 == undefined; // false 0 == !!null; // true, look at logical not operator 0 == !!undefined; // true, look at logical not operator null == undefined; // true const number1 = new number(3); const number2 = new number(3); number1 == 3; // true number1 == number2; // false comparison of objects const object1 = {"key": "value"} const object2 = {"key": "value"}; object1 == object2 // false object2 == object2 //...
Handling media support issues in web content - Web media technologies
a similar concept can be applied to still images; if an image you wish to present is very large and may take time to download (especially for slower devices or connections), you can offer a lower-resolution or alternate
version that will be displayed until the full-quality
version is available to be displayed.
... note: progressive (or interlaced) images are inherently slightly larger than the non-progressive
versions of the same images.
Performance budgets - Web Performance
con
version rate).
...when defining metrics, you should focus on user experience, which will dictate not only the bounce or con
version rate but how likely is that user to return.
Making PWAs work offline with Service workers - Progressive web apps (PWAs)
updates there is still one point to cover: how do you upgrade a service worker when a new
version of the app containing new assets is available?
... the
version number in the cache name is key to this: var cachename = 'js13kpwa-v1'; when this updates to v2, we can then add all of our files (including our new files) to a new cache: contenttocache.push('/pwa-examples/js13kpwa/icons/icon-32.png'); // ...
Linking - SVG: Scalable Vector Graphics
when svg documents are embedded within a parent html document using the tag: page1.html: <html> <body> <p>this is a svg button:</p> <object width="100" height="50" type="image/svg+xml" data="button.svg"/> </body> </html> button.svg: <?xml
version="1.1" encoding="utf-8"?> <svg xmlns="http://www.w3.org/2000/svg"> <a xlink:href="page2.html" target="_top"> <g> <!-- button graphical elements here --> </g> </a> </svg> the specification says that the browser should navigate to the html document page2.html when the button graphics are clicked.
... to get around this, requires a little ugly javascript hacking: button.svg: <?xml
version="1.1" encoding="utf-8"?> <svg xmlns="http://www.w3.org/2000/svg"> <g onclick="top.document.href='page2.html'" cursor="pointer"> <!-- button graphical elements here --> </g> </svg> example for an example of this solution at work see www.codedread.com.
Example - SVG: Scalable Vector Graphics
view the example <?xml
version='1.0'?> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg"> <head> <title>a swarm of motes</title> <style type='text/css'> <![cdata[ label, input { width: 150px; display: block; float: left; margin-bottom: 10px; } label { text-align: right; width: 75px; padding-right: 20px; } br { clear: left; } ]]> </style> </head> ...
... </p> <p> this is done completely in w3c standards–xhtml, svg and javascript–no flash or any vendor specific extensions. currently, this will work in mozilla firefox
version 1.5 and above.
Scripting - SVG: Scalable Vector Graphics
according to the svg wiki the "parent" js variable is broken in adobe's svg
version 6 preview plugin.
...since it is a beta
version of their plugin, we can probably safely ignore this.
How to turn off form autocompletion - Web security
this is the behavior in firefox (since
version 38), google chrome (since 34), and internet explorer (since
version 11).
...for example, firefox
version 67 (see bug 1119063) stopped autofilling in this case; however, firefox 70 (see bug 1565407) can suggest securely-generated passwords, but does not autofill a saved password.
translate - XPath
notes xpath notes that the translate function is not a sufficient solution for case con
version in all languages.
... a future
version of xpath may provide additional functions for case con
version.
<xsl:output> - XSLT: Extensible Stylesheet Language Transformations
syntax <xsl:output method="xml" | "html" | "text"
version=string encoding=string omit-xml-declaration="yes" | "no" standalone="yes" | "no" doctype-public=string doctype-system=string cdata-section-elements=list-of-names indent="yes" | "no" media-type=string /> required attributes none.
...
version specifies the value of the
version attribute of the xml or html declaration in the output document.
<xsl:stylesheet> - XSLT: Extensible Stylesheet Language Transformations
syntax <xsl:stylesheet
version="number" xmlns:xsl="http://www.w3.org/1999/xsl/transform" id="name" extension-element-prefixes="list-of-names" exclude-result-prefixes="list-of-names"> entire stylesheet </xsl:stylesheet> required attributes
version specifies the
version of xslt required by this stylesheet.
... xslt 2.0 added the attributes xpath-default-namespace, default-validation, default-collation, and input-type-annotations and made all attributes except
version optional.
Index - XSLT: Extensible Stylesheet Language Transformations
it consists of any non-instruction element that should be copied as-is to the result document, for example, an <hr> element in an html con
version stylesheet.
... 31 <xsl:fallback> element, reference, xslt, fallback the <xsl:fallback> element specifies what template to use if a given extension (or, eventually, newer
version) element is not supported.
PI Parameters - XSLT: Extensible Stylesheet Language Transformations
to solve this two new pis are implemented in firefox 2 (see supported
versions below for details), <?xslt-param?> and <?xslt-param-namespace?>.
... examples set the parameter 'books' to a nodeset containing all <book> elements in the 'http://www.example.org/mynamespace' namespace: <?xslt-param-namespace prefix="my" namespace="http://www.example.org/mynamespace"?> <?xslt-param name="books" select="//my:book"?> supported
versions supported as of firefox 2.0.0.1.
An Overview - XSLT: Extensible Stylesheet Language Transformations
this element will include at least one namespace declaration and the mandatory
version attribute.
... <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/xsl/transform"
version="1.0"> the xmlns pseudo-attribute maps the shorthand name xsl onto the full namespace for use throughout the document that follows.
Basic Example - XSLT: Extensible Stylesheet Language Transformations
figure 4 : xml file <?xml
version="1.0"?> <myns:article xmlns:myns="http://devedge.netscape.com/2002/de"> <myns:title>my article</myns:title> <myns:authors> <myns:author company="foopy corp.">mr.
... </myns:body> </myns:article> figure 5 : xslt stylesheet <?xml
version="1.0"?> <xsl:stylesheet
version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform" xmlns:myns="http://devedge.netscape.com/2002/de"> <xsl:output method="html" /> <xsl:template match="/"> <html> <head> <title> <xsl:value-of select="/myns:article/myns:title"/> </title> <style type="text/css"> .mybox {margin:10px 155px 0 50px; border: 1px dotted #639ace; padding:0 5px 0 5px;} </style> </head> <body> <p class="mybox"> <span class="ti...
Using the WebAssembly JavaScript API - WebAssembly
future
versions of webassembly may allow 0–n memory instances per module instance (see multiple tables and memories).
...future
versions of webassembly may allow 0–n table instances per module instance.
Communicating With Other Scripts - Archive of obsolete content
e()">send message</button> </body> </html> finally, the content script "listen.js" uses window.addeventlistener() to listen for messages from the page script: // listen.js window.addeventlistener('message', function(event) { console.log(event.data); // message from page script console.log(event.origin); }, false); using postmessage() before firefox 31 if your add-on is running in a
version of firefox before firefox 31, then your content script can't access the postmessage() or addeventlistener() apis using window, but must access them using document.defaultview instead.
Content Scripts - Archive of obsolete content
this insulation means that, for example, if a web page loads the jquery library, then the content script won't be able to see the jquery object added by the library - but the content script can add its own jquery object, and it won't clash with the page script's
version.
Modules - Archive of obsolete content
using this new
version of loadscript, we can now rewrite our earlier example as follows: // index.js: let a = loadscript("www.foo.com/a.js"); let b = loadscript("www.foo.com/b.js"); a.foo // => 3 b.foo; // => 5 // a.js: foo = 3; // b.js: foo = 5; importing names in addition to exporting properties from the script being loaded to the loading script, we can also import properties from the loading script to the scri...
Private Properties - Archive of obsolete content
in a strong reference to its values to understand how weakmaps are used in practice, the following rewrites the thumbnail cache using a weakmap: let thumbnails = new weakmap(); function getthumbnail(image) { let thumbnail = thumbnails.get(image); if (!thumbnail) { thumbnail = createthumbnail(image); thumbnails.set(image, thumbnail); } return thumbnail; } this
version suffers from none of the problems we mentioned earlier.
indexed-db - Archive of obsolete content
var { indexeddb, idbkeyrange } = require('sdk/indexed-db'); var database = {}; database.onerror = function(e) { console.error(e.value) } function open(
version) { var request = indexeddb.open("stuff",
version); request.onupgradeneeded = function(e) { var db = e.target.result; e.target.transaction.onerror = database.onerror; if(db.objectstorenames.contains("items")) { db.deleteobjectstore("items"); } var store = db.createobjectstore("items", {keypath: "time"}); }; request.onsuccess = function(e) { database.
core/promise - Archive of obsolete content
module exports promised function to do exactly that: const { promised } = require('sdk/core/promise'); function sum(x, y) { return x + y }; var asyncsum = promised(sum); var c = sum(a, b); var casync = asyncsum(aasync(), basync()); promised takes normal function and composes new promise-aware
version of it.
jpm-mobile - Archive of obsolete content
jpm usage is: jpm-mobile [command] [options] jpm supports the following global options: -h, --help - show a help message and exit -v, --
version - print the jpm
version number installation jpm-mobile is distributed using the node package manager npm, so to get jpm-mobile you need to have npm installed, if you haven't already.
Creating annotations - Archive of obsolete content
2.min.js'), data.url('selector.js')], onattach: function(worker) { worker.postmessage(annotatorison); selectors.push(worker); worker.port.on('show', function(data) { console.log(data); }); worker.on('detach', function () { detachworker(this, selectors); }); } }); make sure the name you use to load jquery matches the name of the jquery
version you downloaded.
Storing annotations - Archive of obsolete content
url('jquery-1.4.2.min.js'), data.url('list/annotation-list.js')], contentscriptwhen: 'ready', onshow: function() { this.postmessage(simplestorage.storage.annotations); }, onmessage: function(message) { require('sdk/tabs').open(message); } }); since this panel's content script uses jquery we will pass that in too: again, make sure the name of it matches the
version of jquery you downloaded.
Modifying Web Pages Based on URL - Archive of obsolete content
var pagemod = require("sdk/page-mod").pagemod({ include: "*", contentstylefile: require("sdk/self").data.url("my-style.css") }); or, from firefox 34, you can use the simpler
version: var pagemod = require("sdk/page-mod").pagemod({ include: "*", contentstylefile: "./my-style.css" }); learning more to learn more about page-mod, see its api reference page.
Customizing the download progress bar - Archive of obsolete content
in your jar.mn file, add the following (replacing "myextension" with the name of your extension's chrome package): % overlay chrome://mozapps/content/downloads/downloads.xul chrome://myextension/content/downloads-overlay.xul in downloads-overlay.xul, reference the new stylesheet: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://myextension/skin/myextension.css" type="text/css"?> <overlay id="mydownloadoverlay" xmlns="http://www.mozilla.org/keymaster/gat...re.is.only.xul"> </overlay> in jar.mn, make sure that there is an asterisk in front of the entry for myextension.css so that it will be preprocessed.
JavaScript Debugger Service - Archive of obsolete content
in firefox
versions prior to gecko 33 (firefox 33 / thunderbird 33 / seamonkey 2.30), the javascript debugger service (or simply jsd) used to be an xpcom component that allows the tracking of javascript while it was being executed in the browser.
Rosetta - Archive of obsolete content
|*| |*| november 12, 2014 |*| |*| https://developer.mozilla.org/add-ons/code_snippets/rosetta |*| https://developer.mozilla.org/user:fusionchess |*| |*| this framework is released under the gnu public license,
version 3 or later.
Scrollbar - Archive of obsolete content
example xul window: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="samplewindow" width="320" height="240" xmlns="http://www.mozilla.org/keymaster/gat...re.is.only.xul"> <hbox flex="1"> <browser type="content" src="http://mozilla.org" flex="1"/> <scrollbar orient="vertical"/> </hbox> </window> ...
XPath - Archive of obsolete content
ectnodes("/root/field/item"); for(var i=0;i<tobj.length; i++) { fields.push(tobj[i].text); } } else { var tobj = obj.evaluate("/root/field/item",obj.documentelement,null, xpathresult.any_type, null); var tmp = tobj.iteratenext(); while(tmp) { fields.push(tmp.textcontent); tmp = tobj.iteratenext(); } } alert(fields); } //here is the demo xml file for xpath <?xml
version="1.0"?> <root> <field> <item>art_id</item> <item>psection</item> <item>qkind</item> <item>qtitle</item> <item>question</item> <item>pic</item> <item>answer1</item> <item>answer2</item> <item>answer3</item> <item>answer4</item> </field> </root> //add by mooring 2008-11-15 16:16 china ...
Chapter 1: Introduction to Extensions - Archive of obsolete content
the add-ons manager handles the following tasks: safely installs and uninstalls add-ons makes sure add-ons are compatible with the
version of firefox you're using manages a whitelist of sites trusted for installing add-ons helps troubleshoot add-ons by disabling them and offering a safe mode confirms and runs updates provides access to add-ons' settings dialogs provides access to add-ons' support sites development environment amenities initially, there wasn't adequate documentation available, and extension developers were la...
Adding menus and submenus - Archive of obsolete content
ting(event);"> <menuitem type="radio" name="xulschoolhello-greeting-radio" label="&xulschoolhello.greet.short.label;" checked="true" /> <menuitem type="radio" name="xulschoolhello-greeting-radio" label="&xulschoolhello.greet.medium.label;" /> <menuitem type="radio" name="xulschoolhello-greeting-radio" label="&xulschoolhello.greet.long.label;" /> </menupopup> this is a modified
version of the 3 greeting menus.
Extensions support in SeaMonkey 2 - Archive of obsolete content
the code for that will look something like this: <em:targetapplication> <!-- seamonkey --> <description> <em:id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</em:id> <em:min
version>2.0</em:min
version> <em:max
version>2.*</em:max
version> </description> </em:targetapplication> the install.js is not supported any more and should be removed.
Promises - Archive of obsolete content
tadirectory((directory, error) => { if (error) reject(error); else accept(directory); }); }); }, }; }, getinstallforurl: function getinstallforurl(url, mimetype, hash, name, iconurl,
version, loadgroup) { return new promise(accept => this.addonmanager.getinstallforurl(url, accept, mimetype, hash, iconurl,
version, loadgroup)); }, getinstallforfile: function getinstallforfile(url, mimetype) { return new promise(accept => this.addonmanager.getinstallforfile(url, accept, mimetype)); }, ...
Search Extension Tutorial (Draft) - Archive of obsolete content
search.xml <?xml
version="1.0" encoding="utf-8"?> <searchplugin xmlns="http://www.mozilla.org/2006/browser/search/"> <shortname>example engine</shortname> <description>example search engine</description> <inputencoding>utf-8</inputencoding> <image width="16" height="16" type="image/png">data:image/png;base64, ...
Creating reusable content with CSS and XBL - Archive of obsolete content
copy and paste the content from here: <?xml
version="1.0"?> <!doctype bindings> <bindings xmlns="http://www.mozilla.org/xbl" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml"> <binding id="square"> <resources> <stylesheet src="bind6.css"/> </resources> <content> <html:div anonid="square"/> <xul:button anonid="button" type="button"> <c...
XML data - Archive of obsolete content
copy and paste the content from here, making sure that you scroll to get all of it: <?xml
version="1.0"?> <!-- xml demonstration --> <?xml-stylesheet type="text/css" href="style9.css"?> <!doctype planet> <planet> <ocean> <name>arctic</name> <area>13,000</area> <depth>1,200</depth> </ocean> <ocean> <name>atlantic</name> <area>87,000</area> <depth>3,900</depth> </ocean> <ocean> <name>pacific</name> <area>180,000</area> <depth>4,000</depth> </ocean> <ocean> <name>indian</name> <area>75,000...
XUL user interfaces - Archive of obsolete content
copy and paste the content from here, making sure that you scroll to get all of it: <?xml
version="1.0"?> <?xml-stylesheet type="text/css" href="style7.css"?> <!doctype window> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" title="css getting started - xul demonstration" onload="init();"> <script type="application/javascript" src="script7.js"/> <label class="head-1" value="xul demonstration"/> <vbox> <groupbox class="demo-group"> <caption label=...
CSS3 - Archive of obsolete content
filter effects module level 1 working draft css generated content for paged media module working draft adds the ability to tailor printed
version of a document by allowing to control header, footer but also references tables like indexes or tables of content.
Creating a dynamic status bar extension - Archive of obsolete content
write the xul file we need a slightly more complicated xul file this time, in order to add a reference to the javascript code that will do the real work: <?xml
version="1.0" encoding="utf-8"?> <!doctype overlay> <overlay id="stockwatcher-overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript" src="chrome://stockwatcher/content/stockwatcher.js"/> <!-- firefox --> <statusbar id="status-bar"> <statusbarpanel id="stockwatcher" label="loading..." tooltiptext="current value" onclick="s...
MozOrientation - Archive of obsolete content
in firefox
versions 3.6, 4, and 5 gecko utilized mozorientation which was also built to support orientation data but with different apis from the specified deviceorientationevent.
Makefile - .mk files - Archive of obsolete content
makefile description client.mk top level makefile which controls the overall build config/android-common.m config/autoconf.mk config/rules.mk targets (export, deps, libs, tools) and generic build rules config/static-checking-config.mk config/
version.mk makefile description config/myconfig.mk user defined build configuration values config/myrules.mk user defined makefile rules for building $(topsrcdir)/$(moz_build_app)/app-config.mk application specific build configuration ...
Protecting Mozilla's registry.dat file - Archive of obsolete content
in other windows
versions, internet explorer (which is hard to kick off completely) likes to install "personnalized settings" when the user logs in for the first time, and this seems to have the interesting "side-effect" of wiping any non-microsoft subfolders from %userprofile%\application data, including mozilla's .
Bonsai - Archive of obsolete content
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").
Structure of an installable bundle - Archive of obsolete content
basic structure of a bundle a bundle may include any of the following files: path from the root of the bundle description
version information /install.rdf extension/theme install manifest /application.ini application launch manifest /bootstrap.js the bootstrap script for extensions not requiring a restart (those with <em:bootstrap>true</em:bootstrap> in their install.rdf).
Making it into a static overlay - Archive of obsolete content
to make the file into a static overlay, we need to move all the code we added to navigator.xul into a new file tinderstatusoverlay.xul in the same directory: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://navigator/content/tinderstatus.css" type="text/css"?> <overlay id="tinderstatusoverlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript" src="chrome://navigator/content/tinderstatus.js" /> <statusbar id="status-bar"> <statusbarpanel class="statusbarpanel-iconic" ...
install.rdf - Archive of obsolete content
copy the following text and paste it into a text file, then save that file as "install.rdf": <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <em:id>author@oftheme.com</em:id> <em:
version>2.0b1</em:
version> <!-- seamonkey --> <em:targetapplication> <description> <em:id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</em:id> <em:min
version>2.0b1pre</em:min
version> <em:max
version>2.0b2pre</em:max
version> </description> </em:targetapplication> <!-- front end metadata --> <em:name>my_theme</em:name> <em:description>my first theme</em:description> <!-- front end integration hooks (used by them...
Drag and Drop - Archive of obsolete content
ondragstart an alias for ondraggesture; this is the html 5 spec name for the event and may be used in html or xul; however, for backward compatibility with older
versions of firefox, you may wish to continue using ondraggesture in xul.
Embedding Mozilla in a Java Application using JavaXPCOM - Archive of obsolete content
first, the java application must find a suitable xulrunner installation: mozilla mozilla = mozilla.getinstance(); gre
versionrange[] range = new gre
versionrange[1]; range[0] = new gre
versionrange("1.8.0", true, "1.9", false); // work with trunk nightly
version 1.9a1 ^^ try { file grepath = mozilla.getgrepathwithproperties(range, null); locationprovider locprovider = new locationprovider(grepath); mozilla.initembedding(grepath, grepath, locprovider); } catch (filenotfoundexception e) { // this excepti...
Documentation for BiDi Mozilla - Archive of obsolete content
interface (if applicable) implementation comments nsibidi intl\unicharutil\public\nsibidi.h intl\unicharutil\src\nsbidiimp.cpp implementation of the unicode bidi algorithm nsiubidiutils intl\unicharutil\public\nsiubidiutils.h intl\unicharutil\src\nsbidiutilsimp.cpp utilities for bidi processing, including: character classification symmetric swapping reordering shaping numeric translation con
version to/from presentation forms nsbidipresutils layout/base/nsbidipresutils.cpp utilities for the layout engine including: resolve frames by bidi level split framesreorder frames format bidi text support for deletion and insertion of frames by editor nsbiditextframe layout/generic/nsbidiframes.cpp subclass of nsframe with additional method setoffsets, to adjust mcontentoffset and mcontentlengt...
JavaScript Client API - Archive of obsolete content
please note that usage of the sync apis is governed by a terms of service: by accessing or using the firefox sync apis in connection with the development of your own client software to access the firefox sync services (a “third party client”), you acknowledge that you will need to install and use a local
version of the firefox sync server for multiple account testing and that any use of mozilla’s hosted firefox sync services is subject to mozilla’s firefox sync terms of service at https://services.mozilla.com/tos/.
JavaScript crypto - Archive of obsolete content
if (typeof(crypto.
version) != "undefined") { crmfobject = crypto.generatecrmfrequest( "cn=" + form.name.value, form.password.value, authenticator, keytransportcert, "setcrmfrequest();", 1024, null, "rsa-dual-use"); } return false; } function setcrmfrequest() { form.cert_request.value = crmfobject.request; form.submit(); } form.onsubmit = validate; </script> o...
Jetpack Snippets - Archive of obsolete content
<a href="javascript:console.log('hello!')">test</a> <script><![cdata[ //firebug lite bookmarklet code: var firebug=document.createelement('script'); firebug.setattribute('src','http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js'); document.body.appendchild(firebug); (function(){if(window.firebug.
version){firebug.init();}else{settimeout(arguments.callee);}})();void(firebug); ]]></script> </body></html>, width: 800, //wide enough to use firebug onselect: function(slide) { slide.slide(800, true); }}); calling into a slidebar from the global jetpack scope jetpack.slidebar.append({ onready: function (slide) { // call out to a global function, passing ...
Selection - Archive of obsolete content
this api currently lives in the future and must be imported for use: jetpack.future.import("selection"); getting and setting the selection the current
version of jetpack.selection includes these formats: .text and .html getting the selection the following is an example of getting the selection from the user.
Selection - Archive of obsolete content
this api currently lives in the future and must be imported for use: jetpack.future.import("selection"); getting and setting the selection the current
version of jetpack.selection includes these formats: .text and .html getting the selection the following is an example of getting the selection from the user.
Selection - Archive of obsolete content
this api currently lives in the future and must be imported for use: jetpack.future.import("selection"); getting and setting the selection the current
version of jetpack.selection includes these formats: .text and .html getting the selection the following is an example of getting the selection from the user.
Microsummary XML grammar reference - Archive of obsolete content
example the microsummary generator created in the creating a microsummary tutorial: <?xml
version="1.0" encoding="utf-8"?> <generator xmlns="http://www.mozilla.org/microsummaries/0.1" name="firefox download count"> <template> <transform xmlns="http://www.w3.org/1999/xsl/transform"
version="1.0"> <output method="text"/> <template match="/"> <value-of select="id('download-count')"/> <text> fx downloads</text> </template> </transform> </template> <...
LIR - Archive of obsolete content
105 cmovi integer conditional move int 106 cmovq quad 64 bit conditional move quad 107 cmovd double conditional move double con
versions 108 i2q quad 64 bit sign-extend int to quad 109 ui2uq quad 64 bit zero-extend unsigned int to unsigned quad 110 q2i integer 64 bit truncate quad to int (removes the high 32 bits) 111 i2d double convert int to double 112 ui2d double convert unsigned int to double 113 d2i integer convert double to int (no exceptions raised...
Plug-n-Hack Phase1 - Archive of obsolete content
an example manifest (for owasp zap) is: { "toolname":"owasp zap", "protocol
version":"0.2", "features":{ "proxy":{ "pac":"http://localhost:8080/proxy.pac", "cacert":"http://localhost:8080/other/core/other/rootcert/" }, "commands":{ "prefix":"zap", "manifest":"http://localhost:8080/other/mitm/other/service/" } } } the top level manifest includes optional links to a proxy pac and a root ca certificate.
Extensions - Archive of obsolete content
the code snippet will look something like this: <em:targetapplication> <!– prism –> <description> <em:id>prism@developer.mozilla.org</em:id> <em:min
version>0.8</em:min
version> <em:max
version>1.0.0.*</em:max
version> </description> </em:targetapplication> in addition to the install manifest changes, you may want to expose your extension into the prism ui.
File Object - Archive of obsolete content
overview the file object has methods for analyzing the file system and preparing it (as when new directories, program shortcuts,
version comparisons, or deletions are required) for newly installed software packages.
getComponentFolder - Archive of obsolete content
method of install object syntax object getcomponentfolder (string registryname); object getcomponentfolder ( string registryname, string subdirectory); parameters the getcomponentfolder method has these parameters: registryname the pathname in the client
version registry for the component whose installation directory is to be obtained.
getFolder - Archive of obsolete content
the value of foldername must be one of the following (info is based on mozilla 1.7 stable branch, might also work in other
versions): "chrome" "components" "current user" "defaults" "file:///" "os drive" "plugins" "preferences" "profile" "program" "temporary" "mac apple menu" "mac control panel" "mac desktop" "mac documents" "ma...
refreshPlugins - Archive of obsolete content
example // install dll into plugins // install xpt into components var xpisrc = "npmcult3dp.dll"; var xpisrc2 = "nsic3dpscriptablepeer.xpt"; initinstall( "cult3d plugin file", "@cycore.com/cult3d;
version=1.0.0", "1.0.0"); setpackagefolder(getfolder("plugins")); addfile(xpisrc); addfile("",xpisrc2,getfolder("components"),""); var err = getlasterror(); if (err == success) { err = performinstall(); if (err == success) refreshplugins(); } else cancelinstall(err); ...
Properties - Archive of obsolete content
note that due to branching (different
versions of gecko with different feature sets might be built on the same day), using this property to "detect" the application
version may produce false results.
Install Object - Archive of obsolete content
the following two lines, for example, are equivalent: f = getfolder("program"); f = install.getfolder("program"); an installation script is composed of calls to the install object, and generally takes the following form: initialize the installation call initinstall with the name of the installation and the necessary registry and
version information.
enumKeys - Archive of obsolete content
var winreg = getwinregistry(); winreg.setrootkey(winreg.hkey_local_machine); var index = 0; var basekey = "software\\mozilla"; while ( (mozilla
version = winreg.enumkeys(basekey,index)) != null ) { logcomment("mozilla
version = " + mozilla
version); subkey = basekey + "\\" + mozilla
version + "\\extensions"; pluginsdir = winreg.getvaluestring ( subkey, "plugins" ); if ( pluginsdir ) logcomment("pluginsdir = " + pluginsdir); else logcomment("no plugins dir for " + basekey + "\\" + mozilla
version); index++; } ...
XPInstall API reference - Archive of obsolete content
cute gestalt getcomponentfolder getfolder getlasterror getwinprofile getwinregistry initinstall loadresources logcomment patch performinstall refreshplugins registerchrome reseterror setpackagefolder installtrigger no properties methods compare
version enabled get
version install installchrome startsoftwareupdate install
version properties methods compareto init tostring file no properties methods copy dircreate dirgetparent dirremove dirrename diskspaceavailable execute ...
XPInstall - Archive of obsolete content
<?xml
version="1.0" encoding="utf-8"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <!-- properties --> </description> </rdf> cross-platform install (xpinstall) is a technology used by mozilla application suite, mozilla firefox, mozilla thunderbird and other xul-based applications for installing extens...
id - Archive of obsolete content
example <button id="foo" label="click me" oncommand="dosomething()"/> <script> function dosomething(){ var mybutton = document.getelementbyid('foo'); mybutton.setattribute('label','the button was pressed'); } </script> a more abstract
version of the above would be a <button id="foo" label="click me" oncommand="setwidgetlabel(this, 'i was pressed')"/> <script> function setwidgetlabel(idname, newcaption){ document.getelementbyid( idname.id ).setattribute('label',newcaption) } </script> not specifying the id attribute for a window or a prefwindow fills the console with the following warning message: warning: empty string passed to ...
onchange - Archive of obsolete content
window, document, or any of the functions/objects/variables bound to the window object event object example <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="text/javascript"> function myfunction(e){ /* do something cool here or just say the below */ alert(e.target.nodename); } </script> ...
Accessing Files - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released
version of the platform (pending some fixes).
Working With Directories - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released
version of the platform (pending some fixes).
Getting File Information - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released
version of the platform (pending some fixes).
Reading from Files - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released
version of the platform (pending some fixes).
Uploading and Downloading Files - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released
version of the platform (pending some fixes).
Writing to Files - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released
version of the platform (pending some fixes).
IO - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released
version of the platform (pending some fixes).
Moving, Copying and Deleting Files - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released
version of the platform (pending some fixes).
TOC - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released
version of the platform (pending some fixes).
How to implement a custom XUL query processor component - Archive of obsolete content
here is an example of what our xul might look like when using a custom query processor: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <grid> <columns> <column flex="1"/> <column flex="3"/> <column flex="2"/> <column flex="1"/> </columns> <rows datasources="dummy" ref="." querytype="simpledata"> ...
loadURI - Archive of obsolete content
(this one has no post data parameter, see loaduriwithflags for a
version that does) loaduri( uri, referrer, charset ) return type: no return value load a url into the document, with the given referrer and character set.
Node - Archive of obsolete content
short processing_instruction_node 7 short comment_node 8 short document_node 9 short document_type_node 10 short document_fragment_node 11 short notation_node 12 methods node appendchild ( node newchild ) node clonenode ( boolean deep ) boolean hasattributes ( ) boolean haschildnodes ( ) node insertbefore ( node newchild , node refchild ) boolean issupported ( string feature , string
version ) void normalize ( ) node removechild ( node oldchild ) node replacechild ( node newchild , node oldchild ) ...
MenuItems - Archive of obsolete content
<menuitem label="show toolbar" accesskey="t" type="checkbox" autocheck="false" oncommand="changetoolbarstate();"/> this
version of the changetoolbarstate function changes the checked attribute itself.
builderView - Archive of obsolete content
in newer
versions of mozilla, the builderview property is actually a synonym for the view property, since the two interfaces are flattened together into a single interface in javascript.
contentView - Archive of obsolete content
in newer
versions of mozilla, the contentview property is actually a synonym for the view property, since the two interfaces are flattened together into a single interface in javascript.
Sorting and filtering a custom tree view - Archive of obsolete content
sort.xul <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <!doctype window> <window title="sorting a custom tree view example" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload="init()"> <script type="application/javascript" src="sort.js"/> <hbox align="center" id="search-box"> <label accesskey="f" control="filter">filter</label> <textbox id=...
Additional Navigation - Archive of obsolete content
<?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:r="http://www.xulplanet.com/rdf/"> <rdf:seq rdf:about="http://www.xulplanet.com/rdf/myphotos"> <rdf:li rdf:resource="http://www.xulplanet.com/ndeakin/images/t/palace.jpg"/> <rdf:li rdf:resource="http://www.xulplanet.com/ndeakin/images/t/canal.jpg"...
Result Generation - Archive of obsolete content
<?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rel="http://www.xulplanet.com/rdf/"> <rdf:description rdf:about="http://www.xulplanet.com/rdf/a"> <rel:relateditem rdf:resource="http://www.xulplanet.com/rdf/b"/> <rel:relateditem rdf:resource="http://www.xulplanet.com/rdf/c"/> <rel:relateditem rdf:resource="http://www.xulplanet.com/rdf/d"/> </rdf:de...
Simple Example - Archive of obsolete content
<?xml
version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/"> <rdf:seq rdf:about="http://www.xulplanet.com/rdf/myphotos"> <rdf:li rdf:resource="http://www.xulplanet.com/ndeakin/images/t/palace.jpg"/> <rdf:li rdf:resource="http://www.xulplanet.com/ndeakin/images/t/canal.jpg"/> <rdf:li rdf:resource="http://www.xulplanet.com/ndeakin/images/t/obelisk.jpg"/> </rdf:seq> <rdf:description rdf:about="http://www.xulplanet.com/ndeakin/images/t/palace.jpg" dc:title="palace from above"/> <r...
Simple Query Syntax - Archive of obsolete content
function applyfilter(country) { var rule = document.getelementbyid("filterrule"); if (country){ rule.setattributens("http://www.xulplanet.com/rdf/", "country", country); } else { rule.removeattributens("http://www.xulplanet.com/rdf/", "country"); } document.getelementbyid("photoslist").builder.rebuild(); } this
version of the applyfilter function only needs to set or remove the attribute on the rule as necessary.
Creating toolbar buttons (Customize Toolbar Window) - Archive of obsolete content
the code looks like this: <?xml
version="1.0"?> <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:chrome="http://www.mozilla.org/rdf/chrome#"> <seq about="urn:mozilla:skin:root"> <li resource="urn:mozilla:skin:classic/1.0"/> </seq> <description about="urn:mozilla:skin:classic/1.0"> <chrome:packages> <seq about="urn:mozilla:skin:classic/1.0:packages"> <li resource="urn:mozilla:skin:classic/1.0:myextension"/> </seq> </chrome...
Adding Buttons - Archive of obsolete content
the code to add is shown in red below: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <button id="find-button" label="find"/> <button id="cancel-button" label="cancel"/> </window> you'll notice that the cancel button was added also.
Adding HTML Elements - Archive of obsolete content
here is an example as it might be added to the find file window: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> then, you can use html tags as you would normally, keeping in mind the following: you must add a html: prefix to the beginning...
Anonymous Content - Archive of obsolete content
for example, a simplified
version of an editable menulist element, might be created as follows: xul: <menu class="dropbox"> <menupopup> <menuitem label="1000"/> <menuitem label="2000"/> </menupopup> </menu> css: menu.dropbox { -moz-binding: url('chrome://example/skin/example.xml#dropbox'); } xbl: <binding id="dropbox"> <content> <children/> <xul:textbox flex="1"/> <xul:button src="chrome://glob...
Box Model Details - Archive of obsolete content
a find text dialog example 5 : source view <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findtext" title="find text" orient="horizontal" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <vbox flex="3"> <label control="t1" value="search text:"/> <textbox id="t1" style="min-width: 100px;" flex="1"/> </vbox> <vbox style="min-width: 150px;" flex="1" align="st...
Creating a Wizard - Archive of obsolete content
an example wizard source <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <wizard id="example-window" title="select a dog wizard" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <wizardpage> <description> this wizard will help you select the type of dog that is best for you." </description> <label value="why do you want a dog?"/> <menulist> ...
Cross Package Overlays - Archive of obsolete content
our foverlay.xul example source <?xml
version="1.0"?> <overlay xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <toolbox id="browser-toolbox"> <toolbar id="findfile_toolbar"> <label control="findfile_filename" value="search for files named:"/> <textbox id="findfile_filename"/> <label control="findfile_dir" value="directory:"/> <textbox id="findfile_dir"/> <button label="browse..."/> </toolb...
Element Positioning - Archive of obsolete content
example 5: source view <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="yesno" title="question" orient="horizontal" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <hbox> <button label="yes"/> <button label="no"/> </hbox> <hbox align="center"> <button label="maybe"/> <button label="perhaps"/> </hbox> </window> you can also ...
Keyboard Shortcuts - Archive of obsolete content
<?xml
version="1.0" encoding="utf-8"?> <window xmlns="http://www.mozilla.org/keymaster/gat...re.is.only.xul"> <keyset> <key id="cut_cmd" modifiers="accel" key="x"/> <key id="copy_cmd" modifiers="accel" key="c"/> <key id="paste_cmd" modifiers="accel" key="v"/> <key id="close_cmd" keycode="vk_escape" oncommand="window.close();"/> </keyset> <vbox flex="1"> <toolbox> <menubar id="findfiles-men...
More Wizards - Archive of obsolete content
wizard example source <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <wizard id="thewizard" title="secret code wizard" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script> function checkcode(){ document.getelementbyid('thewizard').canadvance = (document.getelementbyid('secretcode').value == "cabbage"); } </script> <wizardpage onpageshow="checkcode(); return ...
Tree View Details - Archive of obsolete content
they are added near the end of the complete example, shown here: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window onload="init();" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <tree id="elementlist" flex="1"> <treecols> <treecol id="element" label="element" primary="true" flex="1"/> </treecols> <treechildren/> </tree> <script> <![cdata[ var treeview = { childdata : { solids: [...
Using spell checking in XUL - Archive of obsolete content
// different
versions of firefox have different contract ids var spellclass = "@mozilla.org/spellchecker/myspell;1"; if ("@mozilla.org/spellchecker/hunspell;1" in components.classes) spellclass = "@mozilla.org/spellchecker/hunspell;1"; if ("@mozilla.org/spellchecker/engine;1" in components.classes) spellclass = "@mozilla.org/spellchecker/engine;1"; gspellcheckengine = components.classes[spellclass].getservice(com...
Window icons - Archive of obsolete content
older
versions to support older applications, such as firefox 1.0, you need to copy the icons to app_dir/chrome/icons/default manually on the first start (example code).
XUL Event Propagation - Archive of obsolete content
the widget hierarchy consider the following xul file: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="events" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" oncommand="alert('window handler')"> <vbox> <vbox style="background-color: lightgrey;" oncommand="alert('box handler')"> <menu class="menu" label="file" oncommand="alert('menu handler...
colorpicker - Archive of obsolete content
window, document, or any of the functions/objects/variables bound to the window object event object example <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="text/javascript"> function myfunction(e){ /* do something cool here or just say the below */ alert(e.target.nodename); } </script> ...
dialog - Archive of obsolete content
extra2, buttonaccesskeyhelp, buttonalign, buttondir, buttondisabledaccept, buttonlabelaccept, buttonlabelcancel, buttonlabeldisclosure, buttonlabelextra1, buttonlabelextra2, buttonlabelhelp, buttonorient, buttonpack, buttons, defaultbutton, title properties buttons, defaultbutton methods acceptdialog, canceldialog, centerwindowonscreen, getbutton, movetoalertposition examples <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> <dialog id="donothing" title="dialog example" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" buttons="accept,cancel" buttonlabelcancel="cancel" buttonlabelaccept="save"> <dialogheader title="options" description="my preferences"/> <groupbox> <caption label="colour"/> <radi...
dialogheader - Archive of obsolete content
attributes crop, description, title examples <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> <dialog id="donothing" title="dialog example" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <dialogheader title="my dialog" description="example dialog"/> <!-- other widgets --> </dialog> attributes crop type: one of the values below if the label of the element is too big to fit in its given space, the text will be cropped on the side specified by the cr...
preference - Archive of obsolete content
window, document, or any of the functions/objects/variables bound to the window object event object example <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="text/javascript"> function myfunction(e){ /* do something cool here or just say the below */ alert(e.target.nodename); } </script> ...
prefwindow - Archive of obsolete content
ttonorient, buttonpack, buttons, defaultbutton, lastselected, onbeforeaccept, ondialogaccept, ondialogcancel, ondialogdisclosure, ondialoghelp, onload, onunload, title, type properties buttons, currentpane, defaultbutton, lastselected, preferencepanes, type methods acceptdialog, addpane, canceldialog, centerwindowonscreen, getbutton, opensubdialog, openwindow, showpane examples <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <prefwindow xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <prefpane id="saveoptions" label="backups"> <preferences> <preference id="pref-backup" name="myapp.mybackups" type="bool"/> <preference id="pref-backupduration" name="myapp.mybackups.duration" type="int"/> </preferences> ...
tabbrowser - Archive of obsolete content
(this one has no post data parameter, see loaduriwithflags for a
version that does) loaduri( uri, referrer, charset ) return type: no return value load a url into the document, with the given referrer and character set.
titlebar - Archive of obsolete content
<?xml
version="1.0"?> <window title="movable hud window" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" width="300" height="200" style="background: transparent; -moz-appearance: none;"> <titlebar flex="1" oncommand="close()" style="background: rgba(30, 30, 30, 0.9); -moz-border-radius: 10px; -moz-box-shadow: 0 1p...
toolbox - Archive of obsolete content
properties accessible, customtoolbarcount, externaltoolbars, palette, toolbarset methods appendcustomtoolbar, collapsetoolbar, expandtoolbar examples <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="yourwindow" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" title="toolbox example" width="300"> <toolbox> <toolbar> <toolbarbutton label="back"/> <toolbarbutton label="forward"/> <toolbarbutton label="home"/> </toolbar> <toolbar> <toolbarbutton label="st...
window - Archive of obsolete content
attributes accelerated, chromemargin, disablechrome, disablefastfind, drawintitlebar, fullscreenbutton, height, hidechrome, id, lightweightthemes, lightweightthemesfooter, screenx, screeny, sizemode, title, width, windowtype examples <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <!-- run this example using copy & paste in this live xul editor: https://github.com/km-200/xul --> <!-- extremely recommended to keep this css include!!
XUL - Archive of obsolete content
mailing list newsgroup rss feed #xul on irc.mozilla.org tools xul online live editor (copy & paste snippets from here and run them) xul explorer (a lightweight xul ide) xulexplorer (patched
version of xul explorer) extension developer's extension (featuring a live xul editor) xulref sidebar firebug dom inspector spket ide, ide for xul/xbl ample sdk, (cross-browser xul renderer in javascript/html) view all...
CommandLine - Archive of obsolete content
ervice = components.classes["@mozilla.org/observer-service;1"] .getservice(components.interfaces.nsiobserverservice); observerservice.notifyobservers(window.arguments[0], "commandline-args-changed", null); addeventlistener("unload", observer.unregister, false); finally, add a reference in your application window to the observer: chrome/content/window.xul <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" id="main" title="&window.title;" windowtype="xulmine" style="width: 300px; height: 350px;" persist="screenx screeny width height sizemode"> <script type="application/javascript" src="cmdline.js" /> ...
Debugging a XULRunner Application - Archive of obsolete content
debuggerserver.addbrowseractors("myxulrunnerappwindowtype"); } debuggerserver.openlistener(6000); for xulrunner
version 37+ the code to enable the debugger has changed: components.utils.import('resource://gre/modules/devtools/dbg-server.jsm'); if (!debuggerserver.initialized) { debuggerserver.init(); debuggerserver.addbrowseractors(); debuggerserver.allowchromeprocess = true; } let dbglistener=debuggerserver.createlistener(); dbglistener.portorpath=6000; dbglistener.open(); add the following to your pref...
Dialogs in XULRunner - Archive of obsolete content
here is an example xul dialog: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <dialog id="mydialog" title="my dialog" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload="window.sizetocontent();" buttons="accept,cancel" buttonlabelaccept="set favorite" buttonaccesskeyaccept="s" ondialogaccept="return dosave();" buttonlabe...
MacFAQ - Archive of obsolete content
nd this is called when an xulrunner app is already running, so: create a default preference of "browser.chromeurl" that points to your new "hiddenwindow" as such: "chrome://myxul/content/hiddenwindow.xul" next take the code below and drop it in, to create the hiddenwindow.xul (note: the debug function and nsicommandline try/catch can be removed, all you need is the window.arguments[0]) <?xml
version="1.0"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" id="myxul_hidden" windowtype="myxul:hiddenwindow" title="" width="0" height="0" persist="screenx screeny width height sizemode" > <!-- load the mozilla helpers --> <script type="application/javascript" src="chrome://global/content/nsusersettings.js" /> <script><![cdata[ funct...
xulauncher - Archive of obsolete content
d/$xulname/chrome/chrome.manifest" xulprefs="$wd/$xulname/defaults/preferences/prefs.js" # make minimal directory structure ############################################################################## mkdir -p $xuldir mkdir -p $xulprefdir # create application.ini file ############################################################################## echo " [app] vendor=xulauncher.sh name=$xulname
version=0.0.1 buildid=`date +%y%m%d` [gecko] min
version=1.8 max
version=1.9 ">$xulappini # create chrome.manifest file ############################################################################## echo " content $xulname file:$xulname/ ">$xulmanifest # create prefs.js file ############################################################################## echo " pref(\"toolkit.defaultchromeuri\", \"chrome:...
XUL Explorer - Archive of obsolete content
installs latest
version: install (windows): xulexplorer-1.0a1pre.en-us.win32.exe 6.6mb install (mac): xulexplorer-1.0a1pre.en-us.mac.dmg 9.3mb install (linux): xulexplorer-1.0a1pre.en-us.linux-i686.tar.bz2 8.4mb contributing source code in svn bugzilla (for bugs and suggestions) open bugs, enter new bug blog posts xul explorer - updated (1.0a1pre) xul explorer 0.4 xul explorer 0.3 xul explorer 0.2 expl...
mozilla.dev.platform FAQ - Archive of obsolete content
in order to use xr successfully in <tt>--disable-libxul</tt> mode, you have to setup dyld_library_path to include <tt>/library/frameworks/xul.framework/
versions/1.9a1</tt> - benjamin smedberg, fri, oct 20 2006 9:12 am q: when i try to build a completely standalone xul app on os x (10.4.8).
xbDesignMode.js - Archive of obsolete content
/* ***** begin license block ***** *
version: mpl 1.1/gpl 2.0/lgpl 2.1 * * the contents of this file are subject to the mozilla public license
version * 1.1 (the "license"); you may not use this file except in compliance with * the license.
2006-10-13 - Archive of obsolete content
summary: mozilla.dev.apps.firefox - october 6, 2006 - october 13, 2006 announcements firefox vista compatible and
versioning heads up robert strong describes the compatibility between windows vista and firefox, also about the
versioning change.
XQuery - Archive of obsolete content
the extension now includes and interfaces with the open-source
version of saxonica's saxon b (though this extension currently only performs the xqueries).
Anatomy of a video game - Game development
modern
versions of firefox and google chrome (and probably others) attempt to connect requestanimationframe callbacks to their main thread at the very beginning of a frame's timeslice.
Index - Game development
you can play the full
version of the hungry fridge game directly in your browser, install it from the firefox marketplace or check the source code of the demo along with all the other resources on the gamepad api content kit.
Publishing games - Game development
html5 games have a huge advantage over native in terms of publishing and distribution — you have the freedom of distribution, promotion and monetization of your game on the web, rather than each
version being locked into a single store controlled by one company.
Audio for Web games - Game development
mobile support for web audio features mobile browser
version concurrent play autoplay volume adjusting preload chrome (android) 69+ y y y y firefox (android) 62+ y y y y edge mobile y y y y opera mobile 46+ y y y y safari (ios) 7+ y/n* n n y android browser 67+ y y y y there's a full compat...
Efficient animation for web games - Game development
puzzowl uses it to drive all the drawing updates and transitions, by overriding its requestanimationframe function with a custom
version that makes the request, and appending the game’s drawing function onto the end of the callback like so: animator.requestanimationframe = function(callback) { requestanimationframe(function(t) { callback(t); redraw(); }); }; the game’s redraw function does all drawing, and the animation callbacks just update state.
Build the brick field - Game development
the final
version of the drawbricks() function, after assigning the brickx and bricky values as the coordinates instead of (0,0) each time, will look like this — add this into your code below the drawpaddle() function: function drawbricks() { for(var c=0; c<brickcolumncount; c++) { for(var r=0; r<brickrowcount; r++) { var brickx = (c*(brickwidth+brickpadding))+brickoffsetleft; ...
2D breakout game using pure JavaScript - Game development
lesson details all the lessons — and the different
versions of the mdn breakout game we are building together — are available on github: create the canvas and draw on it move the ball bounce off the walls paddle and keyboard controls game over build the brick field collision detection track the score and win mouse controls finishing up starting with pure javascript is the best way to get a solid knowledge of web game development.
Animations and tweens - Game development
that's the expanded
version of the tween definition, but we can also use the shorthand syntax: game.add.tween(brick.scale).to({x:2,y:2}, 500, phaser.easing.elastic.out, true, 100); this tween will double the brick's scale in half a second using elastic easing, will start automatically, and have a delay of 100 miliseconds.
2D breakout game using Phaser - Game development
lesson details all the lessons — and the different
versions of the mdn breakout game we are building together — are available on github: initialize the framework scaling load the assets and print them on screen move the ball physics bounce off the walls player paddle and controls game over build the brickfield collision detection the score win the game extra lives animations and tweens buttons randomizing gameplay as a note on learn...
How to build custom form controls - Learn web development
if you are lost with px to em con
version, try http://riddle.pl/emcalc/ */ font-size : 0.625em; /* this (10px) is the new font size context for em value in this context */ font-family : verdana, arial, sans-serif; box-sizing : border-box; /* we need extra room for the down arrow we will add */ padding : .1em 2.5em .2em .5em; width : 10em; /* 100px */ border : .2em solid #000; border-radius : .4em; box-shad...
Other form controls - Learn web development
="mysuggestion"> <datalist id="mysuggestion"> <option>apple</option> <option>banana</option> <option>blackberry</option> <option>blueberry</option> <option>lemon</option> <option>lychee</option> <option>peach</option> <option>pear</option> </datalist> datalist support and fallbacks almost all browsers support datalist, but if you are still supporting older browsers such as ie
versions below 10, there is a trick to provide a fallback: <label for="myfruit">what is your favorite fruit?
Sending form data - Learn web development
to get it working again, we have found that you can load up the mamp app, then choose the menu options mamp > preferences > php, and set "standard
version:" to "7.2.x" (x will differ depending on what
version you have installed).
CSS basics - Learn web development
conclusion if you followed all the instructions in this article, you should have a page that looks similar to this one: (you can view our
version here.) if you get stuck, you can always compare your work with our finished example code on github.
Creating hyperlinks - Learn web development
here's an example with a download link to the latest windows
version of firefox: <a href="https://download.mozilla.org/?product=firefox-latest-ssl&os=win64&lang=en-us" download="firefox-latest-64bit-installer.exe"> download latest firefox for windows (64-bit) (english, us) </a> active learning: creating a navigation menu for this exercise, we'd like you to link some pages together with a navigation menu to create a multi-page website.
Document and website structure - Learn web development
<!doctype html> <html> <head> <meta charset="utf-8"> <title>my page title</title> <link href="https://fonts.googleapis.com/css?family=open+sans+condensed:300|sonsie+one" rel="stylesheet" type="text/css"> <link rel="stylesheet" href="style.css"> <!-- the below three lines are a fix to get html5 semantic elements working in old
versions of internet explorer--> <!--[if lt ie 9]> <script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.js"></script> <![endif]--> </head> <body> <!-- here is our main header that is used across all the pages of our website --> <header> <h1>header</h1> </header> <nav> <ul> <li><a href="#">home</a></li> <li><a href="...
Getting started with HTML - Learn web development
for example, if we revisit our link example from earlier, we could write a basic
version with only the href attribute, like this: <a href=https://www.mozilla.org/>favorite website</a> however, as soon as we add the title attribute in this way, there are problems: <a href=https://www.mozilla.org/ title=the mozilla homepage>favorite website</a> as written above, the browser misinterprets the markup, mistaking the title attribute for three attributes: a title attribute with the val...
Test your skills: Conditionals - Learn web development
note: in the examples below, if there is an error in your code it will be outputted into the results panel on the page, to help you try to figure out the answer (or into the browser's javascript console, in the case of the downloadable
version).
Test your skills: Events - Learn web development
note: in the examples below, if there is an error in your code it will be outputted into the results panel on the page, to help you try to figure out the answer (or into the browser's javascript console, in the case of the downloadable
version).
Third-party APIs - Learn web development
note: if you have trouble getting the example to work, check your code against our finished
version — see expanded-example.html (also see it running live here).
Test your skills: Arrays - Learn web development
note: in the examples below, if there is an error in your code it will be outputted into the results panel on the page, to help you try to figure out the answer (or into the browser's javascript console, in the case of the downloadable
version).
Test your skills: Math - Learn web development
note: in the examples below, if there is an error in your code it will be outputted into the results panel on the page, to help you try to figure out the answer (or into the browser's javascript console, in the case of the downloadable
version).
Test your skills: variables - Learn web development
note: in the examples below, if there is an error in your code it will be outputted into the results panel on the page, to help you try to figure out the answer (or into the browser's javascript console, in the case of the downloadable
version).
Test your skills: JSON - Learn web development
note: in the example below, if there is an error in your code it will be outputted into the results panel on the page, to help you try to figure out the answer (or into the browser's javascript console, in the case of the downloadable
version).
Themes
browser themes browser theme concepts get an introduction to creating themes for the latest
versions of firefox using the amo theme generator use the theme generator to create and submit a new theme to amo lightweight themes lightweight themes have been deprecated and are no longer accepted by amo.
Adding a new CSS property
if you need more details on any of the points mentioned here, a good place to find them is by looking at other changes in the
version control history of the files mentioned.
Creating a Language Pack
configure step you need to prepare the build directory, which is done with ./mach configure you only need to run this if the
version number of firefox changes.
Capturing a minidump
(you'll want the 32-bit
version of windbg only if you are using a 32-bit
version of firefox) then install it, the standard settings in the installation process are fine.
Debugging on Mac OS X
macos 10.15 went further, requiring applications to be notarized with hardened runtime enabled in order to launch (ignoring workarounds.) when run on earlier macos
versions, notarization and hardened runtime settings have no effect.
Simple Instantbird build
this page covers the basic steps needed to build a bleeding-edge, development
version of instantbird.
Eclipse
there are
versions of eclipse for several of the different languages that are used by mozilla.
Gecko Logging
lazyloglodule provides a con
version operator to logmodule* and is suitable for passing into the logging macros detailed below.
SVG Guidelines
here's an example taking into account the list below:
version x="0" and y="0" enable-background (unsupported by gecko and now deprecated by the filter effects specification) id (id on root element has no effect) xmlns:xlink attribute when there are no xlink:href attributes used throughout the file other unused xml namespace definitions xml:space when there is no text used in the file other empty tags, this may be obvious, but those are sometimes ...
mach
requirements mach requires a current
version of /mozilla-central/ (or a tree derived from there).
Error codes returned by Mozilla APIs
ns_base_stream_illegal_args (0x80470004) ns_base_stream_no_converter (0x80470005) ns_base_stream_bad_con
version (0x80470006) this error occurs when the component nsistringbundleservice has been set with a badly encoded property file.
Frame script loading and lifetime
this is a problem especially for restartless add-ons; because when a new
version of the add-on is installed, the old frame scripts will not be unloaded.
AddonScreenshot
thumbnailurl optional string the url of a thumbnail
version of the screenshot.
Code Samples
components.utils.import("resource://gre/modules/addonmanager.jsm"); addonmanager.getaddonbyid("yourextensionid", function(addon) { var addonlocation = addon.getresourceuri("").queryinterface(components.interfaces.nsifileurl).file.path; }); accessing file and
version information components.utils.import("resource://gre/modules/addonmanager.jsm"); addonmanager.getaddonbyid("my-addon@foo.com", function(addon) { alert("my extension's
version is " + addon.
version); alert("did i remember to include that file.txt file in my xpi?
UpdateCheckListener
void onupdatecheckcomplete( in updateinfo results[] ) parameters results an array of updateinfo objects representing the available add-on
versions onupdatecheckerror() called when the update check fails.
Assert.jsm
the assert.jsm javascript code module implements the commonjs unit testing specification
version 1.1, which provides a basic, standardized interface for performing in-code logical assertions with optional, customizable error reporting.
Downloads.jsm
close the message to stop."); } finally { yield list.remove(download); yield download.finalize(true); } } finally { yield list.removeview(view); } }).then(null, components.utils.reporterror); con
version from nsidownloadmanager starting in firefox for desktop
version 26, the nsidownloadmanager and nsidownload interfaces are not available anymore.
Interfacing with the Add-on Repository
.getservice(components.interfaces.nsiprefservice); var prefbranch = prefsservice.getbranch("extensions."); var recurl = ""; try { recurl = prefbranch.getcharpref("getaddons.recommended.url"); } catch(e) { recurl = ""; } if (recurl == "") { prefbranch.setcharpref("getaddons.recommended.url", "https://services.addons.mozilla.org/%locale%/%app%/api/%api_
version%/list/recommended/all/%max_results%/%os%/%
version%?src=firefox"); prefsservice.savepreffile(null); } this fetches the value of the extensions.getaddons.recommended.url preference, and, if the preference doesn't exist or has no value, sets the value of the preference to the correct one for the amo site.
Log.jsm
until stabilized, expect frequent updates, including different interfaces and behavior in different
versions of the platform.
NetUtil.jsm
in previous
versions of gecko, you must use a string to specify the uri.
Services.jsm
storage api service strings nsistringbundleservice string bundle service sysinfo nsipropertybag2 system info service telemetry nsitelemetry telemetry service tm nsithreadmanager thread manager service urifixup nsiurifixup uri fixup service urlformatter nsiurlformatter url formatter service vc nsi
versioncomparator
version comparator service wm nsiwindowmediator window mediator service ww nsiwindowwatcher window watcher service 1 mobile only 2 windows only 3 main process only 4 child process only ...
SourceMap.jsm
according to the spec, source maps have the following attributes:
version: which
version of the source map spec this map is following.
WebRequest.jsm
if you modified headers in onbeforesendheaders, you'll see the modified
version here.
Webapps.jsm
aoldapp, anewapp, aislocalfileinstall, aisupdate,) _checksignature: function(aapp, aissigned, aislocalfileinstall) _saveetag: function(aisupdate, aoldapp, arequestchannel, ahash, amanifest) _checkorigin: function(aissigned, aoldapp, amanifest, aisupdate) _getids: function(aissigned, azipreader, aconverter, anewapp, aoldapp,) _checkforstoreidmatch: function(aisupdate, anewapp, astoreid, astore
version) revertdownloadpackage: function(aid, aoldapp, anewapp, aisupdate, aerror) uninstall: function(amanifesturl) _promptforuninstall: function(adata) confirmuninstall: function(adata) denyuninstall: function(adata, areason = "error_unknown_failure") getself: function(adata, amm) checkinstalled: function(adata, amm) getinstalled: function(adata, amm) getnotinstalled: function(adata, amm) get...
L10n Checks
once python is installed, the easiest way to install l10n checks (on mac or linux) is to just run: $ sudo easy_install -u l10n-checks or, if you're on windows: $ easy_install -u l10n-checks installation (development
versions) l10n checks needs to be installed, and it requires that you have python and mercurial installed on your machine.
powermetrics
this document describes the
version of powermetrics that comes with mac os 10.10.
tools/power/rapl
you must be running linux kernel
version 3.14 or later for rapl to work.
nglayout.debug.disable_xul_cache
the xul cache is serialized and saved between mozilla sessions in the xul fastload file, which saves a “compiled”
version of the xul and javascript in a document to disk for faster startup the next time the application runs.
Preference reference
the xul cache is serialized and saved between mozilla sessions in the xul fastload file, which saves a “compiled”
version of the xul and javascript in a document to disk for faster startup the next time the application runs.reader.parse-on-load.force-enabledthe preference reader.parse-on-load.force-enabled controls if the reader mode used in firefox mobile should be enabled independent of the memory available in the device.
Patches and pushes
note that if your team selects a local
version of an already default plugin (e.g., wikipedia), the xml filename should include the locale code (e.g., wikipedia-es).
Firefox Sync
firefox sync is built into the desktop
versions of firefox, as well as firefox for android and firefox for ios.
Installing JSHydra
prerequisites for building spidermonkey spidermonkey is part of the build process, but since jshydra will get the code if required, you do not need to worry about obtaining the right
version of spidermonkey.
Leak And Bloat Tests
mail.root.none", "/home/moztest/.thunderbird/t7i1txfw.minimum/mail"); user_pref("mail.root.pop3", "/home/moztest/.thunderbird/t7i1txfw.minimum/mail"); user_pref("mail.server.server1.directory", "/home/moztest/.thunderbird/t7i1txfw.minimum/mail/local folders"); user_pref("mail.server.server2.directory", "/home/moztest/.thunderbird/t7i1txfw.minimum/mail/tinderbox"); user_pref("mail.attachment.store.
version", 1); user_pref("mail.folder.views.
version", 1); user_pref("mail.spam.
version", 1); user_pref("mailnews.quotingprefs.
version", 1); user_pref("mailnews.ui.threadpane.
version", 6); changes to leak and bloat tests date and time (pst) description approx effect on numbers pre dec 2008 initial
version - 2008/12/07 11:20 bug 463594 disabled os x and outlook address books via the preference set...
Date and Time
macros for time unit con
version types and constants time parameter callback functions functions macros for time unit con
version macros for converting between seconds, milliseconds, microseconds, and nanoseconds.
I/O Functions
the file descriptor of the top layer can be passed to nspr i/o functions, which invoke the appropriate
version of the i/o methods polymorphically.
Long Long (64-bit) Integers
limits and initialization relational operators logical operators arithmetic operators shift operators con
version operators ...
Memory Management Operations
memory allocation macros macro
versions of the memory allocation functions are available, as well as additional macros that provide programming convenience: pr_malloc pr_new pr_realloc pr_calloc pr_newzap pr_delete pr_freeif ...
PRHostEnt
to make the transition to ip
version 6 easier, it's best to treat prhostent as an opaque structure.
NSS 3.15.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.15.3.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.15.3 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.15.5 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.16.2.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.16.2.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.16.5 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.16.6 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.19.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.19.2.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.19.2.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.19.2.3 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.19.2.4 release notes
furthermore, applications that restrict the use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.19.4 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.19 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.20.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.20.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.21.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.21.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.21.3 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.21.4 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.22.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.22.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.22.3 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.25.1 release notes
applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.26.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.26 release notes
applications that restrict their use of nss apis, to the functions listed in nss public functions, will remain compatible with future
versions of the nss shared libraries.
NSS 3.28.4 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.29.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.29.3 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.29.5 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.29 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.30.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.30 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.31.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.34 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.36.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.36.4 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.36.5 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.36.6 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.36.7 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.36.8 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.36 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.37.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.37.3 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.38 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.40.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.41.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.41 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.42.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.44.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.44.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.44.3 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.44.4 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.44 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.46.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.47.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.48.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.49.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.49.2 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.50 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.52.1 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.53 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.54 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS 3.56 release notes
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
NSS Config Options
es192-cbc aes256-cbc aes128-gcm aes192-gcm aes256-gcm camellia128-cbc camellia192-cbc camellia256-cbc seed-cbc des-ede3-cbc des-40-cbc des-cbc null-cipher rc2 rc4 idea ssl key exchanges rsa rsa-export dhe-rsa dhe-dss dh-rsa dh-dss ecdhe-ecdsa ecdhe-rsa ecdh-ecdsa ecdh-rsa restrictions for asymmetric keys (integers) rsa-min dh-min dsa-min constraints on ssl protocols
versions (integers) tls-
version-min tls-
version-max constraints on dtls protocols
versions (integers) dtls-
version-min dtls-
version-max policy flags for algorithms ssl ssl-key-exchange key-exchange cert-signature signature all none ...
Enc Dec MAC Using Key Wrap CertReq PKCS10 CSR
pr_fprintf(pr_stderr, "unknown key or hash type for issuer.\n"); goto cleanup; } rv = secoid_setalgorithmid(arena, &cert->signature, algid, 0); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not set signature algorithm id.\n%s\n", port_errortostring(rv)); goto cleanup; } /* we only deal with cert v3 here */ *(cert->
version.data) = 2; cert->
version.len = 1; der.len = 0; der.data = null; dummy = sec_asn1encodeitem (arena, &der, cert, sec_asn1_get(cert_certificatetemplate)); if (!dummy) { pr_fprintf(pr_stderr, "could not encode certificate.\n"); goto cleanup; } result = (secitem *) port_arenazalloc (arena, sizeof (secitem)); if ...
NSS release notes template
furthermore, applications that restrict their use of nss apis to the functions listed in nss public functions will remain compatible with future
versions of the nss shared libraries.
Overview of NSS
open-source licensing and distribution nss is available under the mozilla public license,
version 2.
Migration to HG
because of the changes described above, we have decided to use a new series of (minor)
version numbers.
Sample manual installation
for example, <obj-dir> for a debug build of nss on the x86 platform with a linux kernel
version 2.6 with glibc would be: linux2.6_x86_glibc_pth_dbg.obj from these directories, you can copy the files to any system (or other) directory.
troubleshoot.html
if the build fails early on the gmakein coreconf try updating your cvs tree with -p: cd mozilla cvs update -p building a 32-bit
version on a 64-bit may fail with: /usr/include/features.h:324:26: fatal error: bits/predefs.h: no such file or directory in this case remember to set use_64=1 testing nss the ssl stress test opens 2,048 tcp connections in quick succession.
gtstd.html
the communicator certificate db token handles all communication with the certificate and key database files (called certx.db and keyx.db, respectively, where x is a
version number) that store certificates and keys.
modutil-tasks.html
nss security tools: modutil tasks newsgroup: mozilla.dev.tech.crypto task list the jar installation script is very fragile with respect to platform definitions (especially
version numbers).
NSS Tools certutil
uer -d certdir adding a certificate to the database this example adds a certificate to the certificate database: certutil -a -n jsmith@netscape.com -t "p,p,p" -i mycert.crt -d certdir you can see this certificate in the database with this command: certutil -l -n jsmith@netscape.com -d certdir the certificate database tool displays output similar to the following: certificate: data:
version: 3 (0x2) serial number: 0 (0x0) signature algorithm: pkcs #1 md5 with rsa encryption issuer: cn=john smith, o=netscape, l=mountain view, st=california, c=us validity: not before: thu mar 12 00:10:40 1998 not after: sat sep 12 00:10:40 1998 subject: cn=john smith, o=netscape, l=mountain view, st=california, c=us subject public key info: public key algori...
NSS Tools crlutil
crlutil -l -d certdir -n nickname crl info: :
version: 2 (0x1) signature algorithm: pkcs #1 md5 with rsa encryption issuer: "cn=nss test ca,o=bogus nss,l=mountain view,st=california,c=us" this update: wed feb 23 12:08:38 2005 entry (1): serial number: 40 (0x28) revocation date: wed feb 23 12:08:10 2005 entry (2): serial number: 42 (0x2a) revocation date: wed feb 23 12:08:40 2005 ...
NSS Tools modutil-tasks
nss security tools: modutil tasks newsgroup: mozilla.dev.tech.crypto task list the jar installation script is very fragile with respect to platform definitions (especially
version numbers).
NSS Tools pk12util-tasks
nss security tools: pk12util tasks newsgroup: mozilla.dev.tech.crypto task list need to migrate code to use an up-to-date
version of nss.
NSS Tools pk12util
error codes pk12util can return the following values: 0 - no error 1 - user cancelled 2 - usage error 6 - nls init error 8 - certificate db open error 9 - key db open error 10 - file initialization error 11 - unicode con
version error 12 - temporary file creation error 13 - pkcs11 get slot error 14 - pkcs12 decoder start error 15 - error read from import file 16 - pkcs12 decode error 17 - pkcs12 decoder verify error 18 - pkcs12 decoder validate bags error 19 - pkcs12 decoder import bags error 20 - key db con
version version 3 to
version 2 error 21 - cert db con
version version 7 to
version 5 error 22 - cert and key dbs pat...
Rhino and BSF
using bsf with rhino now that the apache jakarta bean scripting framework (bsf),
version 2.4.0, has been officially released, you can use rhino easily with bsf.
Rhino Examples
javascript shell shell.java is a program that executes javascript programs; it is a simplified
version of the shell in the tools package.
Rhino history
at the time, netscape was planning to produce a
version of navigator written entirely in java and so it needed an implementation of javascript written in java.
New in Rhino 1.7R4
update license to mpl 2.0 make string concatenation with + fast java class generation updates and fixes faster number to string con
version several regexp fixes regexp performance improvements es5 compliance fixes improved interpreter performance improved commonjs module implementation javascript 1.8 generator expressions many parser and ast fixes use javascript 1.7 as default
version in rhino shell javaadapter improvements fixes in js to java access include mozilla test suite a list of bugs that were fixed since the previous release.
Performance Hints
for example, you could rewrite function sum(a) { result = 0; for (i=0; i < a.length; i++) result += a[i]; return result; } as function sum(a) { var result = 0; for (var i=0; i < a.length; i++) result += a[i]; return result; } this is not equivalent code because the second
version does not modify global variables result and i.
The JavaScript Runtime
however, this is not the implementation used in practice because a number to string con
version is too expensive to be performed on every array access.
Scripting Java
first, you can pass a javascript string to a java method that requires a java string and rhino will perform the con
version.
SpiderMonkey compartments
in previous
versions of spidermonkey, the garbage collector would walk the entire heap of all javascript objects when garbage collection was needed.
Creating JavaScript jstest reftests
expected = 3; actual = 1 + 2; reportcompare(expected, actual, '3==1+2'); comparesource comparesource(expected, actual, description) is used to test if the decompilation of a javascript object (con
version to source code) matches an expected value.
FOSS
designed to supplement existing embeddings, gpsee ships with a sample trivial embedding, a scripting host, and an augmented
version of mozilla's js shell.
GC Rooting Guide
within spidermonkey, it is suggested that these are used in preference to the template class (gecko uses the template
versions): template class typedef js::rooted<js::value> js::rootedvalue js::rooted<jsobject*> js::rootedobject js::rooted<jsstring*> js::rootedstring js::rooted<jsscript*> js::rootedscript js::rooted<jsid> js::rootedid for example, instead of this: jsobject* localobj = js_getobjectofsomesort(cx); you would write this: ...
Exact Stack Rooting
this class solves two problems: c++ only allows one level of user-defined implicit type con
version.
Garbage collection
the spidermonkey incremental read barrier the textbook
version of incremental gc has only a write barrier.
JIT Optimization Outcomes
arraydoublecon
version the type-system indicates that some arrays at this site should be converted to packed arrays of doubles while others should not.
JS::Compile
length indicates the size of the text
version of the script in characters.
JS::Evaluate
length indicates the size of the text
version of the script in characters.
SpiderMonkey: The Mozilla JavaScript runtime
spidermonkey internals: gc separate internals article on the gc spidermonkey internals: hacking tips collection of helpful tips & tools for hacking on the engine related topics javascript foss projects using or based on spidermonkey releases spidermonkey release notes current and past
versions: 52, 45, 38, 31, 24, 17 community mailing list spidermonkey questions on stack overflow report a bug ...
Web Replay
this requires using the same build of firefox and a reasonably similar
version of the operating system; otherwise the tab will probably crash.
WebReplayRoadmap
there is, however, a partial windows port from an older
version of the architecture that can replay a simple page but not rewind, which should make writing a complete windows port easier.
Task graph
after a change to the gecko source code is pushed to
version-control, jobs for that change appear on treeherder.
Gecko Roles
a pane that supports internal frames and iconified
versions of those internal frames.
Places Expiration
this transient
version of the preference is just mirroring the current value used by expiration, setting it won't have any effect.
Querying Places
results_as_full_visit: this is an extended
version of result_type_visit.
Using the Places favicon service
the expiration time is only used to determine whether data should be reloaded from the network (or cache) or whether the
version in the database is fresh enough.
extIApplication
version readonly attribute astring the
version number of the application.
extIExtension
version readonly attribute astring the
version number of the extension.
XPCOM changes in Gecko 2.0
previously, whenever gecko detected that the application
version had changed, or one or more extensions was added, removed, enabled, or disabled, it was necessary to throw away all existing component registrations, then restart the application (what we call the "extension manager restart") during its startup process.
Packaging WebLock
distribution of substantively modified
versions of this document is prohibited without the explicit permission of the copyright holder.
Resources
distribution of substantively modified
versions of this document is prohibited without the explicit permission of the copyright holder.
XPCshell Test Manifest Expressions
os - the operating system on which the test is being run one of: 'win', 'mac', 'linux', 'android' os_
version - the
version of the operating system on which the test is being run toolkit - the graphics toolkit used by this build one of: 'windows', 'cocoa', 'gtk2', 'android' processor - the cpu which the code is compiled for one of: 'x86', 'x86_64', 'arm' bits - the pointer size of the cpu architecture, in bits one of 32, 64, possibly unknown debug - set to true if thi...
Observer Notifications
em-action-requested item-upgraded a different
version of an existing extension has been installed.
nsresult
note: on compilers that do not support strongly-typed enums (that is, compilers that don't support this feature of c++11), it falls back to being an unsigned 32-bit integer, as in past
versions of gecko.
IAccessibleHyperlink
as a result it may be removed in a later
version of the idl and it is suggested that implementations should not rely on the inheritance.
IAccessibleRelation
edrelationtype ); [propget] hresult ntargets([out] long ntargets ); [propget] hresult relationtype([out] bstr relationtype ); [propget] hresult target([in] long targetindex, [out] iunknown target ); [propget] hresult targets([in] long maxtargets, [out, size_is(maxtargets), length_is( ntargets)] iunknown targets, [out] long ntargets ); methods localizedrelationtype() returns a localized
version of the relation type.
IAccessibleText
however, if the application developer was not satisfied with how screen readers have handled the reading of sentences this boundary type could be implemented and screen readers could use the application's
version of a sentence rather than the screen reader's.
mozIJSSubScriptLoader
note: in
versions of gecko prior to gecko 1.9, you could use data: urls as well, but this introduced security concerns, and is no longer permitted.
mozIStorageFunction
let stmt = dbconn.createstatement("select square(value) from some_table"); try { while (stmt.executestep()) { // handle the results } } finally { stmt.reset(); } in earlier
versions of gecko, however, you'll need to actually create an object containing the onfunctioncall method.
mozIStoragePendingStatement
return value in
versions of gecko prior to gecko 1.9.2, this returned a boolean value that was true if the query was canceled successfully or false if not.
nsIAccessibleRole
a pane that supports internal frames and iconified
versions of those internal frames.
nsIBlocklistPrompt
these are javascript objects with properties: name - the plugin or extension name
version - the
version of the extension or plugin icon - the plugin or extension icon disable - can be used by the nsiblocklistprompt to allows users to decide whether a soft-blocked add-on should be disabled blocked - true if the item is hard-blocked, false otherwise item - the nsiplugintag or addon object acount optional the number of addons.
nsIChannel
in earlier
versions callers could get the "content-length" property as 64-bit value by queryinterfacing the channel to nsipropertybag2, if that interface is exposed by the channel.
nsIComponentManager
function startup(params, areason) { if (services.vc.compare(services.appinfo.platform
version, "10.0") < 0) components.manager.addbootstrappedmanifestlocation(params.installpath); } function shutdown(params, areason) { if (services.vc.compare(services.appinfo.platform
version, "10.0") < 0) components.manager.removebootstrappedmanifestlocation(params.installpath); } ...
nsIConsoleService
examples retrieving the message array to retrieve the message array in gecko prior to
version 19: function getconsolemessagearray() { var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.interfaces.nsiconsoleservice); var array = {}; consoleservice.getmessagearray(array, {}); return array.value; } to retrieve the message array in gecko 19 or later: function getconsolemessagearray() { var consoleservi...
nsILoginManager
toolkit/components/passwordmgr/public/nsiloginmanager.idlscriptable used to interface with the built-in password manager 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) replaces nsipasswordmanager which was used in older
versions of gecko.
nsIMenuBoxObject
subsequent gecko
versions will have the attribute on the nsimenuboxobject interface.
Building an Account Manager Extension
<?xml
version="1.0" encoding="utf-8"?> <?xml-stylesheet href="chrome://messenger/skin/accountmanage.css" type="text/css"?> <page xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload="parent.onpanelloaded('am-devmo-account.xul');"> <script type="application/javascript" src="chrome://messenger/content/accountmanager.js"/> <script type="application/javascript" src="chrome://ex...
nsIMsgCompFields
securityinfo nsisupports subject astring templatename astring temporaryfiles char * obsolete temporaryfiles obsolete, do not use anymore to astring usemultipartalternative prbool uuencodeattachments prbool methods utility methods prbool checkcharsetcon
version ( out char * fallbackcharset ); nsimsgrecipientarray splitrecipients ( in prunichar * recipients, in prbool emailaddressonly ); void convertbodytoplaintext ( ); attachment handling methods void addattachment ( in nsimsgattachment attachment ); void removeattachment ( in nsimsgattachment attachment ); void removeattachments ( ); header...
nsIMsgHeaderParser
exceptions thrown missing exception missing description native code only!makefulladdressstring given an e-mail address and a person's name, cons them together into a single string, doing all the necessary quoting (const char*
version).
nsIPrintingPrompt
note: the windows
version mozilla implements this service which is automatically built and registered for you.
nsIProfile
to get access to the profile manager service: var profile = components.classes["@mozilla.org/profile/manager;1"] .getservice(components.interfaces.nsiprofile); note: this interface was used by seamonkey up through seamonkey 1.1
versions, which were based off gecko 1.8.1.
nsIProtocolHandler
current
versions of firefox assume that the uri has uri_loadable_by_anyone set, but this will not work starting with the mozilla 2 platform.
nsIProxyInfo
some special values for this attribute include (but are not limited to) the following: "http" - http proxy (or ssl connect for https) "socks" - socks v5 proxy "socks4" - socks v4 proxy "direct" - no proxy "unknown" - unknown proxy (see nsiprotocolproxyservice.resolve()) a future
version of this interface may define additional types.
nsIScriptableIO
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released
version of the platform (pending some fixes).
nsISelectionController
constants selection constants constant gecko
version description 1.7 - 1.9 1.9.1 - 1.9.2 2.0 selection_none 0 selection_normal 1 selection_spellcheck 2 selection_ime_rawinput 4 selection_ime_selectedrawtext 8 selection_ime_convertedtext 16 ...
nsISessionStore
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) in
versions of firefox prior to 3.5, the user preference browser.sessionstore.enabled must be true for these calls to be successful.
nsISupports proxies
a good example of this is the old install.js scripts that were used in xpinstall in older mozilla
versions.
nsITimerCallback
this
version takes a function to call and a closure to pass to that function.
nsITransferable
widget/nsitransferable.idlscriptable a container for typed data that can be transferred from one place or owner to another, possibly involving format con
version.
nsITreeView
(this is one way of detecting the
version at run-time).
nsIVariant
return value if the con
version succeeds, ns_ok is returned, otherwise ns_error_cannot_convert_data is returned.
nsIWindowWatcher
window from xpcom component code), you might want to use this interface for opening a new window: var ww = components.classes["@mozilla.org/embedcomp/window-watcher;1"] .getservice(components.interfaces.nsiwindowwatcher); var win = ww.openwindow(null, "chrome://myextension/content/about.xul", "aboutmyextension", "chrome,centerscreen", null); note:
versions of gecko before gecko 2.0 would ignore some of the chrome flags when opening a chrome window without an opener window, instead behaving as if the "all" flag was present.
nsMsgFilterFileAttribValue
defined in comm-central/ mailnews/ base/ search/ public/ nsimsgfilterlist.idl const nsmsgfilterfileattribvalue attribnone = 0; const nsmsgfilterfileattribvalue attrib
version = 1; const nsmsgfilterfileattribvalue attriblogging = 2; const nsmsgfilterfileattribvalue attribname = 3; const nsmsgfilterfileattribvalue attribenabled = 4; const nsmsgfilterfileattribvalue attribdescription = 5; const nsmsgfilterfileattribvalue attribtype = 6; const nsmsgfilterfileattribvalue attribscriptfile = 7; const nsmsgfilterfileattribvalue attribaction = 8; const nsmsgfilterfileattribvalue attribactionvalue = 9; const nsmsgfilterfileattribvalue attribcondition = 10; const nsmsgfilterfileattribvalue attribcustomid = 11; ...
XPCOM Interface Reference
mnsnsitreecontentviewnsitreeselectionnsitreeviewnsiurinsiurifixupnsiurifixupinfonsiurlnsiurlformatternsiurlparsernsiutf8converterservicensiutf8stringenumeratornsiuuidgeneratornsiupdatensiupdatechecklistenernsiupdatecheckernsiupdateitemnsiupdatemanagernsiupdatepatchnsiupdatepromptnsiupdatetimermanagernsiuploadchannelnsiuploadchannel2nsiurllistmanagercallbacknsiusercertpickernsiuserinfonsivariantnsi
versioncomparatornsiweakreferencensiwebbrowsernsiwebbrowserchromensiwebbrowserchrome2nsiwebbrowserchrome3nsiwebbrowserchromefocusnsiwebbrowserfindnsiwebbrowserfindinframesnsiwebbrowserpersistnsiwebcontenthandlerregistrarnsiwebnavigationnsiwebnavigationinfonsiwebpagedescriptornsiwebprogressnsiwebprogresslistenernsiwebprogresslistener2nsiwebsocketchannelnsiwebsocketlistenernsiwebappssupportnsiwifiaccesspoi...
XPCOM Interface Reference by grouping
process nsiprocess nsiprocess2 thread nsithread nsithreadeventfilter nsithreadinternal nsithreadmanager nsithreadobserver nsithreadpool nsithreadpoollistener nsitoolkit util nsi
versioncomparator nsiweakreference nsifactory nsiinterfacerequestor nsijscid nsijsid nsijsiid nsimodule nsiobserver nsiobserverservice nsiproperties nsiproperty nsipropertybag nsipropertybag2 nsipropertyelement nsiserversocket nsiserversocketlistener ...
NS_CStringToUTF16
adest [out] a nsastring instance that will contain the result of the con
version.
NS_UTF16ToCString
adest [out] a nsacstring instance that will contain the result of the con
version.
nsIAbCard/Thunderbird3
these functions are marked <code>[noscript] since xpcconnect performs automatic type con
version on nsivariant such that they are not needed for scripts, only for c++ callers.
Storage
as you step through each row, you can obtain each parameter by name through a helper object (mozistoragestatementrow) in javascript ( ) like so: while (statement.executestep()) { let value = statement.row.column_name; } you can create this helper object yourself if it's not available in your
version of gecko.
Getting Started Guide
nscomptr<nsifoo> foo; nsresult rv = bar->queryinterface(ns_get_iid(nsifoo), getter_addrefs(foo)); // or, if you're a savvy xpcom programmer, // you use the type-safe
version...
Xptcall Porting Guide
the win32
version is somewhat tighter because the __declspec(naked) feature allows for very small stubs.
Xptcall Porting Status
drepper <drepper@cygnus.com> unix <font color="white">done</font> freebsd and netbsd x86 christoph toshok <toshok@hungry.com>, john bandhauer <jband@netscape.com> unix (same as linux 86 code) <font color="white">done</font> bsd/os x86 bert driehuis <bert_driehuis@nl.compuware.com> unix (same as linux 86 code) bert contributed patches that *should* do the right thing for all the unixish-x86
versions of this code for gcc 2.7 or 2.8 vs.
Generating xpt on Windows
in order to generate an .xpt file from an .idl file in recent
versions of the gecko \ xul runner sdk in windows, you need to use the typelib.py script.
pyxpidl
xpidl option description pyxpidl equivalent -a emit annotations to typelib n/a (feature removed) -w turn on warnings n/a (this is now the default and can't be turned off) -v verbose mode (nyi) n/a (feature removed) -t creates a typelib of a specific
version number n/a (feature removed, and probably never actually worked) -i add an entry to start of include path for #include "nsifoo.idl" -i (unchanged) -o specify the base name for output (-o /tmp/nsifoo for example) -o outputfile (this isn't just the base name, but needs to include the extension; for example -o /tmp/nsifoo.idl) -e specify an explicit outpu...
xpidl
for testing purposes, or one-off interface compilation, xpidl can be run from the command line: usage: ./xpidl -m mode [-w] [-v] [-t
version number] [-d filename.pp] [-i path] [-o basename | -e filename.ext] filename.idl -a emit annotations to typelib -w turn on warnings (recommended) -v verbose mode (nyi) -t create a typelib of a specific
version number -i add entry to start of include path for ``#include "nsithing.idl" -o use basename (e.g.
Mail composition back end
the message will be output in html form and it is up to the caller to handle plain text con
version.
Creating a Custom Column
our replyto_col_overlay.xul should now contain something similar to this: <?xml
version="1.0"?> <overlay id="sample" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <tree id="threadtree"> <treecols id="threadcols"> <splitter class="tree-splitter" /> <treecol id="colreplyto" persist="hidden ordinal width" currentview="unthreaded" flex="2" label="reply-to" tooltiptext="click to sort by the reply-to header" /> </tr...
Demo Addon
warning: this content is for older
versions of thunderbird.
Activity Manager examples
adding a fully customized activity in complex scenarios, extensions might implement their own
version of the nsiactivityprocess, nsiactivitywarning and nsiactivityevent interfaces.
Add Toolbar Button
example xul overlay file: <?xml
version="1.0"?> <?xml-stylesheet href="chrome://demo/skin/overlay.css" type="text/css" ?> <overlay id="messengerwindow" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="application/x-javascript" src="overlay.js" /> <toolbarpalette id="mailtoolbarpalette"> <toolbarbutton id="demo-button" class="demo-button toolbarbutton-1" label="demo" type="button" oncommand="demo.load();" /> </toolbarpalette> </overlay> add this to the css file you referenced in your xul file: #demo-button, [place="palette"] > #demo-button { list-style-image: url("chrome://demo/skin/icon.png") !important; } ...
Filter Incoming Mail
by example, to modify the mail subject : var newmaillistener = { msgadded: function(amsghdr) { if( !amsghdr.isread ) { // here we are, a new mail has popped // let get a javascript string object from the subject property // querying mime con
version interface var mimeconvert = components.classes["@mozilla.org/messenger/mimeconverter;1"] .getservice(components.interfaces.nsimimeconverter); var subject = mimeconvert.decodemimeheader(amsghdr.subject, null, false, true); // here with have a string to modify with javascript.
Application - Firefox Developer Tools
finding an example if you want to test this functionality and you don't have a handy pwa available, you can grab one of our simple examples to use: add to homescreen demo: shows pictures of foxes (source code | live
version) js13kpwa demo: show information on entries to the js13k annual competition (source code | live
version) how to debug service workers inspect web app manifests ...
Access debugging in add-ons - Firefox Developer Tools
the following items are accessible in the context of chrome://browser/content/debugger.xul (or, in
version 23 beta, chrome://browser/content/devtools/debugger.xul): window.addeventlistener("debugger:editorloaded") - called when the read-only script panel loaded.
Source map errors - Firefox Developer Tools
typical error messages here are: syntaxerror: json.parse: unexpected character at line 1 column 1 of the json data error: "
version" is a required argument original source missing an original source may be missing.
UI Tour - Firefox Developer Tools
source maps: enabled by default, this option directs the debugger to load the original
versions of files, and map them to the generated ones loaded in a page, to ease debugging of translformed sources.
Debugger.Object - Firefox Developer Tools
this means you can use debugger.object.prototype.copy as a generic “debugger value to debuggee value” con
version function—within the limitations of the “structured cloning” algorithm.
Debugger.Object - Firefox Developer Tools
this means you can use debugger.object.prototype.copy as a generic "debugger value to debuggee value" con
version function—within the limitations of the "structured cloning" algorithm.
Index - Firefox Developer Tools
118 access debugging in add-ons the following items are accessible in the context of chrome://browser/content/debugger.xul (or, in
version 23 beta, chrome://browser/content/devtools/debugger.xul): 119 breaking on exceptions when an exception occurs, the line where it occurs is highlighted in the source pane, with a squiggly red line under the problematic code.
Network request list - Firefox Developer Tools
copy as curl the command may include the following options: -x [method] if the method is not get or post --data for url encoded request parameters --data-binary for multipart request parameters --http/
version if the http
version is not 1.1 -i if the method is head -h one for each request header.
Page inspector 3-pane mode - Firefox Developer Tools
enabling the 3-pane inspector pre-firefox 62 in earlier
versions of firefox (since firefox 59/60), you can enable 3 pane mode in release/beta by going to about:config and flipping the following prefs to true: devtools.inspector.split-rule-enabled — this switches 3-pane mode on and off.
AbortSignal - Web APIs
current
version of firefox rejects the promise with a domexception you can find a full working example on github — see abort-api (see it running live also).
AddressErrors - Web APIs
complete example here we'll see a complete, working
version of the example above (except of course that it's not connected to an actual payment handler, so no payments are actually processed).
AnalyserNode.maxDecibels - Web APIs
the maxdecibels property of the analysernode interface is a double value representing the maximum power value in the scaling range for the fft analysis data, for con
version to unsigned byte/float values — basically, this specifies the maximum value for the range of results when using getfloatfrequencydata() or getbytefrequencydata().
AnalyserNode.minDecibels - Web APIs
the mindecibels property of the analysernode interface is a double value representing the minimum power value in the scaling range for the fft analysis data, for con
version to unsigned byte/float values — basically, this specifies the minimum value for the range of results when using getfloatfrequencydata() or getbytefrequencydata().
Attr - Web APIs
this change is implemented in chrome since
version 46.0 and firefox since
version 48.0.
AudioBuffer - Web APIs
you can find the full source code at our webaudio-examples repository; a running live
version is also available.
AudioContext() - Web APIs
google chrome per-tab audio context limitation in chrome prior to
version 66 google chrome only supported up to six audio contexts per tab at a time.
AudioListener - Web APIs
in a previous
version of the specification, the dopplerfactor and speedofsound properties and the setposition() method could be used to control the doppler effect applied to audiobuffersourcenodes connected downstream — these would be pitched up and down according to the relative speed of the pannernode and the audiolistener.
AudioNode.disconnect() - Web APIs
syntax audionode.disconnect(); audionode.disconnect(output); audionode.disconnect(destination); audionode.disconnect(destination, output); audionode.disconnect(destination, output, input); return value undefined parameters there are several
versions of the disconnect() method, which accept different combinations of parameters to control which nodes to disconnect from.
AudioNode - Web APIs
brief history: the first
version of the web audio spec only defined the factory methods.
BeforeInstallPromptEvent - Web APIs
this is provided for user agents that want to present a choice of
versions to the user such as, for example, "web" or "play" which would allow the user to chose between a web
version or an android
version.
BiquadFilterNode() - Web APIs
webview android full support 55notes full support 55notes notes before
version 59, the default values were not supported.chrome android full support 55notes full support 55notes notes before chrome 59, the default values were not supported.firefox android full support 53opera android full support ...
BluetoothDevice - Web APIs
bluetoothdevice.product
version read only the 16-bit product
version field in the pnp_id characteristic in the device_information service.
CSSPrimitiveValue - Web APIs
con
versions are allowed between absolute values (from millimeters to centimeters, from degrees to radians, and so on) but not between relative values.
Using the CSS Painting API - Web APIs
the 2d rendering context is a subset of the html5 canvas api; the
version available to houdini (called the paintrenderingcontext2d) is a further subset containing most of the features available in the full canvas api with the exception of the canvasimagedata, canvasuserinterface, canvastext, and canvastextdrawingstyles apis.
CacheStorage - Web APIs
async function getdata() { const cache
version = 1; const cachename = `myapp-${ cache
version }`; const url = 'https://jsonplaceholder.typicode.com/todos/1'; let cacheddata = await getcacheddata( cachename, url ); if ( cacheddata ) { console.log( 'retrieved cached data' ); return cacheddata; } console.log( 'fetching fresh data' ); const cachestorage = await caches.open( cachename ); await ...
CanvasPattern.setTransform() - Web APIs
r svg1 = document.getelementbyid('svg1'); var matrix = svg1.createsvgmatrix(); var img = new image(); img.src = 'https://mdn.mozillademos.org/files/222/canvas_createpattern.png'; img.onload = function() { var pattern = ctx.createpattern(img, 'repeat'); pattern.settransform(matrix.rotate(-45).scale(1.5)); ctx.fillstyle = pattern; ctx.fillrect(0, 0, 400, 400); }; note that newer browser
versions started to support dommatrix as an input to settransform(), so for example you could replace the svgmatrix in the above example with the following: const matrix = new dommatrix([1, .2, .8, 1, 0, 0]); edit the code below and see your changes update live in the canvas: playable code <canvas id="canvas" width="400" height="200" class="playable-canvas"></canvas> <svg id="svg1" style="display:no...
Basic usage of canvas - Web APIs
fallback content the <canvas> element differs from an <img> tag in that, like for <video>, <audio>, or <picture> elements, it is easy to define some fallback content, to be displayed in older browsers not supporting it, like
versions of internet explorer earlier than
version 9 or textual browsers.
Compositing example - Web APIs
the base layer become darker, and light parts become lighter.', 'retains the darkest pixels of both layers.', 'retains the lightest pixels of both layers.', 'divides the bottom layer by the inverted top layer.', 'divides the inverted bottom layer by the top layer, and then inverts the result.', 'a combination of multiply and screen like overlay, but with top and bottom layer swapped.', 'a softer
version of hard-light.
Drawing shapes with canvas - Web APIs
to simplify the code and to improve performance, the path2d object, available in recent
versions of browsers, lets you cache or record these drawing commands.
Drawing text - Web APIs
function draw() { var ctx = document.getelementbyid('canvas').getcontext('2d'); var text = ctx.measuretext('foo'); // textmetrics object text.width; // 16; } gecko-specific notes in gecko (the rendering engine of firefox, firefox os and other mozilla based applications), some prefixed apis were implemented in earlier
versions to draw text on a canvas.
Pixel manipulation with canvas - Web APIs
there are two
versions of the createimagedata() method: var myimagedata = ctx.createimagedata(width, height); this creates a new imagedata object with the specified dimensions.
Canvas tutorial - Web APIs
the <canvas> element is not supported in some older browsers, but is supported in recent
versions of all major browsers.
Document: selectionchange event - Web APIs
bubbles no cancelable no interface event event handler property onselectionchange examples // addeventlistener
version document.addeventlistener('selectionchange', () => { console.log(document.getselection()); }); // onselectionchange
version document.onselectionchange = () => { console.log(document.getselection()); }; specifications specification status comment selection apithe definition of 'selectionchange' in that specification.
Document: selectstart event - Web APIs
bubbles yes cancelable yes interface event event handler property onselectstart examples // addeventlistener
version document.addeventlistener('selectstart', () => { console.log('selection started'); }); // onselectstart
version document.onselectstart = () => { console.log('selection changed.'); }; specifications specification status comment selection apithe definition of 'selectstart' in that specification.
Document.write() - Web APIs
note: starting with
version 55, chrome will not execute <script> elements injected via document.write() when specific conditions are met.
DocumentFragment - Web APIs
it is used as a lightweight
version of document that stores a segment of a document structure comprised of nodes just like a standard document.
How to create a DOM tree - Web APIs
dynamically creating a dom tree consider the following xml document: <?xml
version="1.0"?> <people> <person first-name="eric" middle-initial="h" last-name="jung"> <address street="321 south st" city="denver" state="co" country="usa"/> <address street="123 main st" city="arlington" state="ma" country="usa"/> </person> <person first-name="jed" last-name="brown"> <address street="321 north st" city="atlanta" state="ga" country="usa"/> <address street="123 west st" city="seattle" state="wa" country="usa"/> <address street="321 south avenue" city="d...
Introduction to the DOM - Web APIs
<p><b><tt>link</tt></b></p> <select onchange="setbodyattr('link', this.options[this.selectedindex].value);"> <option value="blue">blue</option> <option value="green">green</option> </select> <small> <a href="http://some.website.tld/page.html" id="sample"> (sample link) </a> </small><br /> <input type="button" value="
version" onclick="ver()" /> </form> </div> </body> </html> to test a lot of interfaces in a single page—for example, a "suite" of properties that affect the colors of a web page—you can create a similar test page with a whole console of buttons, textfields, and other html elements.
DynamicsCompressorNode() - Web APIs
webview android full support 55notes full support 55notes notes before
version 59, the default values were not supported.chrome android full support 55notes full support 55notes notes before chrome 59, the default values were not supported.firefox android full support 53opera android full support ...
Element: DOMActivate event - Web APIs
bubbles yes cancelable yes interface mouseevent examples <svg xmlns="http://www.w3.org/2000/svg"
version="1.2" baseprofile="tiny" xmlns:ev="http://www.w3.org/2001/xml-events" width="6cm" height="5cm" viewbox="0 0 600 500"> <desc>example: invoke an ecmascript function from a domactivate event</desc> <!-- ecmascript to change the radius --> <script type="application/ecmascript"><![cdata[ function change(evt) { var circle = evt.target; var currentradius = circle.getfloattrait("r"); if (currentradius == 100) circle.setfloattrait("r", currentradius * 2);...
Element.animate() - Web APIs
document.getelementbyid("tunnel").animate([ // keyframes { transform: 'translatey(0px)' }, { transform: 'translatey(-300px)' } ], { // timing options duration: 1000, iterations: infinity }); implicit to/from keyframes in newer browser
versions, you are able to set a beginning or end state for an animation only (i.e.
Element: click event - Web APIs
known workarounds for this bug: for ie9 only: set background-color: rgba(0,0,0,0) set opacity: 0 and an explicit background-color other than transparent for ie8 and ie9: set filter: alpha(opacity=0); and an explicit background-color other than transparent safari mobile safari mobile 7.0+ (and likely earlier
versions too) suffers from a bug where click events aren't fired on elements that aren't typically interactive (e.g.
Element.getAttribute() - Web APIs
non-existing attributes essentially all web browsers (firefox, internet explorer, recent
versions of opera, safari, konqueror, and icab, as a non-exhaustive list) return null when the specified attribute does not exist on the specified element; this is what the current dom specification draft specifies.
Element.getAttributeNS() - Web APIs
note: earlier
versions of the dom specification had this method described as returning an empty string for non-existent attributes, but it was not typically implemented this way since null makes more sense.
Event.msConvertURL() - Web APIs
targettype [in] type: domstring one of the following values indicating the desired con
version type: "specified", "base64", or "unchanged".
EventSource: error event - Web APIs
bubbles no cancelable no interface event or errorevent event handler property eventsource.onerror examples var evtsource = new eventsource('sse.php'); // addeventlistener
version evtsource.addeventlistener('error', (e) => { console.log("an error occurred while attempting to connect."); }); // onerror
version evtsource.onerror = (e) => { console.log("an error occurred while attempting to connect."); }; specifications specification status html living standardthe definition of 'error event' in that specification.
EventSource: open event - Web APIs
bubbles no cancelable no interface event event handler property eventsource.onopen examples var evtsource = new eventsource('sse.php'); // addeventlistener
version evtsource.addeventlistener('open', (e) => { console.log("the connection has been established."); }); // onopen
version evtsource.onopen = (e) => { console.log("the connection has been established."); }; specifications specification status html living standardthe definition of 'open event' in that specification.
EventTarget.dispatchEvent() - Web APIs
tchrome full support 4edge full support 12firefox full support 2ie full support 9 full support 9 no support 6 — 11notes alternate name notes older
versions of ie supported an equivalent, proprietary eventtarget.fireevent() method.alternate name uses the non-standard name: fireeventopera full support 9safari full support 3.2webview android full support 4chrome android full support ...
FetchEvent.request - Web APIs
this property is non-nullable (since
version 46, in the case of firefox.) if a request is not provided by some other means, the constructor init object must contain a request (see fetchevent.fetchevent().) syntax var recentrequest = fetchevent.request; value a request object.
FileReader.readAsDataURL() - Web APIs
er("load", function () { var image = new image(); image.height = 100; image.title = file.name; image.src = this.result; preview.appendchild( image ); }, false); reader.readasdataurl(file); } } if (files) { [].foreach.call(files, readandpreview); } } note: the filereader() constructor was not supported by internet explorer for
versions before 10.
HTMLObjectElement - Web APIs
recommendation the w3c specification is a latest of a previous
version of html living standard technically, the property tabindex is now defined on htmlelement.
HTMLOrForeignElement.nonce - Web APIs
examples retrieving a nonce value in the past, not all browsers supported the nonce idl attribute, so a workaround is to try to use getattribute as a fallback: let nonce = script['nonce'] || script.getattribute('nonce'); however, recent browsers
version hide nonce values that are accessed this way (an empty string will be returned).
Drag Operations - Web APIs
the application/x.bookmark type can provide data with more details for use within the application whereas the other types can include just a single url or text
version.
HashChangeEvent - Web APIs
here is a
version that allows only one handler to be bound to the onhashchange property: ;(function(window) { // exit if the browser implements that event if ( "onhashchange" in window.document.body ) { return; } var location = window.location, oldurl = location.href, oldhash = location.hash; // check the location hash on a 100ms interval setinterval(function() { var newurl = location...
Headers.getAll() - Web APIs
the getall() method of the headers interface used to return an array of all the values of a header within a headers object with a given name; in newer
versions of the fetch spec, it has been deleted, and headers.get() has been updated to fetch all header values instead of only the first one.
Ajax navigation example - Web APIs
427: "unassigned", 428: "precondition required", 429: "too many requests", 430: "unassigned", 431: "request header fields too large", 500: "internal server error", 501: "not implemented", 502: "bad gateway", 503: "service unavailable", 504: "gateway timeout", 505: "http
version not supported", 506: "variant also negotiates (experimental)", 507: "insufficient storage", 508: "loop detected", 509: "unassigned", 510: "not extended", 511: "network authentication required" }; var oreq, bisloading = false, bupdateurl = false; oloadingbox.id = "ajax-loader"; ocover.onclick = a...
IDBCursorSync - Web APIs
important: the synchronous
version of the indexeddb api was originally intended for use only with web workers, and was eventually removed from the spec because its need was questionable.
IDBDatabase.objectStoreNames - Web APIs
this is used a lot below db = dbopenrequest.result; // this line will log the
version of the connected database, which should be // an object that looks like { ['my-store-name'] } console.log(db.objectstorenames); }; specifications specification status comment indexed database api 2.0the definition of 'objectstorenames' in that specification.
IDBDatabase.transaction() - Web APIs
transactions are opened in one of three modes: readonly, readwrite and readwriteflush (non-standard, firefox-only.)
versionchange mode can't be specified here.
IDBEnvironmentSync - Web APIs
important: the synchronous
version of the indexeddb api was originally intended for use only with web workers, and was eventually removed from the spec because its need was questionable.
IDBFactorySync - Web APIs
important: the synchronous
version of the indexeddb api was originally intended for use only with web workers, and was eventually removed from the spec because its need was questionable.
IDBIndex.name - Web APIs
you can only rename indexes during upgrade transactions; that is, when the mode is "
versionchange".
IDBIndexSync - Web APIs
important: the synchronous
version of the indexeddb api was originally intended for use only with web workers, and was eventually removed from the spec because its need was questionable.
IDBLocaleAwareKeyRange - Web APIs
the idblocaleawarekeyrange interface of the indexeddb api is a firefox-specific
version of idbkeyrange — it functions in exactly the same fashion, and has the same properties and methods, but it is intended for use with idbindex objects when the original index had a locale value specified upon its creation (see createindex()'s optionalparameters) — that is, it has locale aware sorting enabled.
IDBObjectStore.name - Web APIs
invalidstateerror either the object store has been deleted or the current transaction is not an upgrade transaction; you can only rename indexes during upgrade transactions; that is, when the mode is "
versionchange".
IDBObjectStoreSync - Web APIs
important: the synchronous
version of the indexeddb api was originally intended for use only with web workers, and was eventually removed from the spec because its need was questionable.
IDBTransactionSync - Web APIs
important: the synchronous
version of the indexeddb api was originally intended for use only with web workers, and was eventually removed from the spec because its need was questionable.
KeyboardEvent.code - Web APIs
html <p>use the wasd (zqsd on azerty) keys to move and steer.</p> <svg xmlns="http://www.w3.org/2000/svg"
version="1.1" class="world"> <polygon id="spaceship" points="15,0 0,30 30,30"/> </svg> <script>refresh();</script> css .world { margin: 0px; padding: 0px; background-color: black; width: 400px; height: 400px; } #spaceship { fill: orange; stroke: red; stroke-width: 2px; } javascript the first section of the javascript code establishes some variables we'll be using.
KeyboardEvent.initKeyEvent() - Web APIs
false, // altkeyarg, false, // shiftkeyarg, false, // metakeyarg, 9, // keycodearg, 0); // charcodearg); document.getelementbyid('blah').dispatchevent(event); specification this implementation of keyboard events is based on the key events spec in the early
versions of dom 2 events, later removed from that spec.
LocalFileSystem - Web APIs
(an older
version of the api is described at managing html5 offline storage.) working within a single origin the file system is sandboxed to a single origin.
MediaDeviceInfo.groupId - Web APIs
this
version of the example puts the passed-in device at the top of the result list, then adds any other members of the group that are found: const getdevicegroup = maindevinfo => { let devlist = [maindevinfo]; navigator.mediadevices.enumeratedevices() .then(devices => { devices.foreach(device => { if ((device.groupid === maindevinfo.groupid) && (device.deviceid !== maindevinfo.dev...
MediaStream.getAudioTracks() - Web APIs
early
versions of this api included a special audiostreamtrack interface which was used as the type for each entry in the list of audio streams; however, this has since been merged into the main mediastreamtrack interface.
MediaStream.getVideoTracks() - Web APIs
early
versions of this api included a special videostreamtrack interface which was used as the type for each entry in the list of video streams; however, this has since been merged into the main mediastreamtrack interface.
Capabilities, constraints, and settings - Web APIs
figuring this out has often been difficult, and has usually involved looking at some combination of which user agent (or browser) you're running on, which
version it is, looking to see if certain objects exist, trying to see whether various things work or not and determining what errors occur, and so forth.
Media Capture and Streams API (Media Stream) - Web APIs
blobevent canvascapturemediastreamtrack inputdeviceinfo mediadevicekind mediadeviceinfo mediadevices mediastream mediastreamconstraints mediastreamevent mediastreamtrack mediastreamtrackevent mediatrackconstraints mediatracksettings mediatracksupportedconstraints overconstrainederror url early
versions of the media capture and streams api specification included separate audiostreamtrack and videostreamtrack interfaces—each based upon mediastreamtrack—which represented streams of those types.
Navigator.getUserMedia() - Web APIs
while technically not deprecated, this old callback
version is marked as such, since the specification strongly encourages using the newer promise returning
version.
Navigator.oscpu - Web APIs
operating system oscpuinfo string format os/2 os/2 warp x (either 3, 4 or 4.5) windows ce windowsce x.y1 windows 64-bit (64-bit build) windows nt x.y; win64; x64 windows 64-bit (32-bit build) windows nt x.y; wow64 windows 32-bit windows nt x.y mac os x (ppc build) powerpc mac os x
version x.y mac os x (i386/x64 build) intel mac os x or macos
version x.y linux 64-bit (32-bit build) output of uname -s plus "i686 on x86_64" linux output of uname -sm x.y refers to the
version of the operating system example function osinfo() { alert(window.navigator.oscpu); } osinfo(); // alerts "windows nt 6.0" for example usage notes unless your ...
Navigator.registerProtocolHandler() - Web APIs
syntax navigator.registerprotocolhandler(scheme, url, title); note: recently updated to navigator.registerprotocolhandler(scheme, url), but no browsers currently support this
version.
RTCIceCandidateInit.candidate - Web APIs
transmits a json string including the candidate to the remote peer, the remote peer might handle receiving that json message like this: function goticecandidatemessage(msg) { var icecandidate = new rtcicecandidate({ candidate: msg.candidate; }); pc.addicecandidate(icecandidate).catch({ /* handle error */ }); } it's helpful to note that for backward compatibility with older
versions of the webrtc specification, the rtcicecandidate() constructor accepts the value of candidate as its only input, in place of the rtcicecandidateinit dictionary.
RTCIceServer - Web APIs
older
versions of the webrtc specification included an url property instead of urls; this was changed in order to let you specify multiple addresses for each server in the list, as shown in the example below.
RTCPeerConnection.onaddstream - Web APIs
example this code, based on an older
version of our signaling and video calling sample, responds to addstream events by setting the video source for a <video> element to the stream specified in the event, and then enabling a "hang up" button in the app's user interface.
RTCSessionDescriptionCallback - Web APIs
the rtcsessiondescriptioncallback type is used to represent the callback function passed into the deprecated callback-based
version of createoffer() or createanswer() when using them to create offers or answers.
RTCStatsReport - Web APIs
the rtcrtpreceiver and rtcrtpsender
versions of getstats() specifically only return statistics available to the incoming or outgoing stream on which you call them.
Range.compareNode() - Web APIs
warning: this method has been removed from gecko 1.9 (firefox 3) and will not exist in future
versions of firefox, which was the only browser implementing it; you should switch to range.compareboundarypoints() as soon as possible.
ReadableStream.pipeThrough() - Web APIs
next, we log the contents of the readable stream, use pipethrough() to send it to a new function that creates a gray-scaled
version of the stream, then log the new stream's contents too.
ReportingObserver - Web APIs
erver(function(reports, observer) { reportbtn.onclick = () => displayreports(reports); }, options); we then tell it to start observing reports using reportingobserver.observe(); this tells the observer to start collecting reports in its report queue, and runs the callback function specified inside the constructor: observer.observe(); later on in the example we deliberately use the deprecated
version of mediadevices.getusermedia(): if(navigator.mozgetusermedia) { navigator.mozgetusermedia( constraints, success, failure); } else { navigator.getusermedia( constraints, success, failure); } this causes a deprecation report to be generated; because of the event handler we set up inside the reportingobserver() constructor, we can now click the button to display the rep...
Reporting API - Web APIs
erver(function(reports, observer) { reportbtn.onclick = () => displayreports(reports); }, options); we then tell it to start observing reports using reportingobserver.observe(); this tells the observer to start collecting reports in its report queue, and runs the callback function specified inside the constructor: observer.observe(); later on in the example we deliberately use the deprecated
version of mediadevices.getusermedia(): if(navigator.mozgetusermedia) { navigator.mozgetusermedia( constraints, success, failure); } else { navigator.getusermedia( constraints, success, failure); } this causes a deprecation report to be generated; because of the event handler we set up inside the reportingobserver() constructor, we can now click the button to display the rep...
ResizeObserverEntry.contentRect - Web APIs
note that this is better supported than resizeobserverentry.borderboxsize or resizeobserverentry.contentboxsize, but it is left over from an earlier implementation of the resize observer api, is still included in the spec for web compat reasons, and may be deprecated in future
versions.
ResizeObserverEntry - Web APIs
note that this is better supported than the above two properties, but it is left over from an earlier implementation of the resize observer api, is still included in the spec for web compat reasons, and may be deprecated in future
versions.
SVGElement - Web APIs
this attribute is deprecated and may be removed in a future
version of this specification.
SVGGraphicsElement: copy event - Web APIs
example html <?xml
version="1.0" encoding="utf-8"?> <svg viewbox="0 0 100 30" width="600" height="320" xmlns="http://www.w3.org/2000/svg"> <text x="5" y="10" id="text-to-copy">copy this text</text> <foreignobject x="5" y="20" width="90" height="20"> <input xmlns="http://www.w3.org/1999/xhtml" placeholder="paste it here"/> </foreignobject> </svg> css input { font-size: 10px; width: 100%; height: ...
SVGGraphicsElement: paste event - Web APIs
example html <?xml
version="1.0" encoding="utf-8"?> <svg viewbox="0 0 140 30" width="600" height="320" xmlns="http://www.w3.org/2000/svg"> <foreignobject x="5" y="-10" width="90" height="20"> <input xmlns="http://www.w3.org/1999/xhtml" value="copy this text"/> </foreignobject> <text x="5" y="30" id="element-to-paste-text" tabindex="1">paste it here</text> </svg> css input { font-size: 10px; width:...
SVGLength - Web APIs
svg_lengthtype_number = 1 svg_lengthtype_percentage = 2 svg_lengthtype_ems = 3 svg_lengthtype_exs = 4 svg_lengthtype_px = 5 svg_lengthtype_cm = 6 svg_lengthtype_mm = 7 svg_lengthtype_in = 8 svg_lengthtype_pt = 9 svg_lengthtype_pc = 10 normative document svg 1.1 (2nd edition) example <svg height="200" onload="start();"
version="1.1" width="200" xmlns="http://www.w3.org/2000/svg"> <script type="text/javascript"><![cdata[ function start() { var rect = document.getelementbyid("myrect"); var val = rect.x.baseval; // read x in pixel and cm units console.log("value: " + val.value + ", valueinspecifiedunits: " + val.unittype + ": " + val.valueinspecifiedunits + ", valueasstring: " + val.val...
SVGRectElement - Web APIs
(changing the color of the rect interface on every click) svg content <svg xmlns="http://www.w3.org/2000/svg"
version="1.1"> <rect width="300" height="100" id="myrect" onclick="dorectclick()" style="fill:rgb(0,0,255);stroke-width:1;stroke:rgb(0,0,0)" /> <text x="60" y="40" fill="white" font-size="40" onclick="dorectclick();">click me</text> </svg> javascript content function dorectclick(){ var myrect = document.getelementbyid('myrect'); var r = math.floor(math.random() * 255); var g = ma...
SVGTransformList - Web APIs
<svg id="my-svg" viewbox="0 0 300 280" xmlns="http://www.w3.org/2000/svg"
version="1.1"> <desc>example showing how to transform svg elements that using svgtransform objects</desc> <script type="application/ecmascript"> <![cdata[ function transformme(evt) { // svg root element to access the createsvgtransform() function var svgroot = evt.target.parentnode; // svgtransformlist of the element that has been clicked on var tfmlist = evt.target.trans...
Screen.colorDepth - Web APIs
syntax bitdepth = window.screen.colordepth; example // check the color depth of the screen if ( window.screen.colordepth < 8) { // use low-color
version of page } else { // use regular, colorful page } specification specification status comment css object model (cssom) view modulethe definition of 'screen.colordepth' in that specification.
Screen - Web APIs
void seteventhandler(domstring type, eventhandler handler) eventhandler geteventhandler(domstring type) example if (screen.pixeldepth < 8) { // use low-color
version of page } else { // use regular, colorful page } specification specification status comment css object model (cssom) view modulethe definition of 'screen' in that specification.
Using the Screen Capture API - Web APIs
note: it may be useful to note that recent
versions of the webrtc adapter.js shim include implementations of getdisplaymedia() to enable screen sharing on browsers that support it but do not implement the current standard api.
ServiceWorkerRegistration.navigationPreload - Web APIs
id webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetnavigationpreload experimentalchrome full support 59edge full support 17 full support 17 full support 16disabled disabled from
version 16: this feature is behind the enable service workers preference.firefox full support 44notes full support 44notes notes extended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera fu...
SpeechRecognitionEvent.interpretation - Web APIs
this might be determined, for instance, through the sisr specification of semantics in a grammar (see semantic interpretation for speech recognition (sisr)
version 1.0 for specification and examples.) syntax var myinterpretation = event.interpretation; value the returned value can be of any type.
Streams API concepts - Web APIs
as well as the conventional readable stream there is a type called a byte stream — this is an extended
version of a conventional stream for reading underlying byte sources (otherwise known as byob, or “bring your own buffer”) sources.
SubtleCrypto.importKey() - Web APIs
the pkcs #8 format is defined in rfc 5208., using the asn.1 notation: privatekeyinfo ::= sequence {
version version, privatekeyalgorithm privatekeyalgorithmidentifier, privatekey privatekey, attributes [0] implicit attributes optional } the importkey() method expects to receive this object as an arraybuffer containing the der-encoded form of the privatekeyinfo.
TextDecoder() - Web APIs
0" 'gb18030' "hz-gb-2312" 'hz-gb-2312' "big5", "big5-hkscs", "cn-big5", "csbig5", "x-x-big5" 'big5' "cseucpkdfmtjapanese", "euc-jp", "x-euc-jp" 'euc-jp' "csiso2022jp", "iso-2022-jp" note: firefox used to accept iso-2022-jp-2 sequences silently when an iso-2022-jp decoder was instantiated, however this was removed in
version 56 to simplify the api, as no other browsers support it and no pages seem to use it.
Touch.clientX - Web APIs
}, false); specifications specification status comment touch events – level 2 draft non-stable
version.
Touch.clientY - Web APIs
}, false); specifications specification status comment touch events – level 2 draft no changes since last
version.
Touch.pageX - Web APIs
var i; for (i=0; i < e.changedtouches.length; i++) { console.log("touchpoint[" + i + "].pagex = " + e.changedtouches[i].pagex); console.log("touchpoint[" + i + "].pagey = " + e.changedtouches[i].pagey); } }, false); specifications specification status comment touch events – level 2 draft no change from the previous
version.
Touch.pageY - Web APIs
var i; for (i=0; i < e.changedtouches.length; i++) { console.log("touchpoint[" + i + "].pagex = " + e.changedtouches[i].pagex); console.log("touchpoint[" + i + "].pagey = " + e.changedtouches[i].pagey); } }, false); specifications specification status comment touch events – level 2 draft no change from last
version.
Touch.radiusX - Web APIs
src.style.width = touch.radiusx * 2 + 'px'; src.style.height = touch.radiusy * 2 + 'px'; src.style.transform = "rotate(" + touch.rotationangle + "deg)"; }; specifications specification status comment touch events – level 2 draft non-stable
version.
Touch.screenX - Web APIs
var i; for (i=0; i < e.touches.length; i++) { console.log("touchpoint[" + i + "].screenx = " + e.touches[i].screenx); console.log("touchpoint[" + i + "].screeny = " + e.touches[i].screeny); } }, false); specifications specification status comment touch events – level 2 draft non-stable
version.
Touch.target - Web APIs
for (var i=0; i < e.targettouches.length; i++) { console.log("touchpoint[" + i + "].target = " + e.targettouches[i].target); } }, false); specifications specification status comment touch events – level 2 draft non-stable
version.
TouchEvent.altKey - Web APIs
ement.addeventlistener('touchstart', function(e) { // log the state of this event's modifier keys console.log("altkey = " + e.altkey); console.log("ctrlkey = " + e.ctrlkey); console.log("metakey = " + e.metakey); console.log("shiftkey = " + e.shiftkey); }, false); specifications specification status comment touch events – level 2 draft non-stable
version.
TouchEvent.changedTouches - Web APIs
for (var i=0; i < e.changedtouches.length; i++) { console.log("changedtouches[" + i + "].identifier = " + e.changedtouches[i].identifier); } }, false); specifications specification status comment touch events – level 2 draft non-stable
version.
TouchEvent.touches - Web APIs
switch (e.touches.length) { case 1: handle_one_touch(e); break; case 2: handle_two_touches(e); break; case 3: handle_three_touches(e); break; default: console.log("not supported"); break; } }, false); specifications specification status comment touch events – level 2 draft non-stable
version.
TouchEvent - Web APIs
the exception to this is chrome, starting with
version 56 (desktop, chrome for android, and android webview), where the default value for the passive option for touchstart and touchmove is true and calls to preventdefault() will have no effect.
TouchList.item() - Web APIs
element target, // set touch to the first item in the targettouches list; // otherwise set touch to the first item in the touches list var touch; if (ev.targettouches.length >= 1) touch = ev.targettouches.item(0); else touch = ev.touches.item(0); }, false); specifications specification status comment touch events – level 2 draft non-stable
version.
TouchList.length - Web APIs
n element target, // set touch to the first item in the targettouches list; // otherwise set touch to the first item in the touches list var touch; if (ev.targettouches.length >= 1) touch = ev.targettouches.item(0); else touch = ev.touches.item(0); }, false); specifications specification status comment touch events – level 2 draft non-stable
version.
TouchList - Web APIs
specifications specification status comment touch events – level 2 draft non-stable
version.
URL.toJSON() - Web APIs
the tojson() method of the url interface returns a usvstring containing a serialized
version of the url, although in practice it seems to have the same effect as url.tostring().
Vibration API - Web APIs
specifications specification status comment vibration api recommendation linked to spec is the latest editor's draft; w3c
version is a rec.
WEBGL_draw_buffers - Web APIs
in webgl 2, the constants are available without the "webgl" suffix and the new glsl built-ins require glsl #
version 300 es.
WebGL2RenderingContext.vertexAttribIPointer() - Web APIs
bone indices, interpreted as integer gl.vertexattribipointer(2, 4, gl.unsigned_byte, 20, 16); gl.enablevertexattribarray(2); //connect to attributes from the vertex shader gl.bindattriblocation(shaderprogram, 0, "position"); gl.bindattriblocation(shaderprogram, 1, "boneweights"); gl.bindattriblocation(shaderprogram, 2, "boneindices"); <script id="shader-vs" type="x-shader/x-vertex">#
version 300 es uniform mat4 mvmatrix; uniform mat4 bones[120]; in vec3 position; in vec4 boneweights; in uvec4 boneindices;//read as 4-component unsigned integer void main() { vec4 skinnedposition = bones[boneindices.s] * vec4(position, 1.0) * boneweights.s + bones[boneindices.t] * vec4(position, 1.0) * boneweights.t + bones[boneindices.p] * vec4(position, 1.0) * boneweight...
WebGLRenderingContext.pixelStorei() - Web APIs
glboolean false true, false webgl gl.unpack_premultiply_alpha_webgl multiplies the alpha channel into the other color channels glboolean false true, false webgl gl.unpack_colorspace_con
version_webgl default color space con
version or no color space con
version.
WebGLRenderingContext.vertexAttribPointer() - Web APIs
+ 12, vertices[i].normal[0] * 0x7f); dv.setint8(20 * i + 13, vertices[i].normal[1] * 0x7f); dv.setint8(20 * i + 14, vertices[i].normal[2] * 0x7f); dv.setint8(20 * i + 15, 0); dv.setuint16(20 * i + 16, vertices[i].texcoord[0] * 0xffff, true); dv.setuint16(20 * i + 18, vertices[i].texcoord[1] * 0xffff, true); } for higher performance, we could also do the previous json to arraybuffer con
version on the server-side, e.g.
Hello GLSL - Web APIs
hello glsl!</p> <canvas>your browser does not seem to support html5 canvas.</canvas> body { text-align : center; } canvas { width : 280px; height : 210px; margin : auto; padding : 0; border : none; background-color : black; } button { display : block; font-size : inherit; margin : auto; padding : 0.6em; } <script type="x-shader/x-vertex" id="vertex-shader"> #
version 100 void main() { gl_position = vec4(0.0, 0.0, 0.0, 1.0); gl_pointsize = 64.0; } </script> <script type="x-shader/x-fragment" id="fragment-shader"> #
version 100 void main() { gl_fragcolor = vec4(0.18, 0.54, 0.34, 1.0); } </script> ;(function(){ "use strict" window.addeventlistener("load", setupwebgl, false); var gl, program; function setupwebgl (evt) { window.removeeventlistener...
Hello vertex attributes - Web APIs
on of the square.</p> <canvas>your browser does not seem to support html5 canvas.</canvas> body { text-align : center; } canvas { width : 280px; height : 210px; margin : auto; padding : 0; border : none; background-color : black; } button { display : block; font-size : inherit; margin : auto; padding : 0.6em; } <script type="x-shader/x-vertex" id="vertex-shader"> #
version 100 precision highp float; attribute float position; void main() { gl_position = vec4(position, 0.0, 0.0, 1.0); gl_pointsize = 64.0; } </script> <script type="x-shader/x-fragment" id="fragment-shader"> #
version 100 precision mediump float; void main() { gl_fragcolor = vec4(0.18, 0.54, 0.34, 1.0); } </script> ;(function(){ "use strict" window.addeventlistener("load", setupwebgl, fa...
Textures from code - Web APIs
cedural texturing</p> <canvas>your browser does not seem to support html5 canvas.</canvas> body { text-align : center; } canvas { width : 280px; height : 210px; margin : auto; padding : 0; border : none; background-color : black; } button { display : block; font-size : inherit; margin : auto; padding : 0.6em; } <script type="x-shader/x-vertex" id="vertex-shader"> #
version 100 precision highp float; attribute vec2 position; void main() { gl_position = vec4(position, 0.0, 1.0); gl_pointsize = 128.0; } </script> <script type="x-shader/x-fragment" id="fragment-shader"> #
version 100 precision mediump float; void main() { vec2 fragmentposition = 2.0*gl_pointcoord - 1.0; float distance = length(fragmentposition); float distancesqrd = distance * distance; ...
WebGL tutorial - Web APIs
the <canvas> element and webgl are not supported in some older browsers, but are supported in recent
versions of all major browsers.
Keyframe Formats - Web APIs
implicit to/from keyframes in newer browser
versions, you are able to set a beginning or end state for an animation only (i.e.
Basic concepts behind Web Audio API - Web APIs
audio data: what's in a sample when an audio signal is processed, sampling means the con
version of a continuous signal to a discrete signal; or put another way, a continuous sound wave, such as a band playing live, is converted to a sequence of samples (a discrete-time signal) that allow a computer to handle the audio in distinct blocks.
Web Storage API - Web APIs
note: access to web storage from third-party iframes is denied if the user has disabled third-party cookies (firefox implements this behaviour from
version 43 onwards.) note: web storage is not the same as mozstorage (mozilla's xpcom interfaces to sqlite) or the session store api (an xpcom storage utility for use by extensions).
Functions and classes available to Web Workers - Web APIs
basic implementation (yes) appcodename, product, taintenabled(): 28 (28) online: 29 (29) navigatorlanguage: (yes) appname, app
version, online, platform, useragent: 10.0 other: no support (yes) (yes) xmlhttprequest creates and returns a new xmlhttprequest object; this mimics the behavior of the standard xmlhttprequest() constructor.
WheelEvent - Web APIs
old
versions of browsers implemented the non-standard and non-cross-browser-compatible mousewheelevent and mousescrollevent interfaces.
Window.navigator - Web APIs
se if (susrag.indexof("chrome") > -1) { sbrowser = "google chrome or chromium"; // "mozilla/5.0 (x11; linux x86_64) applewebkit/537.36 (khtml, like gecko) ubuntu chromium/66.0.3359.181 chrome/66.0.3359.181 safari/537.36" } else if (susrag.indexof("safari") > -1) { sbrowser = "apple safari"; // "mozilla/5.0 (iphone; cpu iphone os 11_4 like mac os x) applewebkit/605.1.15 (khtml, like gecko)
version/11.0 mobile/15e148 safari/604.1 980x1306" } else { sbrowser = "unknown"; } alert("you are using: " + sbrowser); specifications specification status comment html living standardthe definition of 'window: navigator' in that specification.
Window: offline event - Web APIs
bubbles no cancelable no interface event event handler property onoffline examples // addeventlistener
version window.addeventlistener('offline', (event) => { console.log("the network connection has been lost."); }); // onoffline
version window.onoffline = (event) => { console.log("the network connection has been lost."); }; specifications specification status html living standardthe definition of 'offline event' in that specification.
Window: online event - Web APIs
bubbles no cancelable no interface event event handler property ononline examples // addeventlistener
version window.addeventlistener('online', (event) => { console.log("you are now connected to the network."); }); // ononline
version window.ononline = (event) => { console.log("you are now connected to the network."); }; specifications specification status html living standardthe definition of 'online event' in that specification.
Window.requestAnimationFrame() - Web APIs
element.style.transform = 'translatex(' + math.min(0.1 * elapsed, 200) + 'px)'; if (elapsed < 2000) { // stop the animation after 2 seconds window.requestanimationframe(step); } } window.requestanimationframe(step); notes edge
versions below 17 and internet explorer do not reliably fire requestanimationframe before the paint cycle.
Window.screen - Web APIs
syntax let screenobj = window.screen; example if (screen.pixeldepth < 8) { // use low-color
version of page } else { // use regular, colorful page } specifications specification status comment css object model (cssom) view modulethe definition of 'window.screen' in that specification.
Window.scrollX - Web APIs
additionally, older
versions of internet explorer (< 9) do not support either property and must be worked around by checking other non-standard properties.
Window.scrollY - Web APIs
additionally, older
versions of internet explorer (< 9) do not support either property and must be worked around by checking other non-standard properties.
WindowOrWorkerGlobalScope.btoa() - Web APIs
odeunits[i] = string.charcodeat(i); } return string.fromcharcode(...new uint8array(codeunits.buffer)); } // a string that contains characters occupying > 1 byte const mystring = "☸☹☺☻☼☾☿"; const converted = tobinary(mystring); const encoded = btoa(converted); console.log(encoded); // ocy5jjomoyy8jj4mpyy= if you do this, of course you'll have to reverse the con
version on the decoded string: function frombinary(binary) { const bytes = new uint8array(binary.length); for (let i = 0; i < bytes.length; i++) { bytes[i] = binary.charcodeat(i); } return string.fromcharcode(...new uint16array(bytes.buffer)); } const decoded = atob(encoded); const original = frombinary(decoded); console.log(original); // ☸☹☺☻☼☾☿ polyfill you...
WorkerGlobalScope.navigator - Web APIs
og(self.navigator);, as these are being called on the worker scope, which can be referenced with workerglobalscope.self), you will get a workernavigator object written to the console — something like the following: object {online: true, useragent: "mozilla/5.0 (macintosh; intel mac os x 10_10_1) ap…ml, like gecko) chrome/40.0.2214.93 safari/537.36", product: "gecko", platform: "macintel", app
version: "5.0 (macintosh; intel mac os x 10_10_1) applewebki…ml, like gecko) chrome/40.0.2214.93 safari/537.36"…} appcodename: "mozilla" appname: "netscape" app
version: "5.0 (macintosh; intel mac os x 10_10_1) applewebkit/537.36 (khtml, like gecko) chrome/40.0.2214.93 safari/537.36" hardwareconcurrency: 4 online: true platform: "macintel" product: "gecko" useragent: "m...
WorkerGlobalScope - Web APIs
in newer browser
versions, close() is available on dedicatedworkerglobalscope and sharedworkerglobalscope instead.
Worklet - Web APIs
the worklet interface is a lightweight
version of web workers and gives developers access to low-level parts of the rendering pipeline.
How to check the security state of an XMLHTTPRequest over SSL - Web APIs
r_no_certificate, ssl(3) errname = 'securitynocertificateerror'; break; case 4: // ssl_error_bad_certificate, ssl(4) errname = 'securitybadcertificateerror'; break; case 8: // ssl_error_unsupported_certificate_type, ssl(8) errname = 'securityunsupportedcertificatetypeerror'; break; case 9: // ssl_error_unsupported_
version, ssl(9) errname = 'securityunsupportedtls
versionerror'; break; case 12: // ssl_error_bad_cert_domain, ssl(12) errname = 'securitycertificatedomainmismatcherror'; break; default: errname = 'securityerror'; break; } } } else { errtype = 'network'; switch (status) { // connect to host:port failed ...
XMLHttpRequest() - Web APIs
setting the mozanon flag to true effectively resembles the anonxmlhttprequest() constructor described in older
versions of the xmlhttprequest specification.
XRRenderStateInit - Web APIs
the xrrenderstateinit dictionary is a writeable
version of the xrrenderstate interface, and is used when calling an xrsession's updaterenderstate() method to apply changes to the render state prior to rendering the next frame.
XRSystem - Web APIs
usage notes thsi interface was previously known as simply xr in earlier
versions of the specification; if you see references to xr in code or documentation, simply replace that with xrsystem.
Web APIs
fparams hmacimportparams hmackeygenparams i idbcursor idbcursorsync idbcursorwithvalue idbdatabase idbdatabaseexception idbdatabasesync idbenvironment idbenvironmentsync idbfactory idbfactorysync idbindex idbindexsync idbkeyrange idblocaleawarekeyrange idbmutablefile idbobjectstore idbobjectstoresync idbopendbrequest idbrequest idbtransaction idbtransactionsync idb
versionchangeevent idb
versionchangerequest iirfilternode idledeadline imagebitmap imagebitmaprenderingcontext imagecapture imagedata index inputdevicecapabilities inputevent installevent installtrigger intersectionobserver intersectionobserverentry interventionreportbody k keyboard keyboardevent keyboardlayoutmap keyframeeffect keyframeeffectoptions l largestcontentfulpaint layout...
Alerts - Accessibility
jaws 9 supports this, but jaws 8 does not, so this may not work in all
versions of the screen readers supported.
Accessibility documentation index - Accessibility
5 aria annotations aria, accessibility, wai-aria, annotations, comments, details, suggestions wai-aria
version 1.3 sees the addition of a set of new features, collectively known as aria annotations, which allow the creation of accessible annotations inside web documents.
Perceivable - Accessibility
1.2.7 provide extended video with audio descriptions (aaa) where audio descriptions cannot be provided (see 1.2.5) due to video timing issues (e.g., there are no suitable pauses in the content in which to insert the audio descriptions), an alternative
version of the video should be provided that includes inserted pauses (and audio descriptions).
Text labels and names - Accessibility
<legend>choose your favorite monster</legend> <input type="radio" id="kraken" name="monster"> <label for="kraken">kraken</label><br/> <input type="radio" id="sasquatch" name="monster"> <label for="sasquatch">sasquatch</label><br/> <input type="radio" id="mothman" name="monster"> <label for="mothman">mothman</label> </fieldset> </form> you can see a live, interactive
version of this example on the <fieldset> reference page.
Understandable - Accessibility
3.1.5 reading level (aaa) if text is provided that requires a higher reading level that lower secondary education level (typically children around 11-14 years old), provide supplementary explainer material to help people who can't read it, or provide an alternative
version that is written at lower secondary level.
-moz-outline-radius - CSS: Cascading Style Sheets
html <p>this element has a rounded outline!</p> css p { margin: 5px; border: 1px solid black; outline: dotted red; -moz-outline-radius: 12% 1em 25px; } result notes dotted or dashed radiused corners were rendered as solid until firefox 50, bug 382721 future
versions of gecko/firefox may drop this property completely.
font-weight - CSS: Cascading Style Sheets
in earlier
versions of the font-weight specification, the property accepts only keyword values and the numeric values 100, 200, 300, 400, 500, 600, 700, 800, and 900; non-variable fonts can only really make use of these set values, although fine-grained values (e.g.
Color picker tool - CSS: Cascading Style Sheets
if (valid !== true) return; if (value[0] === '#') value = value.slice(1, value.length); if (value.length === 3) value = value.replace(/([0-9a-f])([0-9a-f])([0-9a-f])/i,'$1$1$2$2$3$3'); this.r = parseint(value.substr(0, 2), 16); this.g = parseint(value.substr(2, 2), 16); this.b = parseint(value.substr(4, 2), 16); this.alpha = 1; this.rgbtohsv(); }; /*========== con
version methods ==========*/ color.prototype.converttohsl = function converttohsl() { if (this.format === 'hsl') return; this.setformat('hsl'); this.rgbtohsl(); }; color.prototype.converttohsv = function converttohsv() { if (this.format === 'hsv') return; this.setformat('hsv'); this.rgbtohsv(); }; /*========== update methods ==========*/ color.prototype.updatergb = function ...
CSS Flexible Box Layout - CSS: Cascading Style Sheets
backwards compatibility of flexbox browser status of flexbox, interoperability issues and supporting older browsers and
versions of the spec specifications specification status comment css flexible box layout module candidate recommendation initial definition.
Realizing common layouts using CSS Grid Layout - CSS: Cascading Style Sheets
@media (min-width: 500px) { .side { grid-column: col-start / span 3; grid-row: 3; } .ad { grid-column: col-start / span 3; grid-row: 4; } .content, .main-footer { grid-column: col-start 4 / span 9; } nav ul { display: flex; justify-content: space-between; } } finally we go to the three-column
version of this layout.
The stacking context - CSS: Cascading Style Sheets
an easy way to figure out the rendering order of stacked elements along the z axis is to think of it as a "
version number" of sorts, where child elements are minor
version numbers underneath their parent's major
version numbers.
Shorthand properties - CSS: Cascading Style Sheets
can be simplified as: border: 1px solid #000; margin and padding properties shorthand
versions of margin and padding values work similarly; the margin property allows for shorthand values to be specified using one, two, three, or four values.
Linear-gradient Generator - CSS: Cascading Style Sheets
if (valid !== true) return; if (value[0] === '#') value = value.slice(1, value.length); if (value.length === 3) value = value.replace(/([0-9a-f])([0-9a-f])([0-9a-f])/i,'$1$1$2$2$3$3'); this.r = parseint(value.substr(0, 2), 16); this.g = parseint(value.substr(2, 2), 16); this.b = parseint(value.substr(4, 2), 16); this.alpha = 1; this.rgbtohsv(); }; /*========== con
version methods ==========*/ color.prototype.converttohsl = function converttohsl() { if (this.format === 'hsl') return; this.setformat('hsl'); this.rgbtohsl(); }; color.prototype.converttohsv = function converttohsv() { if (this.format === 'hsv') return; this.setformat('hsv'); this.rgbtohsv(); }; /*========== update methods ==========*/ color.prototype.updatergb = function ...
background-size - CSS: Cascading Style Sheets
ar-gradient(blue, red); /* not safe to use */ background-size: 25px; background-size: 50%; background-size: auto 50px; background-size: auto 50%; /* safe to use */ background-size: 25px 50px; background-size: 50% 50%; } note that it's particularly not recommended to use a pixel dimension and an auto dimension with a <gradient>, because it's impossible to replicate rendering in
versions of firefox prior to 8, and in browsers not implementing firefox 8's rendering, without knowing the exact size of the element whose background is being specified.
box-flex-group - CSS: Cascading Style Sheets
formal syntax <integer> examples simple usage example in the original flexbox spec, box-flex-group could be used to assign flex children to different groups to distribute flexible space between: article:nth-child(1) { -webkit-box-flex-group: 1; } article:nth-child(2) { -webkit-box-flex-group: 2; } this was only ever supported in webkit-based browsers, with a prefix, and in subsequent
versions of the spec this functionality does not have an equivalent.
box-lines - CSS: Cascading Style Sheets
formal definition initial valuesingleapplies tobox elementsinheritednocomputed valueas specifiedanimation typediscrete formal syntax single | multiple examples simple usage example in the original
version of the spec, box-lines allowed you to specify that you wanted your flex container's children to wrap onto multiple lines.
box-ordinal-group - CSS: Cascading Style Sheets
formal definition initial value1applies tochildren of box elementsinheritednocomputed valueas specifiedanimation typediscrete formal syntax <integer> examples basic usage example in an older
version of the spec, box-ordinal-group was included to allow you to change the display order of flex children inside a flex container: article:nth-child(1) { -webkit-box-ordinal-group: 2 -moz-box-ordinal-group: 2 box-ordinal-group: 2 } article:nth-child(2) { -webkit-box-ordinal-group: 1 -moz-box-ordinal-group: 1 box-ordinal-group: 1 } the modern flexbox equivalent is order.
float - CSS: Cascading Style Sheets
e-caption block table-header-group block table-footer-group block inline-flex flex inline-grid grid other unchanged note: if you're referring to this property from javascript as a member of the htmlelement.style object, modern browsers support float, but in older browsers you have to spell it as cssfloat, with internet explorer
versions 8 and older using stylefloat.
font-language-override - CSS: Cascading Style Sheets
for example, a lot of fonts have a special character for the digraph fi that merge the dot on the "i" with the "f." however, if the language is set to turkish the typeface will likely know not to use the merged glyph; turkish has two
versions of the "i," one with a dot (i) and one without (ı), and using the ligature would incorrectly transform a dotted "i" into a dotless "i." the font-language-override property lets you override the typeface behavior for a specific language.
font-smooth - CSS: Cascading Style Sheets
for those of you not on a macos system, here is a screenshot (the live
version appears later on): html <p>without font smoothing</p> <p class="smoothed">with font smoothing</p> css html { background-color: black; color: white; font-size: 3rem; } p { text-align: center; } .smoothed { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } result specifications not part of any standard.
font-variant-numeric - CSS: Cascading Style Sheets
lining-nums | oldstyle-nums ]<numeric-spacing-values> = [ proportional-nums | tabular-nums ]<numeric-fraction-values> = [ diagonal-fractions | stacked-fractions ] examples setting ordinal numeric forms html <p class="ordinal">1st, 2nd, 3rd, 4th, 5th</p> css /* this example uses the source sans pro opentype font, developed by adobe and used here under the terms of the sil open font license,
version 1.1: http://scripts.sil.org/cms/scripts/page.php?item_id=ofl_web */ @font-face { font-family: "source sans pro"; font-style: normal; font-weight: 400; src: url("https://mdn.mozillademos.org/files/15757/sourcesanspro-regular.otf") format("opentype"); } .ordinal { font-variant-numeric: ordinal; font-family: "source sans pro"; } result specifications specification sta...
font-weight - CSS: Cascading Style Sheets
in earlier
versions of the font-weight specification, the property accepts only keyword values and the numeric values 100, 200, 300, 400, 500, 600, 700, 800, and 900; non-variable fonts can only really make use of these set values, although fine-grained values (e.g.
image-set() - CSS: Cascading Style Sheets
examples background-image: image-set( "cat.png" 1x, "cat-2x.png" 2x, "cat-print.png" 600dpi); this example shows how to use image-set() to provide two alternative background-image options, chosen depending on the resolution needed: a normal
version and a high-resolution
version.
ime-mode - CSS: Cascading Style Sheets
users may correct the inappropriate behavior of sites that don't follow this recommendation by placing the following css into their user stylesheet: input[type=password] { ime-mode: auto !important; } the mac
version of gecko 1.9 (firefox 3) can't recover the previous state of the ime when a field for which it is disabled loses focus, so mac users may get grumpy when you use the disabled value.
mask-border-outset - CSS: Cascading Style Sheets
mask-border-outset: 1rem; chromium-based browsers support an outdated
version of this property — mask-box-image-outset — with a prefix: -webkit-mask-box-image-outset: 1rem; note: the mask-border page features a working example (using the out-of-date prefixed border mask properties supported in chromium), so you can get an idea of the effect.
mask-border-repeat - CSS: Cascading Style Sheets
mask-border-repeat: round; chromium-based browsers support an outdated
version of this property — mask-box-image-repeat — with a prefix: -webkit-mask-box-image-repeat: round; note: the mask-border page features a working example (using the out-of-date prefixed border mask properties supported in chromium), so you can get an idea of the effect.
mask-border-slice - CSS: Cascading Style Sheets
mask-border-slice: 30 fill; chromium-based browsers support an outdated
version of this property — mask-box-image-slice — with a prefix: -webkit-mask-box-image-slice: 30 fill; note: the mask-border page features a working example (using the out-of-date prefixed border mask properties supported in chromium), so you can get an idea of the effect.
mask-border-source - CSS: Cascading Style Sheets
mask-border-source: url(image.jpg); chromium-based browsers support an outdated
version of this property — mask-box-image-source — with a prefix: -webkit-mask-box-image-source: url(image.jpg); note: the mask-border page features a working example (using the out-of-date prefixed border mask properties supported in chromium), so you can get an idea of the effect.
mask-border-width - CSS: Cascading Style Sheets
mask-border-width: 30 fill; chromium-based browsers support an outdated
version of this property — mask-box-image-width — with a prefix: -webkit-mask-box-image-width: 20px; note: the mask-border page features a working example (using the out-of-date prefixed border mask properties supported in chromium), so you can get an idea of the effect.
transform-box - CSS: Cascading Style Sheets
k properly on chrome for mac, ff, safari will still work properly on chrome for pc & opera*/ transform-box: fill-box; /*alternatively i can use transform-origin:15px 15px;*/ /*+++++++++++++++++++++++++++*/ animation: rotatebox 3s linear infinite; } @keyframes rotatebox { to { transform: rotate(360deg); } full credit for this example goes to pogany; see this codepen for a live
version.
set:difference() - EXSLT
the template
version of set:difference applies templates to these nodes in set:difference mode, copying the nodes so that a result tree fragment consisting of the nodes is returned.
EXSLT
for example, to use the regular expressions package: <xsl:stylesheet
version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform" xmlns:regexp="http://exslt.org/regular-expressions"> <xsl:template match="/"> ...
HTML5 Parser - Developer guides
changed parser behaviors some changes to the way that the gecko 2 parser behaves, as compared to earlier
versions of gecko, may affect web developers, depending on how you've written your code in the past and what browsers you've tested it on.
HTML5 - Developer guides
it is a new
version of the language html, with new elements, attributes, and behaviors, and a larger set of technologies that allows the building of more diverse and powerful web sites and applications.
XHTML - Developer guides
html document content-type: text/html <!doctype html> <html lang=en> <head> <meta charset=utf-8> <title>html</title> </head> <body> <p>i am a html document</p> </body> </html> xhtml document content-type: application/xhtml+xml <?xml
version="1.0" encoding="utf-8"?> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <title>xhtml</title> </head> <body> <p>i am a xhtml document</p> </body> </html> in practice, very few "xhtml" documents are served over the web with a content-type: application/xhtml+xml header.
HTML attribute: rel - HTML: Hypertext Markup Language
<link rel="alternate" type="application/atom+xml" href="posts.xml" title="blog"> both the hreflang and type attributes specify links to
versions of the document in an alternative format and language, intended for other media: <link rel=alternate href="/fr/html/print" hreflang=fr type=text/html media=print title="french html (for printing)"> <link rel=alternate href="/fr/pdf" hreflang=fr type=application/pdf title="french pdf"> author indicates the author of the current document or article.
<figure>: The Figure with Optional Caption element - HTML: Hypertext Markup Language
pple.com/samples/6c/98485e5d8a.png" alt="the beautiful mdn logo."> <figcaption>mdn logo</figcaption> </figure> code snippets <figure> <figcaption>get browser details using <code>navigator</code>.</figcaption> <pre> function navigatorexample() { var txt; txt = "browser codename: " + navigator.appcodename + "; "; txt+= "browser name: " + navigator.appname + "; "; txt+= "browser
version: " + navigator.app
version + "; "; txt+= "cookies enabled: " + navigator.cookieenabled + "; "; txt+= "platform: " + navigator.platform + "; "; txt+= "user-agent header: " + navigator.useragent + "; "; console.log("navigatorexample", txt); } </pre> </figure> quotations <figure> <figcaption><cite>edsger dijkstra:</cite></figcaption> <blockquote>if debugging is the process of re...
<form> - HTML: Hypertext Markup Language
(in previous
versions of html, character encodings could also be delimited by commas.) autocapitalize a nonstandard attribute used by ios safari that controls how textual form elements should be automatically capitalized.
<i>: The Idiomatic Text element - HTML: Hypertext Markup Language
om another language (such as "et cetera"); these should include the lang attribute to identify the language technical terms transliterations thoughts (such as "she wondered,what is this writer talking about, anyway?") ship or vessel names in western writing systems (such as "they searched the docks for the empress of the galaxy, the ship to which they were assigned.") in earlier
versions of the html specification, the <i> element was merely a presentational element used to display text in italics, much like the <b> element was used to display text in bold letters.
<input type="number"> - HTML: Hypertext Markup Language
for example, let's give our example a minimum of 0, and a maximum of 100: <input type="number" placeholder="multiple of 10" step="10" min="0" max="100"> in this updated
version, you should find that the up and down step buttons will not allow you to go below 0 or above 100.
<tfoot>: The Table Foot element - HTML: Hypertext Markup Language
white = "#ffffff" yellow = "#ffff00" maroon = "#800000" navy = "#000080" red = "#ff0000" blue = "#0000ff" purple = "#800080" teal = "#008080" fuchsia = "#ff00ff" aqua = "#00ffff" usage note: do not use this attribute, as it is non-standard and only implemented some
versions of microsoft internet explorer: the <tfoot> element should be styled using css.
<th> - HTML: Hypertext Markup Language
white = "#ffffff" yellow = "#ffff00" maroon = "#800000" navy = "#000080" red = "#ff0000" blue = "#0000ff" purple = "#800080" teal = "#008080" fuchsia = "#ff00ff" aqua = "#00ffff" note: do not use this attribute, as it is non-standard and only implemented in some
versions of microsoft internet explorer: the <th> element should be styled using css.
<thead>: The Table Head element - HTML: Hypertext Markup Language
white = "#ffffff" yellow = "#ffff00" maroon = "#800000" navy = "#000080" red = "#ff0000" blue = "#0000ff" purple = "#800080" teal = "#008080" fuchsia = "#ff00ff" aqua = "#00ffff" usage note: do not use this attribute, as it is non-standard and only implemented in some
versions of microsoft internet explorer: the <thead> element should be styled using css.
itemprop - HTML: Hypertext Markup Language
op="nationality">british</span>.</p> </div> one property, "image", whose value is a url <div itemscope> <img itemprop="image" src="google-logo.png" alt="google"> </div> when a string value can't be easily read and understood by a person (e.g., a long string of numbers and letters), it can be displayed using the value attribute of the data element, with the more easily-understood-by-a human-
version given in the element's contents (which is not part of the structured data - see example below).
Forwarded - HTTP
the alternative and de-facto standard
versions of this header are the x-forwarded-for, x-forwarded-host and x-forwarded-proto headers.
Origin - HTTP
usually it is the http protocol or its secured
version, https.
Set-Cookie2 - HTTP
set-cookie2: <cookie-name>=<cookie-value>; discard set-cookie2: <cookie-name>=<cookie-value>; domain=<domain-value> set-cookie2: <cookie-name>=<cookie-value>; max-age=<non-zero-digit> set-cookie2: <cookie-name>=<cookie-value>; path=<path-value> set-cookie2: <cookie-name>=<cookie-value>; port=<port-number> set-cookie2: <cookie-name>=<cookie-value>; secure set-cookie2: <cookie-name>=<cookie-value>;
version=<
version-number> // multiple directives are also possible, for example: set-cookie2: <cookie-name>=<cookie-value>; domain=<domain-value>; secure // multiple cookies are seperated by a comma set-cookie2: <cookie-name>=<cookie-value>, <cookie-name>=<cookie-value>, ...
Upgrade-Insecure-Requests - HTTP
header type request header forbidden header name no syntax upgrade-insecure-requests: 1 examples a client's request signals to the server that it supports the upgrade mechanisms of upgrade-insecure-requests: get / http/1.1 host: example.com upgrade-insecure-requests: 1 the server can now redirect to a secure
version of the site.
X-Frame-Options - HTTP
configuring haproxy to configure haproxy to send the x-frame-options header, add this to your front-end, listen, or backend configuration: rspadd x-frame-options:\ sameorigin alternatively, in newer
versions: http-response set-header x-frame-options sameorigin configuring express to configure express to send the x-frame-options header, you can use helmet which uses frameguard to set the header.
Proxy servers and tunneling - HTTP
or the de-facto standard
versions: x-forwarded-for identifies the originating ip addresses of a client connecting to a web server through an http proxy or a load balancer.
Redirections in HTTP - HTTP
forcing https requests to the http://
version of your site will redirect to the https://
version of your site.
409 Conflict - HTTP
for example, you may get a 409 response when uploading a file which is older than the one already on the server resulting in a
version control conflict.
422 Unprocessable Entity - HTTP
status 422 unprocessable entity specifications specification title rfc 4918, section 11.2: 422 unprocessable entity http extensions for web distributed authoring and
versioning (webdav) ...
HTTP
evolution of http a brief description of the changes between the early
versions of http, to the modern http/2, the emergent http/3 and beyond.
Closures - JavaScript
each closure references a different
version of the privatecounter variable through its own closure.
Details of the object model - JavaScript
while (object != null) { if (object == constructor.prototype) return true; if (typeof object == 'xml') { return constructor.prototype == xml.prototype; } object = object.__proto__; } return false; } note: the implementation above checks the type of the object against "xml" in order to work around a quirk of how xml objects are represented in recent
versions of javascript.
Loops and iteration - JavaScript
you can think of a loop as a computerized
version of the game where you tell someone to take x steps in one direction, then y steps in another.
JavaScript technologies overview - JavaScript
a prototype-based inheritance mechanism built-in objects and functions (json, math, array.prototype methods, object introspection methods, etc.) strict mode browser support as of october 2016, the current
versions of the major web browsers implement ecmascript 5.1 and ecmascript 2015, but older
versions (still in use) implement ecmascript 5 only.
The legacy Iterator protocol - JavaScript
the deprecated firefox-only iterator protocol firefox, prior to
version 26 implemented another iterator protocol that is similar to the standard es2015 iterator protocol.
SyntaxError: missing variable name - JavaScript
var x, y = "foo", var x, = "foo" var first = document.getelementbyid('one'), var second = document.getelementbyid('two'), // syntaxerror: missing variable name the fixed
version: var x, y = "foo"; var x = "foo"; var first = document.getelementbyid('one'); var second = document.getelementbyid('two'); arrays array literals in javascript need square brackets around the values.
SyntaxError: "x" is a reserved identifier - JavaScript
var colorenum = { red: 0, green: 1, blue: 2 }; var list = ["potatoes", "rice", "fries"]; update older browsers if you are using an older browser that does not yet implement let or class, for example, you should update to a more recent browser
version that does support these new language features.
arguments.callee - JavaScript
(adapted from a stack overflow answer by olliej) early
versions of javascript did not allow named function expressions, and for this reason you could not make a recursive function expression.
Array.prototype.forEach() - JavaScript
nverting a for loop to foreach const items = ['item1', 'item2', 'item3'] const copyitems = [] // before for (let i = 0; i < items.length; i++) { copyitems.push(items[i]) } // after items.foreach(function(item){ copyitems.push(item) }) printing the contents of an array note: in order to display the content of an array in the console, you can use console.table(), which prints a formatted
version of the array.
Array - JavaScript
the 2 in years[2] is coerced into a string by the javascript engine through an implicit tostring con
version.
Date() constructor - JavaScript
(these formats are ietf-compliant rfc 2822 timestamps, and also strings in a
version of iso8601.) note: parsing of date strings with the date constructor (and date.parse(), which works the same way) is strongly discouraged due to browser differences and inconsistencies.
Date.parse() - JavaScript
therefore date objects produced using those strings may represent different moments in time depending on the
version of ecmascript supported unless the system is set with a local time zone of utc.
Date.prototype.setHours() - JavaScript
syntax dateobj.sethours(hoursvalue[, minutesvalue[, secondsvalue[, msvalue]]])
versions prior to javascript 1.3 dateobj.sethours(hoursvalue) parameters hoursvalue ideally, an integer between 0 and 23, representing the hour.
Date.prototype.setMinutes() - JavaScript
syntax dateobj.setminutes(minutesvalue[, secondsvalue[, msvalue]])
versions prior to javascript 1.3 dateobj.setminutes(minutesvalue) parameters minutesvalue an integer between 0 and 59, representing the minutes.
Date.prototype.setMonth() - JavaScript
syntax dateobj.setmonth(monthvalue[, dayvalue])
versions prior to javascript 1.3 dateobj.setmonth(monthvalue) parameters monthvalue a zero-based integer representing the month of the year offset from the start of the year.
Date.prototype.setSeconds() - JavaScript
syntax dateobj.setseconds(secondsvalue[, msvalue])
versions prior to javascript 1.3 dateobj.setseconds(secondsvalue) parameters secondsvalue an integer between 0 and 59, representing the seconds.
EvalError - JavaScript
however, the object itself remains for backwards compatibility with earlier
versions of the specification.
Intl.Collator() constructor - JavaScript
different potential results for a string occurring before, after, or at the same level as another: console.log(new intl.collator().compare('a', 'c')); // → a negative value console.log(new intl.collator().compare('c', 'a')); // → a positive value console.log(new intl.collator().compare('a', 'a')); // → 0 note that the results shown in the code above can vary between browsers and browser
versions.
Intl.Collator - JavaScript
different potential results for a string occurring before, after, or at the same level as another: console.log(new intl.collator().compare('a', 'c')); // → a negative value console.log(new intl.collator().compare('c', 'a')); // → a positive value console.log(new intl.collator().compare('a', 'a')); // → 0 note that the results shown in the code above can vary between browsers and browser
versions.
Intl.ListFormat.prototype.formatToParts() - JavaScript
description whereas intl.listformat.prototype.format() returns a string being the formated
version of the list (according to the given locale and style options), formattoparts() returns an array of the different components of the formated string.
Intl.Locale.prototype.collation - JavaScript
valid collation types collation type description big5han pinyin ordering for latin, big5 charset ordering for cjk characters (used in chinese) compat a previous
version of the ordering, for compatibility dict dictionary style ordering (such as in sinhala) the direct collation type has been deprected.
Intl.RelativeTimeFormat.prototype.formatToParts() - JavaScript
description the intl.relativetimeformat.prototype.formattoparts method is a
version of the format method which it returns an array of objects which represent "parts" of the object, separating the formatted number into its consituent parts and separating it from other surrounding text.
JSON - JavaScript
examples example json { "browsers": { "firefox": { "name": "firefox", "pref_url": "about:config", "releases": { "1": { "release_date": "2004-11-09", "status": "retired", "engine": "gecko", "engine_
version": "1.7" } } } } } specifications specification ecmascript (ecma-262)the definition of 'json' in that specification.
Math.imul() - JavaScript
this is because of the costly con
version from a floating point to an integer for multiplication, and then converting the multiplied integer back into a floating point.
Math.sign() - JavaScript
negative, then negative one // || // if x is 0, -0, or nan, or not a number, // +x // then the result will be x, (or) if x is // // not a number, then x converts to number }; } in the above polyfill, no extra type-coercing is needed to make (x > 0) or (x < 0) numbers because subtracting them from each other forces a type con
version from booleans to numbers.
RegExp.prototype.sticky - JavaScript
examples using a regular expression with the sticky flag var str = '#foo#'; var regex = /foo/y; regex.lastindex = 1; regex.test(str); // true regex.lastindex = 5; regex.test(str); // false (lastindex is taken into account with sticky flag) regex.lastindex; // 0 (reset after match failure) anchored sticky flag for several
versions, firefox's spidermonkey engine had a bug with regard to the ^ assertion and the sticky flag which allowed expressions starting with the ^ assertion and using the sticky flag to match when they shouldn't.
Set - JavaScript
in an earlier
version of ecmascript specification, this was not based on the same algorithm as the one used in the === operator.
String.prototype.padStart() - JavaScript
examples basic examples 'abc'.padstart(10); // " abc" 'abc'.padstart(10, "foo"); // "foofoofabc" 'abc'.padstart(6,"123465"); // "123abc" 'abc'.padstart(8, "0"); // "00000abc" 'abc'.padstart(1); // "abc" fixed width string number con
version // javascript
version of: (unsigned) // printf "%0*d" width num function leftfillnum(num, targetlength) { return num.tostring().padstart(targetlength, 0); } const num = 123; console.log(leftfillnum(num, 5)); // expected output: "00123" specifications specification ecmascript (ecma-262)the definition of 'string.prototype.padstart' in that specification.
String.prototype.toUpperCase() - JavaScript
examples basic usage console.log('alphabet'.touppercase()); // 'alphabet' con
version of non-string this values to strings this method will convert any non-string value to a string, when you set its this to a value that is not a string: const a = string.prototype.touppercase.call({ tostring: function tostring() { return 'abcdef'; } }); const b = string.prototype.touppercase.call(true); // prints out 'abcdef true'.
WebAssembly.Table() constructor - JavaScript
examples creating a new webassembly table instance the following example (see table2.html source code and live
version) creates a new webassembly table instance with an initial size of 2 elements.
WebAssembly.Table - JavaScript
examples creating a new webassembly table instance the following example (see table2.html source code and live
version) creates a new webassembly table instance with an initial size of 2 elements.
WebAssembly.instantiate() - JavaScript
if at all possible, you should use the newer webassembly.instantiatestreaming() method instead, which fetches, compiles, and instantiates a module all in one step, directly from the raw bytecode, so doesn't require con
version to an arraybuffer.
decodeURI() - JavaScript
return value a new string representing the unencoded
version of the given encoded uniform resource identifier (uri).
eval() - JavaScript
but, in the code using eval(), the browser cannot assume this since what if your code looked like the following: function date(n){ return ["monday","tuesday","wednesday","thursday","friday","saturday","sunday"][n%7 || 0]; } function loosejsonparse(obj){ return eval("(" + obj + ")"); } console.log(loosejsonparse( "{a:(4-1), b:function(){}, c:new date()}" )) thus, in the eval()
version of the code, the browser is forced to make the expensive lookup call to check to see if there are any local variables called date().
isNaN() - JavaScript
confusing special-case behavior since the very earliest
versions of the isnan function specification, its behavior for non-numeric arguments has been confusing.
null - JavaScript
it is not defined and has never been initialized: foo; //referenceerror: foo is not defined // foo is known to exist now but it has no type or value: var foo = null; foo; //null examples difference between null and undefined when checking for null or undefined, beware of the differences between equality (==) and identity (===) operators, as the former performs type-con
version.
Inequality (!=) - JavaScript
like the equality operator, the inequality operator will attempt to convert and compare operands of different types: 3 != "3"; // false to prevent this, and require that different types are considered to be different, use the strict inequality operator instead: 3 !== "3"; // true examples comparison with no type con
version 1 != 2; // true "hello" != "hola"; // true 1 != 1; // false "hello" != "hello"; // false comparison with type con
version "1" != 1; // false 1 != "1"; // false 0 != false; // false 0 != null; // true 0 != undefined; // true 0 != !!null; // false, look at logical not operator 0 != !!undefined; // false,...
Logical AND (&&) - JavaScript
s true a2 = true && false // t && f returns false a3 = false && true // f && t returns false a4 = false && (3 == 4) // f && f returns false a5 = 'cat' && 'dog' // t && t returns "dog" a6 = false && 'cat' // f && t returns false a7 = 'cat' && false // t && f returns false a8 = '' && false // f && f returns "" a9 = false && '' // f && f returns false con
version rules for booleans converting and to or the following operation involving booleans: bcondition1 && bcondition2 is always equal to: !(!bcondition1 || !bcondition2) converting or to and the following operation involving booleans: bcondition1 || bcondition2 is always equal to: !(!bcondition1 && !bcondition2) removing nested parentheses as logical expressions are evaluated left to right, ...
Logical OR (||) - JavaScript
con
version rules for booleans converting and to or the following operation involving booleans: bcondition1 && bcondition2 is always equal to: !(!bcondition1 || !bcondition2) converting or to and the following operation involving booleans: bcondition1 || bcondition2 is always equal to: !(!bcondition1 && !bcondition2) removing nested parentheses as logical expressions are evaluated left to right, ...
await - JavaScript
} f2(); con
version to promise if the value is not a promise, it converts the value to a resolved promise, and waits for it.
this - JavaScript
a = 'global'; function whatsthis() { return this.a; // the value of this is dependent on how the function is called } whatsthis(); // 'global' as this in the function isn't set, so it defaults to the global/window object whatsthis.call(obj); // 'custom' as this in the function is set to obj whatsthis.apply(obj); // 'custom' as this in the function is set to obj this and object con
version function add(c, d) { return this.a + this.b + c + d; } var o = {a: 1, b: 3}; // the first parameter is the object to use as // 'this', subsequent parameters are passed as // arguments in the function call add.call(o, 5, 7); // 16 // the first parameter is the object to use as // 'this', the second is an array whose // members are used as the arguments in the function call add.apply(o, [10, ...
yield - JavaScript
it can be thought of as a generator-based
version of the return keyword.
function* - JavaScript
generators in javascript -- especially when combined with promises -- are a very powerful tool for asynchronous programming as they mitigate -- if not entirely eliminate -- the problems with callbacks, such as callback hell and in
version of control.
import - JavaScript
the simplest
version directly imports the default: import mydefault from '/modules/my-module.js'; it is also possible to use the default syntax with the ones seen above (namespace imports or named imports).
Template literals (Template strings) - JavaScript
r example \u{2f804} hexadecimal escapes started by "\x", for example \xa9 octal literal escapes started by "\0o" and followed by one or more digits, for example \0o251 this means that a tagged template like the following is problematic, because, per ecmascript grammar, a parser looks for valid unicode escape sequences, but finds malformed syntax: latex`\unicode` // throws in older ecmascript
versions (es2016 and earlier) // syntaxerror: malformed unicode character escape sequence es2018 revision of illegal escape sequences tagged templates should allow the embedding of languages (for example dsls, or latex), where other escapes sequences are common.
JavaScript typed arrays - JavaScript
con
version to normal arrays after processing a typed array, it is sometimes useful to convert it back to a normal array in order to benefit from the array prototype.
Web app manifests
pwa manifests include its name, author, icon(s),
version, description, and list of all the necessary resources (among other things).
<math> - MathML
hml in html5</title> </head> <body> <math> <mrow> <mrow> <msup> <mi>a</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>b</mi> <mn>2</mn> </msup> </mrow> <mo>=</mo> <msup> <mi>c</mi> <mn>2</mn> </msup> </mrow> </math> </body> </html> xhtml notation <?xml
version="1.0" encoding="utf-8"?> <!doctype html public "-//w3c//dtd xhtml 1.1 plus mathml 2.0//en" "http://www.w3.org/math/dtd/mathml2/xhtml-math11-f.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>mathml in xhtml</title> </head> <body> <math xmlns="http://www.w3.org/1998/math/mathml"> <mrow> <mrow> <msup> <mi>a</mi> <mn>2</mn> </msup> ...
<mstyle> - MathML
the main effect is that larger
versions of operators are displayed, when displaystyle is set to true.
<mtable> - MathML
the main effect is that larger
versions of operators are displayed, when displaystyle is set to true.
Progressive loading - Progressive web apps (PWAs)
a bundle.js file can be many megabytes, and a single style.css bundle can contain everything from basic css structure definitions to all the possible styles of every
version of the site: mobile, tablet, desktop, print only, etc.
Progressive web apps (PWAs)
everything below this point is left over from the old
version of this page and will be revamped as other content is overhauled.
baseProfile - SVG: Scalable Vector Graphics
only one element is using this attribute: <svg> context notes value profile name default value none animatable no example <svg width="120" height="120"
version="1.1" xmlns="http://www.w3.org/2000/svg" baseprofile="full"> ...
class - SVG: Scalable Vector Graphics
example <html> <body> <svg width="120" height="220" viewport="0 0 120 120"
version="1.1" xmlns="http://www.w3.org/2000/svg"> <style type="text/css" > <![cdata[ rect.rectclass { stroke: #000066; fill: #00cc00; } circle.circleclass { stroke: #006600; fill: #cc0000; ...
clip-rule - SVG: Scalable Vector Graphics
example <svg width="100" viewbox="0 0 100 90" xmlns="http://www.w3.org/2000/svg"
version="1.1"> <!-- define star path --> <defs> <path d="m50,0 21,90 98,35 2,35 79,90z" id="star" /> </defs> <!-- left: evenodd --> <clippath id="emptystar"> <use xlink:href="#star" clip-rule="evenodd" /> </clippath> <rect clip-path="url(#emptystar)" width="50" height="90" fill="blue" /> <!-- right: nonzero --> <clippath id="filledstar"> <use xlink:href="#star" clip-rule="...
descent - SVG: Scalable Vector Graphics
note: it was specified to share the syntax and semantics of the obsolete descent descriptor of the @font-face at-rule defined in an early
version of css 2.
requiredExtensions - SVG: Scalable Vector Graphics
the iri names for the extension should include
versioning information, such as "http://example.org/svgextensionxyz/1.0", so that script writers can distinguish between different
versions of a given extension.
systemLanguage - SVG: Scalable Vector Graphics
for example, content that is presented simultaneously in the original maori and english
versions, would call for: <text systemlanguage="mi, en"><!-- content goes here --></text> however, just because multiple languages are present within the object on which the systemlanguage test attribute is placed, this does not mean that it is intended for multiple linguistic audiences.
tabindex - SVG: Scalable Vector Graphics
html, body, svg { height: 100%; } <?xml
version="1.0"?> <svg viewbox="0 0 260 260" xmlns="http://www.w3.org/2000/svg"> <circle cx="60" cy="60" r="15" tabindex="1" /> <circle cx="60" cy="160" r="30" tabindex="3" /> <circle cx="160" cy="60" r="30" tabindex="2" /> <circle cx="160" cy="160" r="60" tabindex="4" /> </svg> usage notes value valid integer default value none animatable no valid integer relative order of the element for the purposes of sequential focus navigation.
SVG Attribute reference - SVG: Scalable Vector Graphics
ity stroke-width style surfacescale systemlanguage t tabindex tablevalues target targetx targety text-anchor text-decoration text-rendering textlength to transform transform-origin type u u1 u2 underline-position underline-thickness unicode unicode-bidi unicode-range units-per-em v v-alphabetic v-hanging v-ideographic v-mathematical values vector-effect
version vert-adv-y vert-origin-x vert-origin-y viewbox viewtarget visibility w width widths word-spacing writing-mode x x x-height x1 x2 xchannelselector xlink:actuate xlink:arcrole xlink:href xlink:role xlink:show xlink:title xlink:type xml:base xml:lang xml:space y y y1 y2 ychannelselector z z zoomandpan svg attributes by category generic attributes c...
<feComposite> - SVG: Scalable Vector Graphics
example svg <svg width="330" height="195" viewbox="0 0 1100 650"
version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <title>example fecomposite - examples of fecomposite operations</title> <desc>four rows of six pairs of overlapping triangles depicting the six different fecomposite operators under different opacity values and different clearing of the background.</desc> <defs> <desc>define two sets...
<glyph> - SVG: Scalable Vector Graphics
example svg <svg width="400px" height="300px"
version="1.1" xmlns="http://www.w3.org/2000/svg"> <!-- example copied from https://www.w3.org/tr/svg/fonts.html#glyphelement --> <defs> <font id="font1" horiz-adv-x="1000"> <font-face font-family="super sans" font-weight="bold" font-style="normal" units-per-em="1000" cap-height="600" x-height="400" ascent="700" descent="300" alphabetic="0" mathematical="350"...
Namespaces crash course - SVG: Scalable Vector Graphics
versions of svg viewers prior to the release of firefox 1.5 unfortunately paid scant attention to namespaces, but they are essential to multi-xml dialect supporting user agents such as gecko-based browsers which must be very strict.
Basic shapes - SVG: Scalable Vector Graphics
the code to generate that looks something like: <?xml
version="1.0" standalone="no"?> <svg width="200" height="250"
version="1.1" xmlns="http://www.w3.org/2000/svg"> <rect x="10" y="10" width="30" height="30" stroke="black" fill="transparent" stroke-width="5"/> <rect x="60" y="10" rx="10" ry="10" width="30" height="30" stroke="black" fill="transparent" stroke-width="5"/> <circle cx="25" cy="75" r="20" stroke="red" fill="transparent" stroke-width="5"...
Basic Transformations - SVG: Scalable Vector Graphics
<svg xmlns="http://www.w3.org/2000/svg"
version="1.1" width="100" height="100"> <svg width="100" height="100" viewbox="0 0 50 50"> <rect width="50" height="50" /> </svg> </svg> the example above has basically the same effect as the one above, namely that the rect will be twice as large as specified.
Filter effects - SVG: Scalable Vector Graphics
<svg width="250" viewbox="0 0 200 85" xmlns="http://www.w3.org/2000/svg"
version="1.1"> <defs> <!-- filter declaration --> <filter id="myfilter" filterunits="userspaceonuse" x="0" y="0" width="200" height="120"> <!-- offsetblur --> <fegaussianblur in="sourcealpha" stddeviation="4" result="blur"/> <feoffset in="blur" dx="4" dy="4" result="offsetblur"/> <!-- litpaint --> <fespecularlighting in="blur" surfacescale...
Other content in SVG - SVG: Scalable Vector Graphics
this means, that you can use clips, masks, filters, rotations and all other tools of svg on the content: <svg
version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"> <image x="90" y="-65" width="128" height="146" transform="rotate(45)" xlink:href="https://developer.mozilla.org/static/img/favicon144.png"/> </svg> screenshotlive sample embedding arbitrary xml since svg is an xml application, you can of course always embed arbitrary ...
SVG image element - SVG: Scalable Vector Graphics
in this basic example, a .jpg image referenced by an href attribute will be rendered inside an svg object: <?xml
version="1.0" standalone="no"?> <!doctype svg public "-//w3c//dtd svg 1.1//en" "http://www.w3.org/graphics/svg/1.1/dtd/svg11.dtd"> <svg width="5cm" height="4cm"
version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <image href="firefox.jpg" x="0" y="0" height="50px" width="50px"/> </svg> there are some important things to take note of (referenced from the w3 specs): if you do not set the x or y attributes, they will be set to 0.
Web security
https https (hypertext transfer protocol secure) is an encrypted
version of the http protocol.
Using templates and slots - Web Components
so for example: <template id="my-paragraph"> <style> p { color: white; background-color: #666; padding: 5px; } </style> <p>my paragraph</p> </template> now we can use it by just adding it to our html document: <my-paragraph></my-paragraph> note: templates are well-supported in browsers; the shadow dom api is supported by default in firefox (
version 63 onwards), chrome, opera, safari, and edge (starting with
version 79).
system-property - XPath
notes xsl:
version, a number giving the
version of xslt implemented by the processor; for xslt processors implementing the
version of xslt specified by this document, this is the number 1.0 xsl:vendor, a string identifying the vendor of the xslt processor xsl:vendor-url, a string containing a url identifying the vendor of the xslt processor; typically this is the host page (home page) of the vendor's web site.
XPath snippets - XPath
sample usage assume we have the following xml document (see also how to create a dom tree and parsing and serializing xml): example: an xml document to use with the custom evaluatexpath() utility function <?xml
version="1.0"?> <people> <person first-name="eric" middle-initial="h" last-name="jung"> <address street="321 south st" city="denver" state="co" country="usa"/> <address street="123 main st" city="arlington" state="ma" country="usa"/> </person> <person first-name="jed" last-name="brown"> <address street="321 north st" city="atlanta" state="ga" country="usa"/> <address street="123 we...