Search completed in 1.37 seconds.
Reporting API - Web APIs
the re
porting api provides a generic re
porting mechanism for web applications to use to make reports available based on various platform features (for example content security policy, feature-policy, or feature deprecation reports) in a consistent manner.
... the re
porting api's purpose is to provide a consistent re
porting mechanism that can be used to make such information available to developers in the form of reports represented by javascript objects.
... re
porting observers reports can also be obtained via re
portingobserver objects created via javascript inside the website you are aiming to get reports on.
...And 8 more matches
ReportingObserver - Web APIs
the re
portingobserver interface of the re
porting api allows you to collect and access reports.
... constructor re
portingobserver() creates a new re
portingobserver object instance, which can be used to collect and access reports.
... methods re
portingobserver.disconnect() stops a re
porting observer that had previously started observing from collecting reports.
...And 6 more matches
ReportingObserver() - Web APIs
the re
portingobserver() constructor of the re
porting api creates a new re
portingobserver object instance, which can be used to collect and access reports.
... syntax new re
portingobserver(callback[, options]); parameters callback a callback function that runs when the observer starts to collect reports (i.e.
... via re
portingobserver.observe()).
...And 4 more matches
Environment variables affecting crash reporting - Archive of obsolete content
the breakpad crash re
porting used in mozilla projects supports some environment variables, primarily for testing purposes.
... the following environment variables affect crash re
porting: moz_crashreporter_url sets the url that the crash reporter will submit reports to.
... moz_crashreporter_no_report save the minidump file but don't launch the crash re
porting ui or send the report to the server.
...And 3 more matches
Supporting older browsers - Learn web development
at the bottom of this page is a table, which lists major browsers along with the version they began sup
porting this property.
...sup
porting everyone means serving a version of your content that is designed defensively, so that it will look great on modern browsers, but will still be usable at a basic level for users of older browsers.
...however, unless you have a very high number of visitors in older ie versions, you may find it better to focus on creating a fallback that works for all non-sup
porting browsers.
...And 3 more matches
Porting NSPR to Unix Platforms - Archive of obsolete content
therefore i write this article to document the more mechanical part of the unix
porting task.
...
porting instructions you can use different threading packages to implement nspr threads.
...i use the netbsd port i recently received as an example to illustrate the mechanical part of the
porting process.
...<strike>henry sobotka of the os/2 mozilla
porting project has a web page at http://www.axess.com/users/sobotka/n.../warpztjs.html with good documentation of the nspr unit tests</strike>.
Xptcall Porting Status
this is a status page for the multiplatform
porting of xptcall.
... xptcall has a faq and a
porting guide.
... <font color="black">partially working</font> netbsd/arm32 mike pumford <mpumford@black-star.demon.co.uk> mike writes: i have started
porting to the platform based on the code for linux arm.
...i am doing the
porting work with egcs-1.1.2 on netbsd 1.4p (netbsd-current snapshot from a couple of days ago).
ReportingObserver.disconnect() - Web APIs
the disconnect() method of the re
portingobserver interface stops a re
porting observer that had previously started observing from collecting reports.
... after calling disconnect(), neither re
portingobserver.takerecords() nor the records parameter of the re
portingobserver() callback will return any reports.
... syntax re
portingobserverinstance.disconnect() examples let options = { types: ['deprecation'], buffered: true } let observer = new re
portingobserver(function(reports, observer) { reportbtn.onclick = () => displayreports(reports); }, options); observer.observe() ...
... observer.disconnect() specifications specification status comment re
porting apithe definition of 're
portingobserver.disconnect()' in that specification.
ReportingObserver.takeRecords() - Web APIs
the takerecords() method of the re
portingobserver interface returns the current list of reports contained in the observer's report queue, and empties the queue.
... syntax re
portingobserverinstance.takerecords() return value an array of report objects.
... examples let options = { types: ['deprecation'], buffered: true } let observer = new re
portingobserver(function(reports, observer) { reportbtn.onclick = () => displayreports(reports); }, options); observer.observe() // ...
... let records = observer.takerecords(); console.log(records); specifications specification status comment re
porting apithe definition of 're
portingobserver.takerecords()' in that specification.
Script-supporting element - MDN Web Docs Glossary: Definitions of Web-related terms
in an html document, script-sup
porting elements are those elements that don't directly contribute to the appearance or layout of the page; instead, they're either scripts or contain information that's only used by scripts.
... there are only two script-sup
porting elements: <script> and <template>.
... technical reference to learn more, see script-sup
porting elements in kinds of html content.
Memory reporting
the cost of re
porting isn't incurred unless the memory reporter is queried.
...that said, note that for some classes these methods may be virtual.) mfbt/memoryre
porting.h defines mozilla::mallocsizeof as follows: typedef size_t (*mallocsizeof)(const void* p); functions with this signature measure the size of p by asking the heap allocator how big it is (via moz_malloc_usable_size).
...on sup
porting compilers it gets expanded to the override keyword.
Crash reporting
firefox ships with an open-source crash re
porting system.
... this system is combination of projects: google breakpad client and server libraries mozilla-specific crash re
porting user interface and bootstrap code socorro collection and re
porting server where did my crash get submitted?
... see also understanding crash reports a guide to searching crash reports crash-stats crash pings (telemetry) and crash reports (socorro/crash stats) building firefox with debug symbols environment variables affecting crash re
porting in-code documentation crash reporter crash manager crash ping ...
Using Crash Reporting in a XULRunner Application - Archive of obsolete content
xulrunner application authors who wish to use crash re
porting must run a crash re
porting server.
... to enable crash re
porting on the client, set the following items in application.ini: [crash reporter] enabled=true serverurl=https://your.server.url/submit note: because crash reports can contain private data including passwords, in production environments they should only be sent via https.
ReportingObserver.observe() - Web APIs
the observe() method of the re
portingobserver interface instructs a re
porting observer to start collecting reports in its report queue.
... syntax re
portingobserverinstance.observe() examples let options = { types: ['deprecation'], buffered: true } let observer = new re
portingobserver(function(reports, observer) { reportbtn.onclick = () => displayreports(reports); }, options); observer.observe() specifications specification status comment re
porting apithe definition of 're
portingobserver.observe()' in that specification.
ReportingObserverOptions - Web APIs
the re
portingobserveroptions dictionary of the re
porting api allows options to be set in the constructor when creating a re
portingobserver.
... examples let options = { types: ['deprecation'], buffered: true } let observer = new re
portingobserver(function(reports, observer) { reportbtn.onclick = () => displayreports(reports); }, options); specifications specification status comment re
porting apithe definition of 're
portingobserveroptions' in that specification.
Supporting search suggestions in search plugins - Archive of obsolete content
(this means that a suggestion-sup
porting engine plugin will have two <url> elements, the other one being the main text/html search url.) for example, the yahoo search plugin has this <url> entry: <url type="application/x-suggestions+json" template="http://ff.search.yahoo.com/gossip?output=fxjson&command={searchterms}"/> if the user types "fir" into the search bar, then pauses, firefox inserts "fir" in place of {searchterms} and quer...
Index - Web APIs
532 using images advanced, canvas, graphics, html, tutorial im
porting images into a canvas is basically a two step process: 533 manipulating video using canvas api, canvas, chroma-key, editing, guide, manipulating, video, effects 534 canvascapturemediastreamtrack canvascapturemediastreamtrack, experimental, frame capture, interface, media, media capture, reference, web the canvascapturemediastreamtrack interface represents...
... 678 crashreportbody api, crashreportbody, experimental, interface, reference, re
porting api the crashreportbody interface of the re
porting api represents the body of a crash report (the return value of its report.body property).
... 825 deprecationreportbody api, deprecationreportbody, experimental, interface, reference, re
porting api the deprecationreportbody interface of the re
porting api represents the body of a deprecation report (the return value of its report.body property).
...And 18 more matches
Index - Archive of obsolete content
unfortunately, javascript does not yet have native support for modules: it has to rely on the host application to provide it with functionality such as loading subscripts, and ex
porting/ im
porting names.
... 32
porting the library detector add-on sdk, add-ons, example, extensions, sample code, tutorial no summary!
... 301 sup
porting search suggestions in search plugins add-ons, opensearch, search, search plugins firefox supports search suggestions in opensearch plugins; as the user types in the search bar, firefox queries the url specified by the search plugin to fetch live search suggestions.
...And 8 more matches
TypeScript support in Svelte - Learn web development
note that our application is fully functional and
porting it to typescript is completely optional.
... typescript's main advantages are: early spotted bugs: the compiler checks types at compile time and provides error re
porting.
...that's what we will do to start
porting our application to typescript.
...And 8 more matches
<input>: The Input (Form Input) element - HTML: Hypertext Markup Language
<input type="checkbox" name="checkbox"/> color a control for specifying a color; opening a color picker when active in sup
porting browsers.
...opens a date picker or numeric wheels for year, month, day when active in sup
porting browsers.
...opens a date picker or numeric wheels for date- and time-components when active in sup
porting browsers.
...And 7 more matches
Web video codec guide - Web media technologies
ort yes browser compatibility feature chrome edge firefox internet explorer opera safari av1 support 70 75 67 no 57 no container support isobmff[1], mpeg-ts, mp4, webm rtp / webrtc compatible yes sup
porting/maintaining organization alliance for open media specification https://aomediacodec.github.io/av1-spec/av1-spec.pdf licensing royalty-free, open standard [1] iso base media file format [2] see the av1 specification's tables of levels, which describe the maximum resolutions and rates at each level.
...fr) support yes browser compatibility feature chrome edge firefox internet explorer opera safari avc/h.264 support 4 12 35[1] 9 25 3.2 container support 3gp, mp4, webm rtp / webrtc compatible yes sup
porting/maintaining organization mpeg / itu specification https://mpeg.chiariglione.org/standards/mpeg-4/advanced-video-coding https://www.itu.int/rec/t-rec-h.264 licensing proprietary with numerous patents.
...fr) support no browser compatibility feature chrome edge firefox internet explorer opera safari h.263 support no no no[1] no no no container support 3gp, mp4, quicktime rtp / webrtc compatible no sup
porting/maintaining organization itu specification https://www.itu.int/rec/t-rec-h.263/ licensing proprietary; appropriate license or licenses are required.
...And 7 more matches
Index
nss prefers the binary presentation, but is often capable to use base64 or ascii presentations, especially when im
porting data from files.
...you should assign a good nickname to a certificate when im
porting it, making it easier for you to refer to it later.
...nss 3.53 will be a long-term support release, sup
porting firefox 78 esr.
...And 6 more matches
Handling common HTML and CSS problems - Learn web development
linters can generally be customized to be stricter or more relaxed in their error/warning re
porting.
... older browsers not sup
porting 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 add fallback content in between the opening and closing tags, and non-sup
porting browsers will effectively ignore the outer element and run the nested content.
...And 5 more matches
CSS Grid Layout and Progressive Enhancement - CSS: Cascading Style Sheets
however, while evergreen browsers mean that many of us are going to see the majority of users having grid layout support very quickly, there are also old or non-sup
porting browsers to contend with.
... the sup
porting browsers other than in internet explorer, css grid layout is unprefixed in safari, chrome, opera, firefox and edge.
...as these properties are vendor prefixed, they will not effect any browser sup
porting the up to date and unprefixed specification.
...And 5 more matches
<input type="week"> - HTML: Hypertext Markup Language
the control's user interface varies from browser to browser; cross-browser support is currently a bit limited, with only chrome/opera and microsoft edge sup
porting it at this time.
... in non-sup
porting browsers, the control degrades gracefully to function identically to <input type="text">.
... using the step attribute you should be able to use the step attribute to vary the number of weeks jumped whenever they are incremented or decremented, however it doesn't seem to have any effect on sup
porting browsers.
...And 5 more matches
Index of archived content - Archive of obsolete content
self contributor's guide classes and inheritance content processes getting started modules private properties firefox compatibility module structure of the sdk
porting the library detector program id sdk api lifecycle sdk and xul comparison testing the add-on sdk two types of scripts working with events xul migration guide high-level apis addon-page base64 c...
...otifications and alerts xpcom objects performance best practices in extensions search extension tutorial (draft) security best practices in extensions session store api setting up an extension development environment signing an xpi signing an extension sup
porting search suggestions in search plugins tabbed browser techniques promises updating addons broken by private browsing changes using dependent libraries in extension components using the stylesheet service bookmarks.export() bookmarks.import() add...
... lir new security model for web services new skin notes overview of how downloads work plug-n-hack plug-n-hack get involved plug-n-hack phase1 plug-n-hack phase2 plug-n-hack tools supported plugin architecture
porting nspr to unix platforms priority content prism blogposts build bundlelibrary bundles configuration extensions faq hostwindow installer scripting styling proxy ui pydom rdf...
...And 4 more matches
The Joy of XUL - Archive of obsolete content
the key features and benefits of xul will be explored followed by an examination of sup
porting mozilla technologies.
... in fact, many developers invest a significant amount of effort to achieve these results in their dhtml web applications but at the cost of complexity and performance and without any sup
porting standards.
...the user interface for all of mozilla's core applications (browser, messenger, address book, etc.) is written in xul with one single code base sup
porting all mozilla platforms.
...And 4 more matches
import - JavaScript
import {foo, bar} from '/modules/my-module.js'; import an export with a more convenient alias you can rename an export when im
porting it.
... import { reallyreallylongmoduleexportname as shortname, anotherlongmodulename as short } from '/modules/my-module.js'; import a module for its side effects only import an entire module for side effects only, without im
porting anything.
... im
porting defaults it is possible to have a default export (whether it is an object, a function, a class, etc.).
...And 4 more matches
Browser Detection and Cross Browser Support - Archive of obsolete content
note that some other browsers such as safari are re
porting (like gecko) in their user agent strings and can confuse simple tests.
... we are still faced with the question of how to develop standards based content while sup
porting the differing implementations of modern browsers while at the same time sup
porting (to a lesser degree) older and less capable browsers.
...the reasons are that the capabilities of such browsers are far too limited compared to more modern browsers, the added development and quality assurance requirements add too much to the development cost of web sites and the market share of such browsers does not justify the expense of sup
porting them.
...And 3 more matches
Report - Web APIs
the report interface of the re
porting api represents a single report.
... reports can be accessed in a number of ways: via the re
portingobserver.takerecords() method — this returns all reports in an observer's report queue, and then empties the queue.
... via the reports parameter of the callback function passed into the re
portingobserver() constructor upon creation of a new observer instance.
...And 3 more matches
Network Error Logging - HTTP
this experimental header allows web sites and applications to opt-in to receive reports about failed (and, if desired, successful) network fetches from sup
porting browsers.
... reports are sent to a re
porting group defined within a report-to header.
... the following object keys can be specified in the nel header: report_to the re
porting api group to send network error reports to (see below).
...And 3 more matches
sslerr.html
ssl_error_close_notify_alert -12230 "ssl peer has closed this connection." the local socket received an ssl3 alert record from the remote peer, re
porting that the remote peer has chosen to end the connection.
...error_rx_unknown_handshake -12232 "ssl received a handshake message with an unknown message type." ssl_error_rx_unknown_alert -12231 "ssl received an alert record with an unknown alert description." received an alert report: all the error codes in the following block indicate that the local socket received an ssl3 or tls alert record from the remote peer, re
porting some issue that it had with an ssl record or handshake message it received.
... sec_error_ex
porting_certificates -8116 error attempting to export certificates.
...And 2 more matches
JS_SetErrorReporter
get or specify the error re
porting mechanism for an application.
... er jserrorreporter the user-defined error re
porting function to use in your application, described below.
... description js_seterrorreporter enables you to define and use your own error re
porting mechanism in your applications.
...And 2 more matches
Index
827 nsiplacesimportexportservice bookmarks, interfaces, interfaces:scriptable, places, xpcom interface reference in the past, this interface also offered methods for im
porting places data, but those methods are now part of the bookmarkhtmlutils.jsm javascript code module.
... 1270 xptcall
porting guide original author: john bandhauer, 31 may 1999.
... 1271 xptcall
porting status this is a status page for the multiplatform
porting of xptcall.
...And 2 more matches
nsICrashReporter
xpcom/system/nsicrashreporter.idlscriptable provides access to crash re
porting functionality.
... exceptions thrown ns_error_not_initialized if crash re
porting is not initialized.
...ns_error_not_initialized if crash re
porting is not initialized.
...And 2 more matches
DeprecationReportBody - Web APIs
the deprecationreportbody interface of the re
porting api represents the body of a deprecation report (the return value of its report.body property).
...a deprecated api method) is used on a document being observed by a re
portingobserver.
... examples in our deprecation_report.html example, we create a simple re
porting observer to observe usage of deprecated features on our web page: let options = { types: ['deprecation'], buffered: true } let observer = new re
portingobserver(function(reports, observer) { reportbtn.onclick = () => displayreports(reports); }, options); we then tell it to start observing reports using re
portingobserver.observe(); this tells the observer to start collecting reports in its...
...And 2 more matches
<input type="date"> - HTML: Hypertext Markup Language
if you use min and max to restrict the available dates (see setting maximum and minimum dates), sup
porting browsers will display an error if you try to submit a date that is out of bounds.
...try playing with the example now: here's a screenshot for those of you who aren't using a sup
porting browser: here's the css used in the above example.
...as an example, the date picker on firefox for android looks like this: unsup
porting browsers gracefully degrade to a text input, but this creates problems in consistency of user interface (the presented controls are different) and data handling.
...And 2 more matches
<input type="datetime-local"> - HTML: Hypertext Markup Language
for those of you not using a sup
porting browser, the chrome/opera datetime-local control looks like the below screenshot.
...as a result, sup
porting browsers will display an error if you try to submit a date that is outside the set bounds, or an empty date field.
...try playing with the example now: here's a screenshot for those of you who aren't using a sup
porting browser: here's the css used in the above example.
...And 2 more matches
JavaScript modules - JavaScript
ex
porting module features the first thing you do to get access to module features is export them.
... a more convenient way of ex
porting all the items you want to export is to use a single export statement at the end of your module file, followed by a comma-separated list of the features you want to export wrapped in curly braces.
... for example: export { name, draw, reportarea, reportperimeter }; im
porting features into your script once you've exported some features out of your module, you need to import them into your script to be able to use them.
...And 2 more matches
Index - MDN Web Docs Glossary: Definitions of Web-related terms
adobe flash can run from sup
porting web browsers via a browser plug-in.
... 371 re
porting directive csp, http, policy, re
porting, security, violation csp re
porting directives are used in a content-security-policy header and control the re
porting process of csp violations.
... 402 script-sup
porting element glossary, html, html content categories, scripts in an html document, script-sup
porting elements are those elements that don't directly contribute to the appearance or layout of the page; instead, they're either scripts or contain information that's only used by scripts.
...beacons are often included within third party scripts for collecting user data, performance metrics and error re
porting.
Handling common JavaScript problems - Learn web development
such incompatibility problems persisted well into the early 2000s, as old browsers were still being used and still needed sup
porting.
... things have improved significantly since then; modern browsers do a good job of sup
porting "classic javascript features", and the requirement to use such code has diminished as the requirement to support older browsers has lessened (although bear in mind that they have not gone away altogether).
... linters as with html and css, you can ensure better quality, less error-prone javascript code using a linter, which points out errors and can also flag up warnings about bad practices, etc., and be customized to be stricter or more relaxed in their error/warning re
porting.
...it is not so important now we have modern features like document.queryselector()/document.queryselectorall()/node methods available across browsers, but it can still be useful when older browsers need sup
porting.
Strategies for carrying out testing - Learn web development
your site should now be ready to start re
porting analytics data.
... studying analytics data now you should be able to go back to the analytics web homepage, and start looking at the data you've collected about your site (you need to leave a little bit of time for some data to actually be collected, of course.) by default, you should see the re
porting tab, like so: there is a huge amount of data you could look at using google analytics — customized reports in different categories, etc.
...getting started with analytics provides some useful guidance on re
porting (and more) for beginners.
..."we have no firefox mobile users" might lead you to not bother sup
porting firefox mobile.
Setting up your own test automation environment - Learn web development
in addition, we should mention test results/re
porting — we've been re
porting results in our above examples using simple console.log() statements, but this is all done in javascript, so you can use whatever test running and re
porting system you want, be it mocha, chai, or some other tool.
... if you wish to extract these results for re
porting purpose from lambdatest platform then you can do so by using lambdatest restful api.
...this shows the importance of including some kind of result re
porting mechanism!
...this shows the importance of including some kind of result re
porting mechanism!
About NSPR
history a good portion of the library's purpose, and perhaps the primary purpose in the gromit environment, was to provide the underpinnings of the java vm, more or less mapping the sys layer that sun defined for the
porting of the java vm to various platforms.
...it is not a goal to provide a platform for the
porting into netscape of externally developed code.
...the first generation of nspr was originally conceived just to satisfy the requirements of
porting java to various host environments.
...today nspr may still be appropriate as the platform dependent layer under java, but its primary application is sup
porting clients written entirely in c or c++.
NSS Tools crlutil
kname [-d keydir] [-p dbprefix] crlutil -e [-d keydir] [-p dbprefix] crlutil -i -i crl [-t crltype] [-u url] [-d keydir] [-p dbprefix] [-b] creating or modifying a crl: listing all crls or a named crl: deleting crl from db: erasing crls from db: import crl from file: examples creating a new crl listing crls in a database deleting crl from a database im
porting crl into a database modifiying crl in a database creating a new crl this example creates a new crl and im
porting it in to a database in the specified directory: crlutil -g -d certdir -n cert-nickname -c crl-script-file or crlutil -g -d certdir -n cert-nickname <<eof update=20050204153000z addcert 34-40 20050104153000z eof where cert-nickname is the name the new crl will be signe...
... 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 deleting crl from a database this example deletes crl from a database in the specified directory: crlutil -d -n nickname -d certdir im
porting crl into a database this example imports crl into a database: crlutil -i -i crl-file -d certdir file should has binary format of asn.1 encoded crl data.
... modifying crl in a database this example modifies a new crl and im
porting it in to a database in the specified directory: crlutil -g -d certdir -n cert-nickname -c crl-script-file or crlutil -m -d certdir -n cert-nickname <<eof update=20050204153000z addcert 40-60 20050105153000z eof the crl management tool extracts existing crl from a database, will modify and sign with certificate cert-nickname and will store it in database.
... to modify while im
porting crl from file user should supply -i import-crl-file option.
Handling Mozilla Security Bugs
however, this is offset by the fact that the person re
porting a bug has visibility into the activities (if any) being taken to address the bug, and has the power to open the bug report for public scrutiny.
... thus someone re
porting a security bug essentially becomes a member of the overall group of people working to investigate and fix that particular vulnerability, and anyone else may be easily invited to assist as well, if and when it makes sense.
...we believe that investing this power in the bug reporter simply acknowledges reality, as nothing prevents the person re
porting a security bug from publicizing information about the bug by posting it to channels outside the context of the mozilla project.
... however, we will ask all individuals and organizations re
porting security bugs through bugzilla to follow the voluntary guidelines below: before making a security bug world-readable, please provide a few days notice to the mozilla security bug group by sending an email to the private security bug group mailing list.
nsIPlacesImportExportService
toolkit/components/places/nsiplacesimportexportservice.idlscriptable provides methods for ex
porting places data.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamonkey 2.11) in the past, this interface also offered methods for im
porting places data, but those methods are now part of the bookmarkhtmlutils.jsm javascript code module.
..."bookmarks-restore-failed" is fired right after a failure occurs when im
porting the bookmarks.
..."bookmarks-restore-failed" is fired right after a failure occurs when im
porting the bookmarks.
Using feature queries - CSS: Cascading Style Sheets
you do however need to structure your css in a certain way, writing css for non-sup
porting browsers and overwriting it with the css inside the feature query.
...once a floated item becomes a grid item, the float is removed — something you can read more about in sup
porting older browsers.
...as you can wrap up the css for sup
porting browsers, you do not run the risk of styles used for the fallback display leaking through, as shown in our grid example above.
... see also the @supports rule learn layout: sup
porting older browsers css grid layout and progressive enhancement using feature queries in css ...
Cross-browser audio basics - Developer guides
a cross-browser html5 audio player with all the associated attributes, properties, and events explained a guide to custom controls created using the media api basic audio example the code below is an example of a basic audio implementation using html5: <audio controls> <source src="audiofile.mp3" type="audio/mpeg"> <source src="audiofile.ogg" type="audio/ogg"> <!-- fallback for non sup
porting browsers goes here --> <p>your browser does not support html5 audio, but you can still <a href="audiofile.mp3">download the music</a>.</p> </audio> note: you can also use an mp4 file instead of mp3.
... for example, mediaelement.js includes flash fallbacks, which are used something like this: <audio controls> <source src="audiofile.mp3" type="audio/mpeg"> <source src="audiofile.ogg" type="audio/ogg"> <!-- fallback for non sup
porting browsers goes here --> <a href="audiofile.mp3">download audio</a> <object width="320" height="30" type="application/x-shockwave-flash" data="mediaelement-flash-video.swf"> <param name="movie" value="mediaelement-flash-video.swf" /> <param name="flashvars" value="controls=true&isvideo=false&file=audiofile.mp3" /> </object> </audio> note: you should be aware that flash and silverlig...
...first, we'll set up the audio in the html, without the controls attribute, since we are creating our own controls: <audio id="my-audio"> <source src="audiofile.mp3" type="audio/mpeg"> <source src="audiofile.ogg" type="audio/ogg"> <!-- place fallback here as <audio> sup
porting browsers will ignore it --> <p>download<a href="audiofile.mp3">audiofile.mp3</a></p> </audio> <!-- custom play and pause buttons --> <button id="play">play</button> <button id="pause">pause</button> next, we attach some functionality to the player using javascript: window.onload = function(){ var myaudio = document.getelementbyid('my-audio'); var play = document.getelementbyid('play'); ...
... an audio player with feedback consider this snippet of html: <audio id="my-audio"> <source src="https://udn.realityripple.com/samples/6c/d385042de2.mp3" type="audio/mpeg"> <source src="https://udn.realityripple.com/samples/28/191a7bd2a5.ogg" type="audio/ogg"> <!-- place fallback here as <audio> sup
porting browsers will ignore it --> <a href="audiofile.mp3">audiofile.mp3</a> </audio> <div id="controls"> <span id="loading">loading</span> <button id="play" style="display:none">play</button> <button id="pause" style="display:none" >pause</button> </div> <div id="progress"> <div id="bar"></div> </div> styled like so: #controls { width: 80px; float: left; } #progress { margin-left...
<input type="time"> - HTML: Hypertext Markup Language
using time inputs although among the date and time input types time has the widest browser support, it is not yet approaching universal, so it is likely that you'll need to provide an alternative method for entering the date and time, so that safari users (and users of other non-sup
porting browsers) can still easily enter time values.
...as a result, sup
porting browsers will display an error if you try to submit a time that is outside the set bounds, or an empty time field.
... <label for="appt-time">choose an appointment time (opening hours 12:00 to 18:00): </label> <input id="appt-time" type="time" name="appt-time" min="12:00" max="18:00" required pattern="[0-9]{2}:[0-9]{2}"> <span class="validity"></span> </div> <div> <input type="submit" value="submit form"> </div> </form> if you try submitting it, you'll see that non-sup
porting browsers now display an error message (and highlight the input as invalid) if your entry doesn't match the pattern nn:nn, where n is a number from 0 to 9.
...; content: '✖'; padding-left: 5px; } input:valid+span:after { position: absolute; content: '✓'; padding-left: 5px; } the other part of the code that may be of interest is the feature detection code — to detect whether the browser supports <input type="time">, we create a new <input> element, try setting its type to time, then immediately check what its type is set to — non-sup
porting browsers will return text, because the time type falls back to type text.
HTML documentation index - HTML: Hypertext Markup Language
187 <script>: the script element element, html, html scripting, html:flow content, html:metadata content, html:phrasing content, html:script-sup
porting element, reference, script, web, tag the html <script> element is used to embed executable code or data; this is typically used to embed or refer to javascript code.
... 205 <template>: the content template element element, html, html web components, html:flow content, html:metadata content, html:phrasing content, html:script-sup
porting element, reference, template, web, web components the html content template (<template>) element is a mechanism for holding html that is not to be rendered immediately when a page is loaded but may be instantiated subsequently during runtime using javascript.
...microdata uses a sup
porting vocabulary to describe an item and name-value pairs to assign values to its properties.
...microformats use sup
porting vocabularies to describe objects and name-value pairs to assign values to their properties.
HTTP Index - HTTP
30 reason: credential is not supported if the cors header ‘access-control-allow-origin’ is ‘*’ cors, corsnotsup
portingcredentials, cross-origin, error, http, https, messages, reasons, security, console, troubleshooting the cors request was attempted with the credentials flag set, but the server is configured using the wildcard ("*") as the value of access-control-allow-origin, which doesn't allow the use of credentials.
... 94 csp: report-to csp, content security policy, content-security-policy, http, re
porting, security, report-to the content-security-policy report-to http response header field instructs the user agent to store re
porting endpoints for an origin.
... 120 expect-ct http, reference, header the expect-ct header allows sites to opt in to re
porting and/or enforcement of certificate transparency requirements, which prevents the use of misissued certificates for that site from going unnoticed.
...this policy controls whether navigator.xr.requestsession() can return xrsession that requires spatial tracking and whether user agent can indicate support for sessions sup
porting spatial tracking via navigator.xr.issessionsupported() and devicechange event on navigator.xr object.
export - JavaScript
bindings that are exported can still be modified locally; when imported, although they can only be read by the im
porting module the value updates whenever it is updated by the ex
porting module.
... syntax there are two types of exports: named exports (zero or more exports per module) default exports (one per module) // ex
porting individual features export let name1, name2, …, namen; // also var, const export let name1 = …, name2 = …, …, namen; // also var, const export function functionname(){...} export class classname {...} // export list export { name1, name2, …, namen }; // renaming exports export { variable1 as name1, variable2 as name2, …, namen }; // ex
porting destructured assignments with renaming export const { name1, name2: bar } = o; // default exports export default expression; export default function (…) { … } // als...
...ted with any name for example: // file test.js let k; export default k = 12; // some other file import m from './test'; // note that we have the freedom to use import m instead of import k, because k was default export console.log(m); // will log 12 you can also rename named exports to avoid naming conflicts: export { myfunction as function1, myvariable as variable }; re-ex
porting / aggregating it is also possible to "import/export" from different modules in a parent module so that they are available to import from that module.
...ave a fallback value for your module, you could use a default export: // module "my-module.js" export default function cube(x) { return x * x * x; } then, in another script, it is straightforward to import the default export: import cube from './my-module.js'; console.log(cube(3)); // 27 using export from let's take an example where we have the following hierarchy: childmodule1.js: ex
porting myfunction and myvariable childmodule2.js: ex
porting myclass parentmodule.js: acting as an aggregator (and doing nothing else) top level module: consuming the exports of parentmodule.js this is what it would look like using code snippets: // in childmodule1.js let myfunction = ...; // assign something useful to myfunction let myvariable = ...; // assign something useful to myvariable export...
Modules - Archive of obsolete content
unfortunately, javascript does not yet have native support for modules: it has to rely on the host application to provide it with functionality such as loading subscripts, and ex
porting/ im
porting names.
...any property defined on the global object will be accessible from both scripts: // index.js: loadscript("www.foo.com/a.js"); foo; // => 3 // a.js: foo = 3; ex
porting names the script loader we obtained from the components object allows us load scripts from other locations, but its api is rather limited.
...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; im
porting names in addition to ex
porting properties from the script being loaded to the loading script, we can also import properties from the loading script to the script being loaded: function loadscript(url, imports) { let global = { imports: imports, exports: {} }; loader.loadsubscript(url, global); return global.exports; } among other things, this allows us to import...
Source code directories overview - Archive of obsolete content
intl contains c interfaces and code for sup
porting localization.
...it includes all the code for managing mail, reading newsgroup messages, im
porting other mail formats, composing new messages and so on.
....png, .gif), allowing drop-in java virtual machines (called oji, for "open java interface"), sup
porting plug-ins and reading various compression formats (e.g.
Archived Mozilla and build documentation - Archive of obsolete content
error console the error console is a tool available in most mozilla-based applications that is used for re
porting errors in the application chrome and in web pages user opens.
...
porting nspr to unix platforms last modified 16 july 1998 priority content update: i've removed documents from this list that have been migrated into the wiki.
... sup
porting private browsing mode firefox 3.5 introduced private browsing mode, in which potentially private information is not recorded.
WAI-ARIA basics - Learn web development
dynamic content updates: screenreaders tend to have difficulty with re
porting constantly changing content; with aria we can use aria-live to inform screenreader users when an area of content is updated, e.g.
... enhancing keyboard accessibility: there are built-in html elements that have native keyboard accessibility; when other elements are used along with javascript to simulate similar interactions, keyboard accessibility and screenreader re
porting suffers as a result.
...ge here is that we've removed the links that were originally present in the example, and just used the list items as the tabs — this was done because it makes things less confusing for screenreader users (the links don't really take you anywhere; they just change the view), and it allows the setsize/position in set features to work better — when these were put on the links, the browser kept re
porting "1 of 1" all the time, not "1 of 3", "2 of 3", etc.
Images in HTML - Learn web development
image titles as with links, you can also add title attributes to images, to provide further sup
porting information if needed.
... it is better to include such sup
porting information in the main article text, rather than attached to the image.
... provides essential information sup
porting the main text.
Making asynchronous programming easier with async and await - Learn web development
} each one ends by recording a start time, seeing how long the timetest() promise takes to fulfill, then recording an end time and re
porting how long the operation took in total: let starttime = date.now(); timetest().then(() => { let finishtime = date.now(); let timetaken = finishtime - starttime; alert("time taken in milliseconds: " + timetaken); }) it is the timetest() function that differs in each case.
...each subsequent one is forced to wait until the last one finished — if you run the first example, you'll see the alert box re
porting a total run time of around 9 seconds.
... next, we await their results — because the promises all started processing at essentially the same time, the promises will all fulfill at the same time; when you run the second example, you'll see the alert box re
porting a total run time of just over 3 seconds!
Getting started with Svelte - Learn web development
this file is the entry point for our app, and it initially looks like this: import app from './app.svelte'; const app = new app({ target: document.body, props: { name: 'world' } }); export default app; main.js starts by im
porting the svelte component that we are going to use.
...this is useful when re
porting issues related to a specific version of svelte.
... svelte components can be used just by im
porting the corresponding .svelte file.
Introduction to cross browser testing - Learn web development
get as much information as you can from the person re
porting the bug — what platform(s), device(s), browser version(s), etc.
...if it is not fixed, then you may want to file a bug (see re
porting bugs, below).
... re
porting bugs just to reiterate on what was said above, if you discover bugs in browsers, you should report them: firefox bugzilla edgehtml issue tracker safari chrome opera summary this article should have given you a high-level understanding of the most important concepts you need to know about cross browser testing.
Testopia
it is designed to be a generic tool for tracking test cases, allowing for testing organizations to integrate bug re
porting with their test case run results.
...this decision allows us to focus our time more on releasing new features often and early rather than back
porting.
... links faq wiki docs bugs (please read the bug re
porting guide) official testopia blog irc: #testopia or #bugzilla user help support-webtools@lists.mozilla.org developers dev-apps-webtools@lists.mozilla.org downloads download 2.5 (bugzilla 4.2) download 2.4 (bugzilla 3.6 and 4.0) archived versions developers greg hendricks vance baarda (former developer) ed fuentetaja (former developer) ...
Creating localizable web applications
bad: <p><?=_("if you are interested in sup
porting the approval process by becoming an approver, please email <a href=\"mailto:personas@mozilla.com\">personas@mozilla.com</a>.")?></p> snippet 4.
... good: <p><?= printf(_("if you are interested in sup
porting the approval process by becoming an approver, please email <a href=\"mailto:%s\">%s</a>."), 'personas@mozilla.com', 'personas@mozilla.com')?> </p> snippet 5.
... also good: <p><?= printf(_("if you are interested in sup
porting the approval process by becoming an approver, please email <a href=\"mailto:%1$s\">%1$s</a>."), 'personas@mozilla.com')?> </p> the same goes for variables that are unknown until the code is interpreted.
Performance
documentation re
porting a performance problem a user friendly guide to re
porting a performance problem.
...about:memory is built on top of firefox's memory re
porting infrastructure.
... adding a new telemetry probe information on how to add a new measurement to the telemetry performance-re
porting system profiling javascript with shark (obsolete - replaced by instruments) how to use the mac os x shark profiler to profile javascript code in firefox 3.5 or later.
NSS Certificate Download Specification
im
porting certificate chains several of the formats described above can contain several certificates.
... im
porting certificates into mozilla browsers mozilla browsers import certificates found in http protocol responses.
... im
porting certificates into nss-based servers consult your server's administration guide for the most accurate information.
NSS tools : pk12util
-v enable debug logging when im
porting.
...version version 3 to version 2 error o 21 - cert db conversion 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 im
porting keys and certificates the most basic usage of pk12util for im
porting 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).
... enter new password: re-enter password: enter password for pkcs12 file: pk12util: pkcs12 import successful ex
porting keys and certificates using the pk12util command to export certificates and keys requires both the name of the certificate to extract from the database (-n) and the pkcs#12-formatted output file to write to.
NSS tools : pk12util
-v enable debug logging when im
porting.
...- cert db conversion 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 im
porting keys and certificates the most basic usage of pk12util for im
porting 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).
... enter new password: re-enter password: enter password for pkcs12 file: pk12util: pkcs12 import successful ex
porting keys and certificates using the pk12util command to export certificates and keys requires both the name of the certificate to extract from the database (-n) and the pkcs#12-formatted output file to write to.
JSAPI User Guide
error re
porting is also per-context and is enabled using js_seterrorreporter.
...it is a fine-grained api, sup
porting many different combinations of the parts, and giving applications precise control over how spidermonkey behaves.
... on failure, a jsnative calls an error-re
porting function, in this case js_reporterror, and returns false.
Component Internals
so far this book has been focusing on "native components," shared libraries ex
porting a nsgetmodule symbol.
...this loader is responsible for initialization, loading, unloading, and sup
porting the nsimodule interface on behalf of each component.
...whatever it does, this object is at the core of the xpcom component, and the other layers are sup
porting it, plugging it into the xpcom system.
xptcall FAQ
porting this code is required in order to make mozilla run on any given platform.
... the growing list:
porting status where can i find other resources?
... the code is at: xpcom/reflect/xptcall a new
porting guide is at: https://developer.mozilla.org/en/xptcall_
porting_guide pre-implementation proposals are here and here.
Debugger.Object - Firefox Developer Tools
setobjectwatchpoint(handler)(future plan) set a watchpoint on all the referent's own properties, re
porting events by callinghandler's methods.
...the watchpoint consultshandler's properties each time an event occurs, so adding methods to or removing methods fromhandler after setting the watchpoint enables or disables re
porting of the corresponding events.
... setpropertywatchpoint(name,handler)(future plan) set a watchpoint on the referent's property namedname, re
porting events by callinghandler's methods.
CrashReportBody - Web APIs
the crashreportbody interface of the re
porting api represents the body of a crash report (the return value of its report.body property).
...it is difficult to retrieve a crash report via a re
portingobserver, as by that point the page would have crashed!
... specifications specification status comment re
porting apithe definition of 'crashreportbody' in that specification.
The HTML DOM API - Web APIs
the html dom api is made up of the interfaces that define the functionality of each of the elements in html, as well as any sup
porting types and interfaces they rely upon.
... access to the browser navigation history sup
porting and connective interfaces for other apis such as web components, web storage, web workers, websocket, and server-sent events.
... customelementregistry miscellaneous and sup
porting interfaces these sup
porting object types are used in a variety of ways in the html dom api.
Intersection Observer API - Web APIs
re
porting of visibility of advertisements in order to calculate ad revenues.
...h(entry => { // each entry describes an intersection change for one observed // target element: // entry.boundingclientrect // entry.intersectionratio // entry.intersectionrect // entry.isintersecting // entry.rootbounds // entry.target // entry.time }); }; the list of entries received by the callback includes one entry for each target which re
porting a change in its intersection status.
... thresholds rather than re
porting every infinitesimal change in how much a target element is visible, the intersection observer api uses thresholds.
InterventionReportBody - Web APIs
the interventionreportbody interface of the re
porting api represents the body of an intervention report (the return value of its report.body property).
... examples let options = { types: ['intervention'], buffered: true } let observer = new re
portingobserver(function(reports, observer) { let firstreport = reports[0]; console.log(firstreport.type); // intervention console.log(firstreport.body.id); console.log(firstreport.body.message); console.log(firstreport.body.sourcefile); console.log(firstreport.body.linenumber); console.log(firstreport.body.columnnumber); }, options); specifications specification status com...
...ment re
porting apithe definition of 'interventionreportbody' in that specification.
Inputs and input sources - Web APIs
see sup
porting advanced controllers and gamepads in webxr applications for more detailed information.
...see advanced controllers using the gamepad object below for further details on sup
porting these extra controls and buttons.
... for details on the gamepad mapping as well as the other differences how the use of the gamepad object and its children differs from its use in the gamepad api, see the article sup
porting advanced controllers and gamepads in webxr applications.
Using the Web Speech API - Web APIs
to run the demo, you can clone (or directly download) the github repo it is part of, open the html index file in a sup
porting desktop browser, or navigate to the live demo url in a sup
porting mobile browser like chrome.
... to run the demo, you can clone (or directly download) the github repo it is part of, open the html index file in a sup
porting desktop browser, or navigate to the live demo url in a sup
porting mobile browser like chrome, or firefox os.
...when speechsynthesis.pause() is invoked, this returns a message re
porting the character number and name that the speech was paused at.
Implementing a Microsoft Active Accessibility (MSAA) Server - Accessibility
might be useful for sup
porting custom interfaces, need to research] objid_menu objid_queryclassnameidx objid_sizegrip objid_sound objid_sysmenu objid_titlebar objid_vscroll objid_window [important, but implemented automatically by microsoft windows.
... solution: this may be because you are re
porting that the events in a different window from the current system focus.
...implement only what's needed -- sup
porting everything would take too long for zero results.
<input type="month"> - HTML: Hypertext Markup Language
as a result, sup
porting browsers will display an error if you try to submit a date that is outside the set bounds, or an empty date field.
...try playing with the example now: here's a screenshot for those of you who aren't using a sup
porting browser: here's the css used in the above example.
...as an example, the month picker on chrome for android looks like this: non-sup
porting browsers gracefully degrade to a text input, but this creates problems both in terms of consistency of user interface (the presented control will be different), and data handling.
Expect-CT - HTTP
the expect-ct header lets sites opt in to re
porting and/or enforcement of certificate transparency requirements, to prevent the use of misissued certificates for that site from going unnoticed.
... ct requirements can be satisfied via any one of the following mechanisms: x.509v3 certificate extension to allow embedding of signed certificate timestamps issued by individual logs a tls extension of type signed_certificate_timestamp sent during the handshake sup
porting ocsp stapling (that is, the status_request tls extension) and providing a signedcertificatetimestamplist when a site enables the expect-ct header, they are requesting that the browser check that any certificate for that site appears in public ct logs.
... enforce optional signals to the user agent that compliance with the certificate transparency policy should be enforced (rather than only re
porting compliance) and that the user agent should refuse future connections that violate its certificate transparency policy.
Optimizing startup performance - Web Performance
this article offers tips and suggestions to help you achieve that goal, both when writing a new app and when
porting an app from another platform to the web.
... on the other hand, however, it can get tricky when you're
porting an existing app to the web.
...
porting issues once the initial loading is done and the app's main code starts to run, it's possible your app may necessarily be single-threaded,especially if it's a port.
WebAssembly Concepts - WebAssembly
(note that webassembly has the high-level goal of sup
porting languages with garbage-collected memory models in the future.) with the advent of webassembly appearing in browsers, the virtual machine that we talked about earlier will now load and run two types of code — javascript and webassembly.
...right now, there are four main entry points:
porting a c/c++ application with emscripten.
... let’s talk about these options:
porting from c/c++ two of the many options for creating wasm code are an online wasm assembler or emscripten.
2015 MDN Fellowship Program - Archive of obsolete content
fellows are responsible for obtaining their own visas if any are required (mozilla will provide reasonable sup
porting documentation).
...the fellow is responsible for any related visas (mozilla can provide any necessary sup
porting documentation).
Module structure of the SDK - Archive of obsolete content
to import a local module, specify a path relative to the im
porting module.
... to import external modules, treat them like local modules: copy them somewhere under your add-ons "lib" directory and reference them with a path relative to the im
porting module.
XUL Migration Guide - Archive of obsolete content
example:
porting the library detector
porting the library detector walks through the process of
porting a xul-based add-on to the sdk.
... it's a very simple add-on and a good candidate for
porting because there are suitable sdk apis for all its features.
Add-on SDK - Archive of obsolete content
xul migration a guide to
porting xul add-ons to the sdk.
... this guide includes a comparison of the two toolsets and a working example of
porting a xul add-on.
Inner-browsing extending the browser navigation paradigm - Archive of obsolete content
html and web standards have evolved and now offer flexible and fine-grained control to layout as well sup
porting dhtml, powerful programming languages like javascript, and additional media through embeddable third-party resources like flash, java, vrml, etc.
... additionally, server-side technologies have also evolved, sup
porting and connecting different resources to different browsers.
Mozilla Application Framework in Detail - Archive of obsolete content
imagine not having to re-write your application 3 times, or not sup
porting a less popular platform simply because you do not have the resources for parallel development!
...sup
porting gecko technologies provide a complete set of resources for efficient development, including full support of web standards, a cross-platform/cross-device user interface language, an extensible architecture and embedding technologies.
Skinning XUL Files by Hand - Archive of obsolete content
to keep your xul looking consistent and to avoid breaking skins altogether (when your styles have some dependency on a part of the global skin that changes, such as an image), use the style rules in the global skin by im
porting it into your stylesheet with the following instruction: @import url("chrome://global/skin/"); refer to the document writing skinnable xul and css for guidelines on how to make your skins friendly to the global skin, to xul, and to mozilla.
...in the next few sections, you will be im
porting this style information into a custom stylesheet and extending it with new style rules for your xul.
Writing Skinnable XUL and CSS - Archive of obsolete content
skin files that don't import any other skin files, but that are only intended to be used in the context of another component's skin are also considered derived skin files, since they are implicitly im
porting information from the other component's skin.
...for example, all xul files that describe windows in the navigator package should contain a line explicitly im
porting navigator.css.
Gecko FAQ - Gecko Redirect 1
oems and contributors from the net participating in mozilla.org are
porting gecko to other platforms.
... such
porting efforts are underway for solaris, hp/ux, aix, irix, os/2, openvms, beos, and amiga, among others.
MDN Web Docs Glossary: Definitions of Web-related terms
ocode public-key cryptography python q quality values quaternion quic r rail random number generator raster image rdf real user monitoring (rum) recursion reference reflow regular expression rendering engine repo re
porting directive request header resource timing response header responsive web design rest rgb ril robots.txt round trip time (rtt) routers rss rtcp (rtp control protocol) rtf rtl (right to left) rtp (real-time transport protocol) and srtp (secure rtp) rtsp: rea...
...l-time streaming protocol ruby s safe same-origin policy scm scope screen reader script-sup
porting element scroll container scrollport sctp sdp search engine second-level domain secure sockets layer (ssl) selector (css) self-executing anonymous function semantics seo serialization server server timing session hijacking sgml shadow tree shim signature signature (functions) signature (security) simd simple header simple response header sisd site site map sld sloppy...
Flexbox - Learn web development
not sup
porting flexbox features however will probably break a layout completely, making it unusable.
... previous overview: css layout next in this module introduction to css layout normal flow flexbox grid floats positioning multiple-column layout responsive design beginner's guide to media queries legacy layout methods sup
porting older browsers fundamental layout comprehension assessment ...
Floats - Learn web development
assuming you have a sup
porting browser, the box will clear.
... previous overview: css layout next in this module introduction to css layout normal flow flexbox grid floats positioning multiple-column layout responsive design beginner's guide to media queries legacy layout methods sup
porting older browsers fundamental layout comprehension assessment ...
Web fonts - Learn web development
if you are im
porting multiple weights of the same font, you can specify what their weight/style is and then use different values of font-weight/font-style to choose between them, rather than having to call all the different members of the font family different names.
...in newer browsers, you can also specify a unicode-range value, which is a specific range of characters you want to use out of the web font — in sup
porting browsers, only the specified characters will be downloaded, saving unnecessary downloading.
What do common web layouts contain? - Learn web development
because the image on the top-right is l-shaped, because b1 looks like a column sup
porting the shifted main content, and because the "m" and "i" of the mica logo create a vertical line of force.
... this is a good example of a classic layout sup
porting some design creativity.
The HTML5 input types - Learn web development
here's a live example that falls back to <select> elements in non-sup
porting browsers: let's look at the different available types in brief.
... the reference pages linked to above provide suggestions on how to program fallbacks for non-sup
porting browsers; another option is to consider using a javascript library to provide a date picker.
Other form controls - Learn web development
" name="myfruit" id="myfruit" list="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 sup
porting older browsers such as ie versions below 10, there is a trick to provide a fallback: <label for="myfruit">what is your favorite fruit?
... <progress max="100" value="75">75/100</progress> this is for implementing anything requiring progress re
porting, such as the percentage of total files downloaded, or the number of questions filled in on a questionnaire.
Responsive images - Learn web development
at this point, if a sup
porting browser with a viewport width of 480px loads the page, the (max-width: 600px) media condition will be true, and so the browser chooses the 480px slot.
... resolution switching: same size, different resolutions if you're sup
porting multiple display resolutions, but everyone sees your image at the same real-world size on the screen, you can allow the browser to choose an appropriate resolution image by using srcset with x-descriptors and without sizes — a somewhat easier syntax!
Getting started with React - Learn web development
we don't write a path or extension when im
porting the react module — this is not a local file; instead, it is listed as a dependency in our package.json file.
...// learn more about service workers: https://bit.ly/cra-pwa serviceworker.unregister(); as with app.js, the file starts by im
porting all the js modules and other assets it needs to run.
Mozilla accessibility architecture
we will not rule out the possibility of sup
porting some of the rich atk interfaces on windows.
...on windows, we solve this by sup
porting an additional interface beyond msaa's iaccesible, for every dom node.
Accessible Toolkit Checklist
for example, a unique child id would be required for each tree item sup
porting the most important basic iaccessible events get_accparent: get the parent of an iaccessible.
... sup
porting the basic msaa states on every item: unavailable, focused, readonly, offscreen, focusable to avoid extra work, utilize implementing an msaa server mnemonics ability to define in xml for any widget with a text label (via attribute or a preceding char in label) automatically define mnemonics for all standard common dialogs (like yes/no confirmations and retry/exit e...
Adding phishing protection data providers
optional preferences browser.safebrowsing.provider.idnum.reporturl an url used for re
porting when users visit phishing pages and whether or not they decided to heed the warning or to ignore it.
... browser.safebrowsing.provider.idnum.reportgenericurl not currently used; intended for use in re
porting other issues with the phishing protection service.
The Firefox codebase: CSS Guidelines
when im
porting your stylesheets, it's best to import the content css before the theme css, that way the theme values get to override the content values (which is probably what you want), and you're going to want them both after the global values, so your imports will look like this: <?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> <?xml-stylesheet href="chrome://browser/content/path/mo...
... hdpi support it's recommended to use svg since it keeps the css clean when sup
porting multiple resolutions.
How to get a stacktrace for a bug report
seamonkey and thunderbird also support crash re
porting.
... if breakpad successfully sends the crash report to the re
porting server then, by default, the files added to the 'pending' subdirectory for the crash are removed, and a .txt file is placed in the 'submitted' directory containing the crash id created by the re
porting server.
How to Report a Hung Firefox
if that's not you, or you just want to fix a firefox hang without re
porting it, see firefox hangs or is not responding - how to fix.
... (if you're experiencing high cpu usage and firefox eventually recovers from a hang, you should try the instructions at re
porting a performance problem instead.) is the rest of your system busy (high cpu or memory usage, or high disk activity)?
Using JavaScript code modules
any javascript item named in exported_symbols will be exported from the module and injected into the im
porting scope.
... im
porting commonjs modules the javascript code modules described here are not the same thing as commonjs modules, but you can import commonjs modules into any scope where you can use components.utils.import.
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 re
porting.
... bookmarkhtmlutils.jsm provides utility functions for im
porting and ex
porting bookmarks from the old-school "bookmarks.html" style bookmark files.
Application Translation with Mercurial
ex
porting the changes as patch a patch is a file containing recorded changes to a repository.
...if you find that changes have to be done, edit the real aboutprivatebrowsing.dtd file from the localization repository, save it and follow the steps from ex
porting the changes as patch (see above).
DMD
64 x 37,925; 48 x 78,392; 32 x 136,199; 16 x 31,001; 8 x 4,706 3.78% of the heap (10.24% cumulative) 21.24% of unreported (57.53% cumulative) allocated at { #01: (no stack trace recorded due to --stacks=partial) } } in contrast, stack traces are always recorded when a block is reported, which means you can end up with records like this where the allocation point is unknown but the re
porting point is known: once-reported { 104,491 blocks in heap block record 13 of 4,689 10,392,000 bytes (10,392,000 requested / 0 slop) individual block sizes: 512 x 124; 256 x 242; 192 x 813; 128 x 54,664; 64 x 48,648 1.35% of the heap (48.65% cumulative) 1.64% of once-reported (59.18% cumulative) allocated at { #01: (no stack trace recorded due to --stacks=partial) } reported at {...
...see performance/memory_re
porting for more details about how memory reporters are written.
Profiling with the Firefox Profiler
re
porting a performance problem has a step-by-step guide for obtaining a profile when requested by firefox developers.
... a profile re
porting that a large portion is spent in "unknown" code indicates that the area being executed doesn't have any sample labels.
Dynamic Library Linking
dynamic library search path ex
porting symbols from the main executable program dynamic library search path the dynamic library search path is the list of directories in which to look for a dynamic library.
... ex
porting symbols from the main executable program on some systems, symbols defined in the main executable program are not exported by default.
Introduction to NSPR
nspr does not provide a platform for
porting existing code.
...this puts them at some risk in sup
porting arbitrary code, even if the code is interpreted (java).
An overview of NSS Internals
nss prefers the binary presentation, but is often capable to use base64 or ascii presentations, especially when im
porting data from files.
...you should assign a good nickname to a certificate when im
porting it, making it easier for you to refer to it later.
NSS 3.12.4 release notes
nss bug 483653: unable to build certutil.exe for fennec/wince bug 485145: miscellaneous crashes in signtool on windows bug 485155: nss_enable_pkix_verify=1 causes sec_error_unknown_issuer errors bug 485527: rename the _x86_ macro in lib/freebl bug 485658: vfychain -p reports revoked cert bug 485745: modify fipstest.c to support cavs 7.1 drbg testing bug 486304: cert7.db/cert8.db corruption when im
porting a large certificate (>64k) bug 486405: allocator mismatches in pk12util.c bug 486537: disable execstack in freebl x86_64 builds on linux bug 486698: facilitate the building of major components independently and in a chain manner by downstream distributions bug 486999: calling ssl_setsockpeerid a second time leaks the previous value bug 487007: make lib/jar conform to nss coding style bug 487162: ...
...bug 488550: crash in certutil or pp when printing cert with empty subject name bug 488992: fix lib/freebl/win_rand.c warnings bug 489010: stop ex
porting mktemp and dbopen (again) bug 489287: resolve a few remaining issues with nss's new revocation flags bug 489710: byteswap optimize for msvc++ bug 490154: cryptokey framework requires module to implement generatekey when they support keypairgeneration bug 491044: remove support for vms (a.k.a., openvms) from nss bug 491174: cert_pkixverifycert reports wrong error code when ee cert is expired bug 4...
NSS 3.16.2.2 release notes
this fixes a regression introduced in nss 3.16.2 that prevented nss from im
porting some rsa private keys (such as in pkcs #12 files) generated by other crypto libraries.
... bugs fixed in nss 3.16.2.2 bug 1049435 - im
porting an rsa private key fails if p < q compatibility nss 3.16.2.2 shared libraries are backward compatible with all older nss 3.x shared libraries.
NSS 3.16.6 release notes
this fixes a regression introduced in nss 3.16.2 that prevented nss from im
porting some rsa private keys (such as in pkcs #12 files) generated by other crypto libraries.
... bugs fixed in nss 3.16.6 bug 1049435 - im
porting an rsa private key fails if p < q compatibility nss 3.16.6 shared libraries are backward compatible with all older nss 3.x shared libraries.
Python binding for NSS
nss provides cryptography services sup
porting ssl, tls, pki, pkix, x509, pkcs*, etc.
...im
porting into a nss database would sometimes fail or segfault.
NSPR functions
nss uses nspr internally as the
porting layer.
... pr_cleanup error re
porting nss uses nspr's thread-specific error code to report errors.
NSS environment variables
nss_shared_db 3.12 nss_disable_arena_free_list string (any non-empty value) define this variable to get accurate leak allocation stacks when using leak re
porting software.
...necessary on some platforms to get correct function names when using leak re
porting software.
sslfnc.html
however, these settings control the behavior of pr_connect and pr_accept only; if you don't call one of those functions after im
porting a non-ssl socket with ssl_import (as in the case of an already established tcp connection), ssl still needs to know whether the application is functioning as a client or server.
...however, these settings control the behavior of pr_connect and pr_accept only; if you don't call one of those functions after im
porting a non-ssl socket with ssl_import (as in the case of an already established tcp connection), ssl still needs to know whether the application is functioning as a client or server.
NSS_3.12.3_release_notes.html
nstructions for bignum are not implemented on windows 32-bit bug 441321: tolerate incorrect encoding of dsa signatures in ssl 3.0 handshakes bug 444404: libpkix reports unknown issuer for nearly all certificate errors bug 452391: certutil -k incorrectly reports ec private key as an orphan bug 453234: support for seed cipher suites to tls rfc4010 bug 453364: improve pk11_cipherop error re
porting (was: pk11_createcontextbysymkey returns null bug 456406: slot list leaks in symkeyutil bug 461085: rfe: export function cert_comparecerts bug 462293: crash on fork after softoken is dlclose'd on some unix platforms in nss 3.12 bug 463342: move some headers to freebl/softoken bug 463452: sql db creation does not set files protections to 0600 bug 463678: need to add rpath to 64-bit lib...
... bug 466736: incorrect use of nss_use_64 in lib/libpkix/pkix_pl_nss/system/pkix_pl_object.c bug 466745: random number generator fails on windows ce bug 467298: sql db code uses local cache on local file system bug 468279: softoken crash im
porting email cert into newly upgraded db bug 468532: trusted ca trust flags not being honored in cert_verifycert bug 469583: coverity: uninitialized variable used in sec_pkcs5createalgorithmid bug 469944: when built with microsoft compilers bug 470351: crlutil build fails on windows because it calls undeclared isatty bug 471539: stop honoring digital signatures in certificates and crls based o...
NSS Tools certutil-tasks
nss security tools: certutil tasks newsgroup: mozilla.dev.tech.crypto task list better error re
porting.
... support im
porting keys from a file.
Index
433 js_reporterror jsapi reference, spidermonkey js_reporterror is the simplest jsapi function for re
porting errors.
... 455 js_seterrorreporter jsapi reference, spidermonkey js_seterrorreporter enables you to define and use your own error re
porting mechanism in your applications.
JS_GetInstancePrivate
args js::callargs * optional argument, used for error re
porting.
... added in spidermonkey 32 argv jsval * optional argument vector, used for error re
porting.
JS_ReportError
create a formatted error or warning message to pass to a user-defined error re
porting function.
... description js_reporterror is the simplest jsapi function for re
porting errors.
WebReplayRoadmap
new features are possible with time travel, though, which would be nice to support: sup
porting the debugger's event breakpoints would allow searching the recording for places where particular dom events occur, and -- in the same manner as logpoints -- logging them to the console and allowing them to be seeked to later.
... still,
porting it to other posix systems (linux, android) will be easier than windows, due to the overlap with macos.
Places Developer Guide
im
porting: importhtmlfromfile (nsilocalfile afile, boolean aisinitialimport) - this imports all the bookmarks in the specified file into the current bookmarks collection.
...ex
porting: exporthtmltofile (nsilocalfile afile) - this exports all bookmarks in the toolbar, menu and unfiled bookmarks folders into the specified file.
Components.utils.exportFunction
to understand what happens if the functions you export accept arguments, see ex
porting functions that take arguments below.
... ex
porting functions that take arguments until firefox 34, any arguments that the function takes are structured-cloned across the security boundary unless they are native objects such as dom nodes.
Components.utils.import
example components.utils.import("resource://gre/modules/xpcomutils.jsm", this); difference from mozijssubscriptloader the differences from mozijssubscriptloader: the behavior when im
porting/loading the same code from different locations: the subscript loader evaluates the specified code each time it is invoked, with the caller's global object.
... additional resources components.utils bug 238324 the documentation in xpccomponents.idl the tests in js/xpconnect/tests/unit/ im
porting sdk/commonjs modules into other code ...
Components.utils.importGlobalProperties
each string is the name of an object to import, and will be defined on the im
porting scope's global.
...knowing that, we can just get a valid blob by im
porting a known module that has the objects, such as services.jsm const {blob, file, services} = cu.import("resource://gre/modules/services.jsm", {}); reference: stackoverflow :: use blob on firefox add-on hiddendomwindow the hidden domwindow has all of these objects automatically imported.
nsIChromeFrameMessageManager
removedelayedframescript() removes a script from the list of scripts sup
porting delayed load.
... void removedelayedframescript( in astring aurl ); parameters aurl the url of the script to remove from the list of scripts sup
porting delayed load.
nsIDOMWindow
when setting this attribute, an ns_error_not_implemented error may be returned by implementations not sup
porting zoom.
... this attribute should always return 1.0 for implementations not sup
porting text zoom.
nsIDocShell
when setting this attribute, a ns_error_not_implemented error may be returned by implementations not sup
porting zoom.
... implementations not sup
porting zoom should return 1.0 all the time for the get operation.
XPCOM
porting this code is required in order to make mozilla run on any given platform.xptcall
porting guideoriginal author: john bandhauer, 31 may 1999.xptcall
porting statusthis is a status page for the multiplatform
porting of xptcall.
... xptcall has a faq and a
porting guide.
Working with windows in chrome code
the im
porting scope will have access to the objects and data in the code module.
... the scope is shared between modules and the im
porting scope, so you have to worry about name collisions.
RTCIceCandidatePairStats - Web APIs
in addition, it adds the following new properties: availableincomingbitrate optional provides an informative value representing the available inbound capacity of the network by re
porting the total number of bits per second available for all of the candidate pair's incoming rtp streams.
... availableoutgoingbitrate optional provides an informative value representing the available outbound capacity of the network by re
porting the total number of bits per second available for all of the candidate pair's outoing rtp streams.
Report.body - Web APIs
examples let options = { types: ['deprecation'], buffered: true } let observer = new re
portingobserver(function(reports, observer) { let firstreport = reports[0]; // log the first report's report body, i.e.
... a deprecationreportbody object console.log(firstreport.body); }, options); specifications specification status comment re
porting apithe definition of 'report.body' in that specification.
Report.type - Web APIs
examples let options = { types: ['deprecation'], buffered: true } let observer = new re
portingobserver(function(reports, observer) { let firstreport = reports[0]; // log the first report's report type, i.e.
... "deprecation" console.log(firstreport.type); }, options); specifications specification status comment re
porting apithe definition of 'report.body' in that specification.
Report.url - Web APIs
examples let options = { types: ['deprecation'], buffered: true } let observer = new re
portingobserver(function(reports, observer) { let firstreport = reports[0]; // log the url of the document that generated the first report // e.g.
... "https://www.example.com/cats.html" console.log(firstreport.url); }, options); specifications specification status comment re
porting apithe definition of 'report.url' in that specification.
WebRTC API - Web APIs
adapter.js uses shims and polyfills to smooth over the differences among the webrtc implementations across the environments sup
porting it.
... resources protocols webrtc-proper protocols application layer protocol negotiation for web real-time communications webrtc audio codec and processing requirements rtcweb data channels rtcweb data channel protocol web real-time communication (webrtc): media transport and use of rtp webrtc security architecture transports for rtcweb related sup
porting protocols interactive connectivity establishment (ice): a protocol for network address translator (nat) traversal for offer/answer protocol session traversal utilities for nat (stun) uri scheme for the session traversal utilities for nat (stun) protocol traversal using relays around nat (turn) uniform resource identifiers an offer/answer model with session description protocol (sdp) sessi...
ARIA: listbox role - Accessibility
sup
porting this key is strongly recommended for lists with more than five options.
...sup
porting this key is strongly recommended for lists with more than five options.
Accessibility documentation index - Accessibility
the intention is to strike a balance between providing useful guidance on how to use the markup's intended meaning while sup
porting live regions as an area for screen readers to innovate and compete.
... 43 aria: complementary role aria, aria role, reference, role-complementary the complementary landmark role is used to designate a sup
porting section that relates to the main content, yet can stand alone when separated.
Using multi-column layouts - CSS: Cascading Style Sheets
excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum </div> css #column_gap { column-count: 5; column-gap: 2em; } result graceful degradation the column properties will just be ignored by non-columns-sup
porting browsers.
... therefore it's relatively easy to create a layout that will display in a single column in those browsers and use multiple columns in sup
porting browsers.
Backwards Compatibility of Flexbox - CSS: Cascading Style Sheets
feature queries and flexbox you can use feature queries to detect flexbox support: @supports (display: flex) { // code for sup
porting browsers } note that internet explorer 11 does not support feature queries yet does support flexbox.
...the following feature query would include uc browser, which supports feature queries and old flexbox syntax, prefixed: @supports (display: flex) or (display: -webkit-box) { // code for sup
porting browsers } for more information about using feature queries see using feature queries in css on the mozilla hacks blog.
Writing Web Audio API code that works in every browser - Developer guides
if you're
porting moderately "old" code (say, a year old) it's possible that it uses some methods that audiocontext-monkeypatch doesn't alias, because it helps you to write code in the new style.
...you can also check this article on
porting which covers more cases and has many code samples.
Audio and Video Delivery - Developer guides
<audio controls> <source src="audiofile.mp3" type="audio/mpeg"> <source src="audiofile.ogg" type="audio/ogg"> <!-- fallback for non sup
porting browsers goes here --> <a href="audiofile.mp3">download audio</a> <object width="320" height="30" type="application/x-shockwave-flash" data="flashmediaelement.swf"> <param name="movie" value="flashmediaelement.swf" /> <param name="flashvars" value="controls=true&isvideo=false&file=audiofile.mp3" /> </object> </audio> the process is very similar with video — just remember to set i...
...license/key exchange is controlled by the application, facilitating the development of robust playback applications sup
porting a range of content decryption and protection technologies.
Content categories - Developer guides
script-sup
porting elements script-sup
porting elements are elements which don't directly contribute to the rendered output of a document.
... the script-sup
porting elements are: <script> <template> transparent content model if an element has a transparent content model, then its contents must be structured such that they would be valid html 5, even if the transparent element were removed and replaced by the child elements.
HTML5 Parser - Developer guides
in other words, in sup
porting html5, gecko, webkit, and internet explorer (ie) will behave more consistently with each other.
...in addition, sup
porting reparsing led to unnecessarily complex parsing code.
Introduction to HTML5 - Developer guides
however, gecko, and by extension, firefox, has very good support for html5, and work continues toward sup
porting more of its features.
... gecko began sup
porting some html5 features in version 1.8.1.
disabled - HTML: Hypertext Markup Language
when a sup
porting element has the disabled attribute applied, the :disabled pseudo-class also applies to it.
... if present on a sup
porting elements, the :disabled pseudo class will match.
<template>: The Content Template element - HTML: Hypertext Markup Language
content categories metadata content, flow content, phrasing content, script-sup
porting element permitted content no restrictions tag omission none, both the starting and ending tag are mandatory.
... permitted parents any element that accepts metadata content, phrasing content, or script-sup
porting elements.
Content Security Policy (CSP) - HTTP
enabling re
porting by default, violation reports aren't sent.
... to enable violation re
porting, you need to specify the report-uri policy directive, providing at least one uri to which to deliver the reports: content-security-policy: default-src 'self'; report-uri http://reportcollector.example.com/collector.cgi then you need to set up your server to receive the reports; it can store or process them in whatever manner you determine is appropriate.
CSP: report-to - HTTP
the content-security-policy report-to http response header field instructs the user agent to store re
porting endpoints for an origin.
... csp version 1 directive type re
porting directive this directive is not supported in the <meta> element.
Index - HTTP
51 report-to csp, http, report-to the report-to http response header field instructs the user agent to store re
porting endpoints for an origin.
... 61 expect-ct http, reference, header the expect-ct header allows sites to opt in to re
porting and/or enforcement of certificate transparency requirements, which prevents the use of misissued certificates for that site from going unnoticed.
X-Frame-Options - HTTP
note: the content-security-policy http header has a frame-ancestors directive which obsoletes this header for sup
porting browsers.
...in sup
porting legacy browsers, a page can be displayed in a frame only on the specified origin uri.
X-XSS-Protection - HTTP
header type response header forbidden header name no syntax x-xss-protection: 0 x-xss-protection: 1 x-xss-protection: 1; mode=block x-xss-protection: 1; report=<re
porting-uri> 0 disables xss filtering.
... 1; report=<re
porting-uri> (chromium only) enables xss filtering.
HTTP headers - HTTP
expect-ct allows sites to opt in to re
porting and/or enforcement of certificate transparency requirements, which prevents the use of misissued certificates for that site from going unnoticed.
... nel defines a mechanism that enables developers to declare a network error re
porting policy.
String.prototype.replace() - JavaScript
only available in browser versions sup
porting named capturing groups.
... groups in browser versions sup
porting 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).
The "codecs" parameter in common media types - Web media technologies
both video and audio tracks can be described using the codecs parameter with the following mime types: base mime types sup
porting the iso bmff codecs parameter mime type description audio/3gpp 3gp audio (rfc 3839: mime type registrations for 3rd generation partnership project (3gp) multimedia files) video/3gpp 3gp video (rfc 3839: mime type registrations for 3rd generation partnership project (3gp) multimedia files) audio/3gp2 3gp2 audio (rfc 4393: mime type registrations f...
...the table below provides a basic list of the audio object types and in the case of the more common object ypes provides a list of the profiles sup
porting it, but you should refer to the specification for details if you need to know more about the inner workings of any given mpeg-4 audio type.
OpenSearch description format
for details on how to implement search suggestion support on a server, see sup
porting search suggestions in search plugins.
... sup
porting automatic updates for opensearch plugins opensearch plugins can automatically update.
Index - XSLT: Extensible Stylesheet Language Transformations
9 introduction gecko, intro, javascript, xslt with modern browsers sup
porting xslt, developers can now use javascript to access the power that xslt provides.
...generally speaking, the contents of the imported stylesheet have a lower import precedence than that of the im
porting stylesheet.
Contributor's Guide - Archive of obsolete content
unfortunately, javascript does not yet have native support for modules: it has to rely on the host application to provide it with functionality such as loading subscripts, and ex
porting/ im
porting names.
Working with Events - Archive of obsolete content
for example, the following add-on registers a listener with the tabs module to listen for the ready event, and logs a string to the console re
porting the event: var tabs = require("sdk/tabs"); tabs.on("ready", function () { console.log("tab loaded"); }); it is not possible to enumerate the set of listeners for a given event.
widget - Archive of obsolete content
parameters options : object required options: name type label string a string description of the widget used for accessibility, title bars, and error re
porting.
loader/sandbox - Archive of obsolete content
evaluate code module provides evaluate function that lets you execute code in the given sandbox: evaluate(scope, 'var a = 5;'); evaluate(scope, 'a + 2;'); //=> 7 more details about evaluated script may be passed via optional arguments that may improve exception re
porting: // evaluate code as if it was loaded from 'http://foo.com/bar.js' and // start from 2nd line.
Chrome Authority - Archive of obsolete content
for example, none of the following code will be matched by the manifest scanner, leading to exceptions at runtime, when the require() call is prohibited from im
porting the named modules: // all of these will fail!
Creating Event Targets - Archive of obsolete content
however: we're now im
porting from four modules: event/core gives us emit(): note that we don't need on, once, or off, since we will use eventtarget for adding and removing listeners event/target gives us eventtarget, which implements the interface for adding and removing listeners core/heritage gives us class(), which we can use to inherit from eventtarget util/object gives us merge(), which just simplifies se...
View Source for XUL Applications - Archive of obsolete content
im
porting gviewsourceutils xul applications wanting to show the source code for documents should import the viewsourceutils.js script instead of attempting to open the viewsource.xul window themselves: <script type="application/javascript" src="chrome://global/content/viewsourceutils.js"/> viewsourceutils.js exposes a gviewsourceutils global into the scope of the window that imports that script.
Setting up an extension development environment - Archive of obsolete content
useful for testing debug symbols and the crash re
porting system (firefox and thunderbird) javascript object examiner displays javascript object methods and properties for any available scope developer profile and devprefs sets up the development environment described above when installed (firefox and fennec) firefox extension proxy file extension files are normally installed in the user profile.
MMgc - Archive of obsolete content
this approach was not chosen for the following reasons: coordinating the marking thread and the main thread will require locking and may suffer due to lock overhead/contention sup
porting mac classic's cooperative threads makes this approach harder flash's frame based architecture gives us a very natural place to do this work we have better control over how much time is spent marking without threads when smp systems become more prevalent it may be worth investigating this approach because true parallelism may afford better performance.
Images, Tables, and Mysterious Gaps - Archive of obsolete content
should this property be adopted, then any browser sup
porting it could emulate traditional "shrinkwrap" behavior without risking other layout upset with the following rule: td {line-box-contain: font replaced;} /* proposed for css3 */ there are other possible fixes contained within the current css3 working drafts, such as line-height-policy.
Exception logging in JavaScript - Archive of obsolete content
exception re
porting in firefox 3 firefox 3 improves re
porting of unhandled exceptions by establishing a set of rules that determines whether or not an exception is worth re
porting: any methods on interfaces annotated with the [function] attribute in idl (see, for example, nsidomeventlistener) that throw exceptions always report those exceptions into the error console.
Downloading Nightly or Trunk Builds - Archive of obsolete content
the same machines produce about every 24 hours a "nightly" build which can be downloaded by anyone if you know where to get it: these are the nightly builds, and testers all over the world download them and test them, re
porting as they go along on any bugs that hit them.
Mozilla Crypto FAQ - Archive of obsolete content
for information on notification requirements related to the export of open source encryption source code, see the export administration regulations, in particular part 740, sections 740.13(e), "unrestricted encryption source code", and 740.17(g), "re
porting requirements".
Plug-n-Hack - Archive of obsolete content
plug-n-hack topics phase 1 this provides simplified integration and allows tools to advertize their capabilities to browsers phase 2 this will allow browsers to advertize their capabilities to security tools tools sup
porting pnh the browsers and tools known to support or be working on support for pnh get involved how to implement pnh in your tool or get involved with pnh development ...
Extensions - Archive of obsolete content
see the prism main window xul file for the actual structure: webrunner.xul
porting an existing extension since there aren't many extensions designed explicitly for prism, you may need to port your favorite extensions.
Tamarin build documentation - Archive of obsolete content
im
porting the project into eclipse file >> import >> general >> existing projects into workspace click next the root directory should be the full path to your top-level tamarin-redux directory ensure the 'avmshell-project' project is checked in the 'projects' list uncheck 'copy projects into workspace' click finish building in eclipse 8 build configurations are included for macos with the gcc 4.
registerChrome - Archive of obsolete content
in this case, registerchrome is sup
porting the old format of installation archives, in which the manifest.rdf file was always located at the highest level of the installation archive.
A XUL Bestiary - Archive of obsolete content
in general, chrome refers to a xul interface and all of its sup
porting files; chrome means the xul content and structure, plus the css skin, plus whatever localization and platform-specific files are part of that xul interface.
Namespaces - Archive of obsolete content
it holds and allows disambiguation of items having the same name." if you are familiar with c++ namespaces, java packages, perl packages, or python module im
porting, you are already familiar with the namespace concept.
Gecko Compatibility Handbook - Archive of obsolete content
using the appropriate doctype in an html document allows a web page author to continue to support the older, less compliant browsers while also sup
porting the newer, more compliant browsers by specifiying special quirks mode layout via the doctype.
Mozilla release FAQ - Archive of obsolete content
you could tackle:
porting mozilla to the os you use work on moving #ifdef platform to #ifdef feature/bug if you're on unix, port mozilla to the toolkit you prefer modularize/clean up apis fix bugs work on the expermental features (mail/news, aurora, nglayout) add new things: make opendoc and ole nglayout controls write new skins (see themes.org) add preference interfaces for the hidden f...
2006-11-03 - Archive of obsolete content
announcements a change in tp2's numbers on october 31st adam guthrie announced that: rob helmer will be adding his patch to fix tp2's re
porting of average pre-load times.
SMTP - MDN Web Docs Glossary: Definitions of Web-related terms
primary complications include sup
porting various authentication mechanisms (gssapi, cram-md5, ntlm, msn, auth login, auth plain, etc.), handling error responses, and falling back when authentication mechanisms fail (e.g., the server claims to support a mechanism, but doesn't).
XLink - MDN Web Docs Glossary: Definitions of Web-related terms
specification xlink 1.0 xlink 1.1 (currently a working draft) see also xml in mozilla code snippets:getattributens - a wrapper for dealing with some browsers not sup
porting this dom method code snippets:xml:base function - a rough attempt to find a full xlink-based on an xlink:href attribute (or <xi:include href=>) and its or an ancestor's xml:base.
About Scriptable Interfaces - Interfaces
when we label an interface as scriptable, we're saying that components ex
porting this interface can be referenced (through this interface) from scripts (e.g javascript), and that we can write new components implementing the interface using script languages.
Grids - Learn web development
see also css grid guides css grid inspector: examine grid layouts previous overview: css layout next in this module introduction to css layout normal flow flexbox grid floats positioning multiple-column layout responsive design beginner's guide to media queries legacy layout methods sup
porting older browsers fundamental layout comprehension assessment ...
Introduction to CSS layout - Learn web development
overview: css layout next in this module introduction to css layout normal flow flexbox grid floats positioning multiple-column layout responsive design beginner's guide to media queries legacy layout methods sup
porting older browsers fundamental layout comprehension assessment ...
Legacy layout methods - Learn web development
previous overview: css layout next in this module introduction to css layout normal flow flexbox grid floats positioning multiple-column layout responsive design beginner's guide to media queries legacy layout methods sup
porting older browsers fundamental layout comprehension assessment ...
Beginner's guide to media queries - Learn web development
previous overview: css layout next in this module introduction to css layout normal flow flexbox grid floats positioning multiple-column layout responsive design beginner's guide to media queries legacy layout methods sup
porting older browsers fundamental layout comprehension assessment ...
Normal Flow - Learn web development
previous overview: css layout next in this module introduction to css layout normal flow flexbox grid floats positioning multiple-column layout responsive design beginner's guide to media queries legacy layout methods sup
porting older browsers fundamental layout comprehension assessment ...
Positioning - Learn web development
when we add position: sticky to the <dt> element, along with a top value of 0, sup
porting browsers will stick the headings to the top of the viewport as they reach that position.
Practical positioning examples - Learn web development
in this module introduction to css layout normal flow flexbox grid floats positioning multiple-column layout responsive design beginner's guide to media queries legacy layout methods sup
porting older browsers fundamental layout comprehension assessment ...
Responsive design - Learn web development
previous overview: css layout next in this module introduction to css layout normal flow flexbox grid floats positioning multiple-column layout responsive design beginner's guide to media queries legacy layout methods sup
porting older browsers fundamental layout comprehension assessment ...
HTML forms in legacy browsers - Learn web development
graceful degradation is web developer's best friend graceful degradation and progressive enhancement are development patterns that allow you to build great stuff by sup
porting a wide range of browsers at the same time.
How to structure a web form - Learn web development
the last one is an <input> element of type date, for entering the expiration date of the card; this one will come up with a date picker widget in sup
porting browsers, and fall back to a normal text input in non-sup
porting browsers.
Adding vector graphics to the Web - Learn web development
this being the case, only sup
porting browsers will load the svg — older browsers will load the png instead: <img src="equilateral.png" alt="triangle with equal sides" srcset="equilateral.svg"> you can also use svgs as css background images, as shown below.
Index - Learn web development
152 sup
porting older browsers beginner, css, guide, layout, learn, feature queries, flexbox, float, grid, legacy you now have the knowledge to confidently use techniques such as grid and flexbox, create fallbacks for older browsers, and make use of any new techniques that might come along in the future.
Video and Audio APIs - Learn web development
just for fun, we are providing two re
porting mechanisms — a <span> containing the elapsed time in minutes and seconds, and an extra <div> that we will use to create a horizontal indicator bar that gets longer as the time elapses.
Inheritance in JavaScript - Learn web development
note: this modern way of writing classes is supported in all modern browsers, but it is still worth knowing about the underlying prototypal inheritance in case you work on a project that requires sup
porting a browser that doesn't support this syntax (most notably internet explorer).
Server-side web frameworks - Learn web development
they provide tools and libraries that simplify common web development tasks, including routing urls to appropriate handlers, interacting with databases, sup
porting sessions and user authorization, formatting output (e.g.
Ember interactivity: Events, classes and state - Learn web development
lass headercomponent extends component { @action onkeydown({ target, key }) { let text = target.value.trim(); let hasvalue = boolean(text); if (key === 'enter' && hasvalue) { alert(text); target.value = '' } } } the @action decorator is the only ember-specific code here (aside from extending from the component superclass, and the ember-specific items we are im
porting using javascript module syntax) — the rest of the file is vanilla javascript, and would work in any application.
Accessibility and Mozilla
websites such as online magazines with sophisticated audiences are now re
porting upwards of 25% firefox usage.embedding api for accessibilityevent process procedurethis diagram outlines how events are processed within gecko.
Add-ons
there are some
porting resources on firefox extension workshop, our site for firefox-specific development resources.
A bird's-eye view of the Mozilla framework
the article focuses on the architecture of the overall framework sup
porting the mozilla application suite, not the architecture of the individual applications themselves.
Browser chrome tests
call waitforexplicitfinish() from test() if you want to delay re
porting a result until after test() has returned.
What to do and what not to do in Bugzilla
a guide for confirming layout bugs (bugs in web page rendering) re
porting new bugs you should report a bug in the new state after going through the triaging process as described in the two above-mentioned guides.
Bugzilla
how to tell if a bug has already been reported it's useful (but not mandatory) for you to check if the problem you're re
porting has been already tracked.
Chrome registration
platformversion when sup
porting more then one application, it is often more convenient for an extension to specify which gecko version it is compatible with.
Capturing a minidump
small minidumps are created by the breakpad crash re
porting tool, but sometimes that's not sufficient to diagnose a problem.
Debugging JavaScript
you can also start the browser console when you launch firefox, by launching firefox from the command line and passing --jsconsole as a flag: /path/to/firefox --jsconsole log to the browser console using the standard console api after im
porting console.jsm: let console = (cu.import("resource://gre/modules/console.jsm", {})).console; console.log("hello from firefox code"); error console this is obsolete and is no longer enabled in firefox by default.
Debugging on Windows
here are some wildcards you can use (tested with vc 8): nscomptr.*\:\:.*=nostepinto (nsg|g)etter_*addrefs.*=nostepinto ns_convertutf.* ; might be too broad: (ns|promise)[^\:]*[ss]tring.* ...add common functions to this list should probably make a .reg file for easy im
porting obtaining stdout and other file handles running the following command in the command window in visual studio returns the value of stdout, which can be used with various debugging methods (such as nsgenericelement::list) that take a file* param: debug.evaluatestatement {,,msvcr80d}(&__iob_func()[1]) (alternatively you can evaluate {,,msvcr80d}(&__iob_func()[1]) in the quickwatch window) simi...
Debugging
re
porting a performance problem ...using the gecko profiler extension.
SVG Guidelines
avoid excessive grouping editors can sometimes do excessive grouping while ex
porting svgs.
Developer guide
crash tracking information about the socorro crash re
porting system.
Using the Browser API
false; prev.disabled = true; next.disabled = true; searchbar.value = ''; } } }); note that whenever one of the search-related methods is invoked, a mozbrowserfindchange event is fired to allow you to react to search changes in a more precise way if desired: //browser.addeventlistener('mozbrowserfindchange', function(e) { // can react to find changes if required //}) re
porting errors we've got one more piece of code to mention from our source: browser.addeventlistener('mozbrowsererror', function (e) { console.log("loading error: " + e.detail); }); this simple listener logs an error message to the console when an error with the browser iframe is encountered.
How test harnesses work
extension in the profile (for non-marionette tests) gathers the tests (manifestdestiny) potentially sets up an http server for test data (mozhttpd) invokes the binary (mozrunner) it is the job of the shim extension to shut down the browser logging (mozlog, in theory) (run tests, accrue results) cleanup: shutdown the browser check for crashes (mozcrash) re
porting (moztest) marionette tests list of testing extensions pageloader (talos) mochitest: //github.com/realityripple/uxp/blob/master/testing/mochitest/install.rdf (mochitest) ...
Extending a Protocol
the tutorial is designed for browser engineers who are implementing dom/web apis that need to, for example, send a message to the os or spin up something off the main thread - so it's biased towards sup
porting w3c/whatwg dom apis.
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 re
porting.
Interfacing with the Add-on Repository
im
porting the repository code module before you can use the add-on repository api, you need to import the code module: components.utils.import("resource://gre/modules/addonrepository.jsm"); having done this, you can then access the api through the resulting addonrepository object.
Following the Android Toasts Tutorial from a JNI Perspective
var geckoappshell = jni.loadclass(my_jenv, sig.geckoappshell.substr(1, sig.geckoappshell.length - 2), { static_methods: [ { name: 'getcontext', sig: '()' + sig.context } ] });
porting the java code now that all the declarations are complete, we can now side-by-side port the java code to jni.
Examples
when a proper rejection handler is used, it effectively replaces this delayed re
porting.
Webapps.jsm
im
porting components.utils.import("resource://gre/modules/webapps.jsm"); // exported symbol is domapplicationregistry method overview init: function() loadcurrentregistry: function() notifyappsregistrystart: function notifyappsregistrystart() notifyappsregistryready: function notifyappsregistryready() sanitizeredirects: function sanitizeredirects(asource) _savewidgetsfullpath: function(amanifest, adestapp) appkind: function(aapp, amanifest) updatepermissionsforapp: function(aid, aispreinstalled) updateofflinecacheforapp: function(aid) installpreinstalledapp: function installpreinstalledapp(aid) removeifhttpsduplicate: function(aid) installsystemapps: function(...
Localizing with Mozilla Translator
to migrate the existing translation in the old product, you need to export partial glossaries from the old product, selecting the ''link'' origin (see the previous section) and im
porting them into the ''link'' target.
MathML In Action
your feedback can be manifested by putting mathml content on the web, re
porting bugs in bugzilla, and, if you can help with code, inspecting/improving the current code, and/or picking up an item in the todo list.
Mozilla MathML Status
we are only interested in sup
porting attributes "inherited from the surrounding context", which are those effectively used in practice.
Are We Slim Yet
to this end we request that memory re
porting be integrated into any new process before it is enabled on nightly.
tools/power/rapl
windows unfortunately, rapl does not work on windows, and
porting it would be difficult because windows does not have apis that allow easy access to the relevant model-specific registers.
Profile Manager
re
porting bugs profile manager bugs should be reported in bugzilla, under testing -> profilemanager.
Emscripten
with emscripten, c/c++ developers don’t have the high cost of
porting code manually to javascript — or having to learn javascript at all.
MailNews automated testing
this page and its sub-pages describe (and link to) the available test mechanisms within mailnews, and provide sup
porting information for developers and testers.
Logging
log types and variables two types sup
porting nspr logging are exposed in the api: prlogmoduleinfo prlogmodulelevel two environment variables control the behavior of logging at execution time: nspr_log_modules nspr_log_file logging functions and macros the functions and macros for logging are: pr_newlogmodule pr_setlogfile pr_setlogbuffering pr_logprint pr_logflush pr_log_test pr_log pr_assert pr_assert pr_static_ass...
NSPR API Reference
library linking library linking types prlibrary prstaticlinktable library linking functions pr_setlibrarypath pr_getlibrarypath pr_getlibraryname pr_freelibraryname pr_loadlibrary pr_unloadlibrary pr_findsymbol pr_findsymbolandlibrary finding symbols defined in the main executable program platform notes dynamic library search path ex
porting symbols from the main executable program process management and interprocess communication process management types and constants prprocess prprocessattr process management functions setting the attributes of a new process creating and managing processes multiwait receive system information and environment variables logging conditional compilation a...
Getting Started With NSS
the nss library and its sup
porting command line tools are written in the c programming language.
NSS_3.12.1_release_notes.html
s in lib/util and lib/freebl bug 433437: vfychain ignores the -a option bug 433594: crash destroying ocsp cert id [[@ cert_destroyocspcertid ] bug 434099: nss relies on unchecked pkcs#11 object attribute values bug 434187: fix the gcc compiler warnings in nss/lib bug 434398: libpkix cannot find issuer cert immediately after checking it with ocsp bug 434808: certutil -b deadlock when im
porting two or more roots bug 434860: coverity 1150 - dead code in ocsp_createcertid bug 436428: remove unneeded assert from sec_pkcs7encryptlength bug 436430: make nss public headers compilable with no_nspr_10_support defined bug 436577: uninitialized variable in sec_pkcs5createalgorithmid bug 438685: libpkix doesn't try all the issuers in a bridge with multiple certs bug 438876: signtool is...
NSS_3.12_release_notes.html
can result in crash if user tries to view certificate [[@ secitem_compareitem_util] [[@ memcmp] bug 396256: certutil and pp do not print all the generalnames in a crldp extension bug 398019: correct confusing and erroneous comments in der_asciitotime bug 422866: vfychain -pp command crashes in nss_shutdown bug 345779: useless assignment statements in ec_gf2m_pt_mul_mont bug 349011: please stop ex
porting these crmf_ symbols bug 397178: crash when entering chrome://pippki/content/resetpassword.xul in url bar bug 403822: pkix_pl_ocsprequest_create can leave some members uninitialized bug 403910: cert_findusercertbyusage() returns wrong certificate if multiple certs with same subject available bug 404919: memory leak in sftkdb_readsecmoddb() (sftkmod.c) bug 406120: allow application to specify ocsp...
NSS 3.17.2 release notes
this fixes a regression introduced in nss 3.16.2 that prevented nss from im
porting some rsa private keys (such as in pkcs #12 files) generated by other crypto 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 re
porting ssl_error_no_cypher_overlap).
NSS 3.18 release notes
nss 3.18 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_18_rtm/src/ new in nss 3.18 new functionality when im
porting certificates and keys from a pkcs#12 source, it's now possible to override the nicknames, prior to im
porting them into the nss database, using new api sec_pkcs12decoderrenamecertnicknames.
NSS 3.30 release notes
the pk12util tool now supports im
porting and ex
porting data encrypted in the aes based schemes defined in pkcs#5 v2.1.
NSS 3.38 release notes
when repeatedly im
porting the same certificate into an sql database, the existing nickname will be kept.
NSS 3.44.4 release notes
thank you to cesar pereida garcia and the network and information security group (nisec) at tampere university for re
porting this issue.
NSS 3.49 release notes
64/aarch64 bug 1585189 - nss database uses 3des instead of aes to encrypt db entries bug 1603257 - fix ubsan issue in softoken ckm_nss_chacha20_ctr initialization bug 1590001 - additional hrr tests (cve-2019-17023) bug 1600144 - treat clienthello with message_seq of 1 as a second clienthello bug 1603027 - test that esni is regenerated after helloretryrequest bug 1593167 - intermittent mis-re
porting potential security risk sec_error_unknown_issuer bug 1535787 - fix automation/release/nss-release-helper.py on macos bug 1594933 - disable building dbm by default bug 1562548 - improve gcm perfomance on aarch32 this bugzilla query returns all the bugs fixed in nss 3.49: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classification=components&query_format=advanced&product=nss&targ...
NSS 3.52.1 release notes
thank you to cesar pereida garcia and the network and information security group (nisec) at tampere university for re
porting this issue.
NSS 3.53.1 release notes
thank you to sohaib ul hassan, billy bob brumley, and the network and information security group (nisec) at tampere university for re
porting this issue and providing a patch.
NSS API Guidelines
if you're good with tagging your releases, and then checking out (or ex
porting!) from the tag for your build, this saves you from messing around with specific files revision numbers.
PKCS11 FAQ
nss also does a similiar operation for im
porting private keys and certificates through pkcs12.
PKCS11 Implement
sup
porting multiple sessions if you support multiple sessions simultaneously and if you wish to support c_initpin, c_setpin, or c_generatekeypair, you must support simultaneous read-only and read/write sessions.
NSS tools : modutil
modutil -create -dbdir [sql:]directory adding a cryptographic module adding a pkcs #11 module means submitting a sup
porting library file, enabling its ciphers, and setting default provider status for various security mechanisms.
sslintro.html
configuration the configuration portion of an ssl-enabled application typically begins by opening a new socket and then im
porting the new socket into the ssl environment: pr_newtcpsocket.
NSS Tools certutil
this extension allows a certificate's key to be dedicated to sup
porting specific operations such as ssl server or object signing.
NSS Tools modutil
creating a set of security management database files (key3.db, cert8.db, and secmod.db): -create displaying basic module information or detailed information about the contents of a given module: -list [modulename] adding a pkcs #11 module, which includes setting a sup
porting library file, enabling ciphers, and setting default provider status for various security mechanisms: -add modulename -libfile library-file [-ciphers cipher-enable-list] [-mechanisms mechanism-list] adding a pkcs #11 module from an existing jar file: -jar jar-file -installdir root-installation-directory [-tempdir temporary-directory] deleting a specific pkcs #11 module from a security m...
NSS Tools pk12util
-h tokenname specify the name of the token to import into or export from -v enable debug logging when im
porting -k slotpasswordfile specify the text file containing the slot's password -k slotpassword specify a slot's password -w p12filepasswordfile specify the text file containing the pkcs 12 file's password -w p12filepassword specify the pkcs 12 file's password -c key-cipher specify the key encryption algorithm -c certcipher specify the pfx encryption algorithm -m | --key_len keylen spe...
NSS tools : modutil
modutil -create -dbdir [sql:]directory adding a cryptographic module adding a pkcs #11 module means submitting a sup
porting library file, enabling its ciphers, and setting default provider status for various security mechanisms.
Scripting Java
the package name with "packages." for example, to import the org.mozilla.javascript package you could use importpackage() as follows: $ java org.mozilla.javascript.tools.shell.main js> importpackage(packages.org.mozilla.javascript); js> context.currentcontext; org.mozilla.javascript.context@bb6ab6 occasionally, you will see examples that use the fully qualified name of the package instead of im
porting using the importpackage() method.
FOSS
flusspferd - (newer) c++ bindings libjspp - c++ template based library for extending & embedding spidermonkey; works with spidermonkey 1.8.5 and above, has lots of goodies spiderape - the oldest c++ bindings for spidermonkey trixul - (trixul cvs) - trixul xml-based gui toolkit embeds spidermonkey, using javascript to implement logic behind its gui, sup
porting calls from javascript to c++ objects rust mozjs - rust bindings used by servo gnome gjs - javascript bindings to gnome (broadly, to any library using the gobject introspection mechanism) objective caml http://alain.frisch.fr/soft.html#spider - bindings to embed spidermonkey in ocaml applications perl http://jspl.msg.mx/ - bindings to cross-embed spidermonkey and perl.
SpiderMonkey Internals
(otherwise, spidermonkey converts primitive values to objects before invoking their methods, per ecma 262-3 §11.2.1.) error handling spidermonkey has two interdependent error-handling systems: javascript exceptions (which are not implemented with, or even compatible with, any kind of native c/c++ exception handling) and error re
porting.
JS::CallArgs
then, when an eventual release making that change occurs,
porting efforts will require changing methods' signatures but won't require invasive changes to the methods' implementations, potentially under time pressure.
JSDeletePropertyOp
this callback may veto the ongoing property operation by optionally re
porting an error or raising an exception and then returning false.
JSErrorReport
describes the format of a js error that is used either by the internal error re
porting mechanism or by a user-defined error-re
porting mechanism.
JSNative
(returning false without re
porting an error or raising an exception terminates the script with an uncatchable error.
JSPropertyOp
each of these callbacks may veto the ongoing property operation by optionally re
porting an error or raising an exception and then returning false.
JSRuntime
exception handling, error re
porting, and some language options are per-jscontext.
JS_AddArgumentFormatter
callback description the conversion function should return true on success, and return false after re
porting an error or detecting an already-reported error.
JS_GetErrorPrototype
other contexts in the same runtime can have their own error re
porting functions.
Parser API
art:{line:1, column:10}, end:{line:1, column:12}}, type:"literal", value:42}) it is also available since firefox 7; it can be imported into the global object via: components.utils.import("resource://gre/modules/reflect.jsm") or into a specified object via: components.utils.import("resource://gre/modules/reflect.jsm", obj) built-in objects whether in spidermonkey shell or firefox (after im
porting), the global singleton object reflect currently contains just the parse method.
SpiderMonkey 1.8.5
the team is considering the removal of tinyids js_threadsafe is going away, with future versions sup
porting only thread-safe builds a new debugging api is on the way to replace jsd.
SpiderMonkey 1.8.7
the team is considering the removal of tinyids js_threadsafe is going away, with future versions sup
porting only thread-safe builds a new debugging api is on the way to replace jsd.
SpiderMonkey 1.8.8
the team is considering the removal of tinyids js_threadsafe is going away, with future versions sup
porting only thread-safe builds a new debugging api is on the way to replace jsd.
SpiderMonkey 17
the team is considering the removal of tinyids js_threadsafe is going away, with future versions sup
porting only thread-safe builds a new debugging api is on the way to replace jsd.
SpiderMonkey 24
the team is considering the removal of tinyids js_threadsafe is going away, with future versions sup
porting only thread-safe builds a new debugging api is on the way to replace jsd.
SpiderMonkey 31
js_threadsafe is going away, with future versions sup
porting only thread-safe builds a new debugging api is on the way to replace jsd.
SpiderMonkey 38
js_threadsafe is going away, with future versions sup
porting only thread-safe builds a new debugging api is on the way to replace jsd.
TPS Tests
it's common for the phase after the problem to be the one re
porting errors (e.g.
Web Replay
porting almost all implementation work so far has been on macos.
Zest
zest topics usecases re
porting security vulnerabilities to developers re
porting security vulnerabilities to companies defining active and passive scanner rules deep integration with security tools runtimes the runtime environments that support zest tools the tools that include support zest implementation the state of zest development videos simon demoed zest at appsec usa in november 2013,...
Mozilla Projects
crash re
porting firefox ships with an open-source crash re
porting system.
Pinning violation reports
the error page displayed by firefox when you encounter a pin violation gives you the option of re
porting this error.
Signing Mozilla apps for Mac OS X
it will guide you through creating a private key, certificate signing request, and im
porting your new developer id into the keychain access application on your mac.
XPCOM changes in Gecko 2.0
const nsgetfactory = xpcomutils.generatensgetfactory([mycomponent]); a component may implement backwards compatibility with gecko 1.9.2 by dynamically detecting which symbols are exported by xpcomutils.jsm and ex
porting the correct function: /** * xpcomutils.generatensgetfactory was introduced in mozilla 2 (firefox 4, seamonkey 2.1).
Components.utils.Sandbox
im
porting functions or objects into the sandbox you can import functions or objects into the sandbox simply by assigning them to the sandbox object.
XPCshell Test Manifest Expressions
lkit 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 this build is a debug build, false otherwise crashreporter - set to true if this build has crash re
porting code enabled, false otherwise.
nsCOMPtr
the class itself and the sup
porting functions that are used with it are not frozen, but they are available as part of the xpcom glue library for easy reuse.
nsSupportsWeakReference
example code // sup
porting weak references to a hypothetical implementation // of the nsifoo interface...
nsIBrowserHistory
it is called by history im
porting code and is used in the history migration tool.
nsIClipboard
widget/nsiclipboard.idlscriptable this interface supports basic clipboard operations such as: setting, retrieving, emptying, matching and sup
porting clipboard data.
nsIDOMGeoGeolocation
starting in gecko 1.9.2, you can access this service using: var geolocation = components.classes["@mozilla.org/geolocation;1"] .getservice(components.interfaces.nsidomgeogeolocation); note: if nsidgeogeolocation throws an exception when im
porting, try using this: var geolocation = components.classes["@mozilla.org/geolocation;1"] .getservice(components.interfaces.nsisupports); method overview void clearwatch(in unsigned short watchid); void getcurrentposition(in nsidomgeopositioncallback successcallback, [optional] in nsidomgeopositionerrorcallback errorcallback, ...
nsIMsgFolder
currently only sup
porting allmessagecountnotifications which refers to both total and unread message counts.
nsITelemetry
this is true if the fhr data re
porting service or the self-support service is enabled.
Working with Multiple Versions of Interfaces
this is because the call to do_createinstance(acid, aouter, error); will eventually evolve into a request for an object sup
porting the interface with iid ns_get_iid(nsiaccessibleretrieval).
XSLT 2.0
the code does not currently work on the mac (except for server edition sup
porting java 1.6) due to its lagging java support (and thus liveconnect support).
Testing Mozilla code
asan nightly projectthe asan nightly project involves building a firefox nightly browser with the popular addresssanitizer tool and enhancing it with remote crash re
porting capabilities for any errors detected.clang static analysisthis document is split in two parts.
Index
85 error re
porting tools thunderbird currently, thunderbird tends to eat a lot of exceptions.
Thunderbird extensions
an overview of thunderbird components developer reference docs: folder classes db views (message list) message summary database mailnews protocols mailnews filters error re
porting tools steel library (obsolete as of thunderbird 52, use https://github.com/protz/thunderbird-stdlib) developing new account types useful newsgroup discussions (anything that's very old should be regarded suspiciously, because there has been significant api rewrite over the past years making most techniques considerably easier) thunderbird api docs (mostly a...
WebIDL bindings
if init() or tojsvalue() returns false, they will generally set a pending exception on the jscontext; re
porting those is the responsibility of the caller.
Add to iPhoto
this is done using the js-ctypes library object's declare() method, just like im
porting a function: this.kcftypearraycallbacks = this.lib.declare("kcftypearraycallbacks", this.cfarraycallbacks); note: for the record, this is the part that requires a nightly build of firefox 3.7a5pre dated april 16, 2010 or later; this capability was introduced in that build.
Debugger.Script - Firefox Developer Tools
setbreakpoint(offset,handler) if the instance refers to a jsscript, set a breakpoint at the bytecode instruction atoffset in this script, re
porting hits to the hit method ofhandler.
Settings - Firefox Developer Tools
style editor show original sources when a css preprocessor sup
porting source maps is used, this enables the style editor to display the original, preprocessor, sources rather than the generated css.
Style Editor - Firefox Developer Tools
the media sidebar works especially well with responsive design view for creating and debugging responsive layouts: from firefox 46 onwards, if an @media rule contains a screen size in a condition, then it is made clickable: clicking it then resizes the screen to that size using the responsive design view: creating and im
porting style sheets you can create a new style sheet by clicking the new button in the toolbar.
Using the CSS Painting API - Web APIs
.fancy { background-image: paint(headerhighlight); } putting it together we can then add the fancy class to any element on the page to add a yellow box as a background: <h1 class="fancy">my cool header</h1> the following example will look like the image above in browsers sup
porting the css painting api.
Using the CSS Typed Object Model - Web APIs
appendchild(document.createtextnode( propval )); row.appendchild( cssvalue ); // and the type of unit const cssunit = document.createelement( 'td' ); cssunit.appendchild( document.createtextnode( allcomputedstyles.get( ofinterest[i] ).unit )); row.appendchild( cssunit ); //add the row to the table stylestable.appendchild( row ); } for those of you using a non-sup
porting browser, the above output should looks something like this: property value unit padding-top 0 px margin-bottom 16 px font-size 16 px font-stretch 100 percent animation-duration 0 s animation-iteration-count 1 number width auto undefined height auto undefined ...
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 sup
porting it, like versions of internet explorer earlier than version 9 or textual browsers.
Using images - Web APIs
im
porting images into a canvas is basically a two step process: get a reference to an htmlimageelement object or to another canvas element as a source.
DOMTokenList.forEach() - Web APIs
html <span class="a b c"></span> javascript let span = document.queryselector("span"); let classes = span.classlist; let iterator = classes.values(); classes.foreach( function(value, key, listobj) { span.textcontent += `${value} ${key}/${this} ++ `; }, "arg" ); result polyfill this polyfill adds compatibility to all browsers sup
porting es5: if (window.domtokenlist && !domtokenlist.prototype.foreach) { domtokenlist.prototype.foreach = function (callback, thisarg) { thisarg = thisarg || window; for (var i = 0; i < this.length; i++) { callback.call(thisarg, this[i], i, this); } }; } specifications specification status comment domthe definition of 'foreach() (as iterable<node>)'...
Element.matches() - Web APIs
element.prototype.msmatchesselector || element.prototype.omatchesselector || element.prototype.webkitmatchesselector || function(s) { var matches = (this.document || this.ownerdocument).queryselectorall(s), i = matches.length; while (--i >= 0 && matches.item(i) !== this) {} return i > -1; }; } however, given the practicality of sup
porting older browsers, the following should suffice for most (if not all) practical cases (i.e.
FederatedCredential - Web APIs
in sup
porting browsers, an instance of this class may be passed the credential received from the init object for global fetch.
Using Fetch - Web APIs
} polyfill to use fetch in unsupported browsers, there is a fetch polyfill available that recreates the functionality for non-sup
porting browsers.
HTMLMediaElement.srcObject - Web APIs
const mediasource = new mediasource(); const video = document.createelement('video'); video.srcobject = mediasource; sup
porting 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.
HTMLScriptElement - Web APIs
examples dynamically im
porting scripts let's create a function that imports new scripts within a document creating a <script> node immediately before the <script> that hosts the following code (through document.currentscript).
IDBDatabase.transaction() - Web APIs
if you need to open the object store in readwrite mode to change data, you would use the following: var transaction = db.transaction('my-store-name', "readwrite"); as of firefox 40, indexeddb transactions have relaxed durability guarantees to increase performance (see bug 1112702), which is the same behaviour as other indexeddb-sup
porting browsers.
IDBTransaction.error - Web APIs
note the transaction.onerror = function(event) { }; block, making use of transaction.error to help in re
porting what went wrong when the transaction was unsuccessful.
IDBTransaction.oncomplete - Web APIs
as of firefox 40, indexeddb transactions have relaxed durability guarantees to increase performance (see bug 1112702), which is the same behaviour as other indexeddb-sup
porting browsers.
IDBTransaction.onerror - Web APIs
note the transaction.onerror = function(event) { }; block, making use of transaction.error to help in re
porting what went wrong when the transaction was unsuccessful.
Basic concepts - Web APIs
as of firefox 40, indexeddb transactions have relaxed durability guarantees to increase performance (see bug 1112702), which is the same behaviour as other indexeddb-sup
porting browsers.
MediaRecorder - Web APIs
mediarecorder.onerror an eventhandler called to handle the error event, including re
porting errors that arise with media recording.
MediaSession.setActionHandler() - Web APIs
audio.currenttime = math.max(audio.currenttime - skiptime, 0); }); sup
porting multiple actions in one handler function you can also, if you prefer, use a single function to handle multiple action types, by checking the value of the mediasessionactiondetails object's action property: let skiptime = 7; navigator.mediasession.setactionhandler("seekforward", handleseek); navigator.mediasession.setactionhandler("seekbackward", handleseek); function handleseek(details) { s...
Media Session action types - Web APIs
audio.currenttime = math.max(audio.currenttime - skiptime, 0); }); sup
porting multiple actions in one handler function you can also, if you prefer, use a single function to handle multiple action types, by checking the value of the mediasessionactiondetails object's action property: let skiptime = 7; navigator.mediasession.setactionhandler("seekforward", handleseek); navigator.mediasession.setactionhandler("seekbackward", handleseek); function handleseek(details) { s...
MediaSessionActionDetails - Web APIs
audio.currenttime = math.max(audio.currenttime - skiptime, 0); }); sup
porting multiple actions in one handler function you can also, if you prefer, use a single function to handle multiple action types, by checking the value of the mediasessionactiondetails object's action property: let skiptime = 7; navigator.mediasession.setactionhandler("seekforward", handleseek); navigator.mediasession.setactionhandler("seekbackward", handleseek); function handleseek(details) { s...
MutationObserverInit.attributeOldValue - Web APIs
syntax var options = { attributeoldvalue: true | false } value a boolean value indicating whether or not the prior value of a changed attribute should be included in the mutationobserver.oldvalue property when re
porting attribute value changes.
NDEFReader - Web APIs
nfc tags sup
porting ndef, when these devices are within the reader's magnetic induction field.
NDEFWriter - Web APIs
nfc tags sup
porting ndef, when these devices are within the reader's magnetic induction field.
Node.rootNode - Web APIs
example running the following line in sup
porting browsers should return a reference to the html/document node: console.log(document.body.rootnode); notes gecko-based browsers insert text nodes into a document to represent whitespace in the source markup.
NodeList.prototype.forEach() - Web APIs
let list = node.childnodes; list.foreach( function(currentvalue, currentindex, listobj) { console.log(currentvalue + ', ' + currentindex + ', ' + this); }, 'mythisarg' ); the above code results in the following: [object htmlparagraphelement], 0, mythisarg [object text], 1, mythisarg [object htmlspanelement], 2, mythisarg polyfill this polyfill adds compatibility to all browsers sup
porting es5: if (window.nodelist && !nodelist.prototype.foreach) { nodelist.prototype.foreach = function (callback, thisarg) { thisarg = thisarg || window; for (var i = 0; i < this.length; i++) { callback.call(thisarg, this[i], i, this); } }; } or if (window.nodelist && !nodelist.prototype.foreach) { nodelist.prototype.foreach = array.prototype.foreach; }...
PasswordCredential - Web APIs
in sup
porting browsers, an instance of this class may be passed the credential from the init object for global fetch.
PasswordCredential - Web APIs
in sup
porting browsers an instance of this class may be passed in the credential member of the init object for global fetch.
Pinch zoom gestures - Web APIs
<style> div { margin: 0em; padding: 2em; } #target { background: white; border: 1px solid black; } </style> global state sup
porting a two-pointer gesture requires preserving a pointer's event state during various event phases.
RTCIceCandidateType - Web APIs
usage notes the rtcicecandidatetype enumeration is used by the type property of rtcicecandidate objects, as well as when re
porting statistics on candidates using rtcicecandidatestats.candidatetype.
RsaHashedImportParams - Web APIs
the rsahashedimportparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.importkey() or subtlecrypto.unwrapkey(), when im
porting any rsa-based key pair: that is, when the algorithm is identified as any of rsassa-pkcs1-v1_5, rsa-pss, or rsa-oaep.
SVGSVGElement - Web APIs
svgsvgelement.forceredraw() in rendering environments sup
porting interactivity, forces the user agent to immediately redraw all regions of the viewport that require updating.
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 sup
porting browsers.
SpeechRecognitionEvent.emma - Web APIs
the exact contents can vary across user agents and recognition engines, but all sup
porting implementations will expose a valid xml document complete with an emma namespace.
SubtleCrypto - Web APIs
im
porting and ex
porting keys to make keys available outside your app, you need to export the key, and that's what exportkey() is for.
Using Touch Events - Web APIs
for more information about the interaction between mouse and touch events, see sup
porting both touchevent and mouseevent.
WebGL best practices - Web APIs
demo: https://jdashg.github.io/misc/webgl/device-pixel-presnap.html resizeobserver and 'device-pixel-content-box' on sup
porting browsers (chromium?), resizeobserver can be used with 'device-pixel-content-box' to request a callback that includes the true device pixel size of an element.
Using WebRTC data channels - Web APIs
this will become an issue when browsers properly support the current standard for sup
porting larger messages—the end-of-record (eor) flag that indicates when a message is the last one in a series that should be treated as a single payload.
Movement, orientation, and motion: A WebXR example - Web APIs
by im
porting this polyfill, we allow the example to work on many browsers that don't yet have webxr implementations in place, and we smooth out any transient deviations from the specification that occur during these still somewhat experimental days of the webxr specification.
WebXR Device API - Web APIs
sup
porting advanced controllers and gamepads in webxr applications webxr uses the gamepad object to describe the controls available on complex input devices (such as hand controllers with multiple buttons and/or axes) and gamepad-like devices.
Using the Web Storage API - Web APIs
these mechanisms are available via the window.sessionstorage and window.localstorage properties (to be more precise, in sup
porting browsers the window object implements the windowlocalstorage and windowsessionstorage objects, which the localstorage and sessionstorage properties are members of) — invoking one of these will create an instance of the storage object, through which data items can be set, retrieved, and removed.
Web Storage API - Web APIs
these mechanisms are available via the window.sessionstorage and window.localstorage properties (to be more precise, in sup
porting browsers the window object implements the windowlocalstorage and windowsessionstorage objects, which the localstorage and sessionstorage properties hang off) — invoking one of these will create an instance of the storage object, through which data items can be set, retrieved and removed.
Using Web Workers - Web APIs
im
porting scripts and libraries worker threads have access to a global function, importscripts(), which lets them import scripts.
XRView - Web APIs
it's computed by inverting then transposing the model view matrix: mat4.invert(normalmatrix, modelviewmatrix); mat4.transpose(normalmatrix, normalmatrix); tele
porting an object to programmatically move and/or rotate (often referred to as tele
porting) an object, you need to create a new reference space for that object which applies a transform that encapsulates the desired changes.
XSLTProcessor - Web APIs
[throws] document xsltprocessor.transformtodocument(node source) transforms the node source applying the stylesheet given im
porting using the xsltprocessor.importstylesheet() function.
Web APIs
ansport rtcsessiondescription rtcsessiondescriptioncallback rtcstats rtcstatsicecandidatepairstate rtcstatsreport rtcstatstype rtctrackevent rtctrackeventinit radionodelist range readablebytestreamcontroller readablestream readablestreambyobreader readablestreambyobrequest readablestreamdefaultcontroller readablestreamdefaultreader relativeorientationsensor renderingcontext report re
portingobserver re
portingobserveroptions request requestdestination resizeobserver resizeobserverentry response rsahashedimportparams rsahashedkeygenparams rsaoaepparams rsapssparams s svgaelement svgaltglyphdefelement svgaltglyphelement svgaltglyphitemelement svgangle svganimatecolorelement svganimateelement svganimatemotionelement svganimatetransformelement svganimatedangle svganimated...
ARIA Test Cases - Accessibility
autocomplete dojo autocomplete expected at behavior: screen reader should announce the fact that this is a control sup
porting autocomplete.
ARIA: feed role - Accessibility
keyboard interaction sup
porting the following, or a similar, interface is recommended when focus is inside the feed: page down: move focus to next article.
WAI-ARIA Roles - Accessibility
elements containing role="checkbox" must also include the aria-checked attribute to expose the checkbox's state to assistive technology.aria: comment rolethe comment landmark role semantically denotes a comment/reaction to some content on the page, or to a previous comment.aria: complementary rolethe complementary landmark role is used to designate a sup
porting section that relates to the main content, yet can stand alone when separated.
::grammar-error - CSS: Cascading Style Sheets
allowable properties only a small subset of css properties can be used in a rule with ::grammar-error in its selector: color background-color cursor caret-color outline and its longhands text-decoration and its associated properties text-emphasis-color text-shadow syntax ::grammar-error examples simple document grammar check in this example, eventual sup
porting browsers should highlight any flagged grammatical errors with the styles shown.
::spelling-error - CSS: Cascading Style Sheets
allowable properties only a small subset of css properties can be used in a rule with ::spelling-error in its selector: color background-color cursor caret-color outline and its longhands text-decoration and its associated properties text-emphasis-color text-shadow syntax ::spelling-error examples simple document spell check in this example, eventual sup
porting browsers should highlight any flagged spelling errors with the styles shown.
:blank - CSS: Cascading Style Sheets
syntax :blank examples simple :blank example in eventual sup
porting browsers, the :blank pseudo-class will enable developers to highlight in some way input controls that are not required, but still have no content filled in, perhaps as a reminder to users.
@import - CSS: Cascading Style Sheets
<mf-value>where <mf-name> = <ident><mf-value> = <number> | <dimension> | <ident> | <ratio> examples im
porting css rules @import 'custom.css'; @import url("chrome://communicator/skin/"); im
porting css rules conditionally @import url("fineprint.css") print; @import url("bluish.css") speech; @import "common.css" screen; @import url('landscape.css') screen and (orientation:landscape); specifications specification status comment css cascading and inheritance level 4the definit...
Coordinate systems - CSS: Cascading Style Sheets
displaying the coordinates as we'll see in the html, the inner box (the one we're watching for events on) contains several paragraphs; one for each of the four coordinate systems we'll be re
porting on.
CSS Flexible Box Layout - CSS: Cascading Style Sheets
backwards compatibility of flexbox browser status of flexbox, interoperability issues and sup
porting older browsers and versions of the spec specifications specification status comment css flexible box layout module candidate recommendation initial definition.
CSS Text Decoration - CSS: Cascading Style Sheets
be careful when removing the text decoration on anchors since users often depend on the underline to denote hyperlinks.</p> <p class="underover">this text has lines above <em>and</em> below it.</p> <p class="thick">this text has a really thick purple underline in sup
porting browsers.</p> <p class="blink">this text might blink for you, depending on the browser you use.</p> specifications specification status comment css text decoration module level 4 working draft css text decoration module level 3 candidate recommendation css level 2 (revision 1) recommendation css level 1 recomm...
Cookbook template - CSS: Cascading Style Sheets
useful fallbacks or alternative methods if there are useful alternative methods for building the recipe, or fallback recipes to use if you have to support non-sup
porting browsers, include them in separate sections down here.
Adapting to the new two-value syntax of display - CSS: Cascading Style Sheets
s specified then the specification explains that the outer value should be set to block: "if a <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 sup
porting 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.
font-optical-sizing - CSS: Cascading Style Sheets
you should see a difference in sup
porting browsers.</p> @font-face { src: url('amstelvaralpha-vf.ttf'); font-family:'amstelvar'; font-style: normal; } p { font-size: 36px; font-family: amstelvar; } .no-optical-sizing { font-optical-sizing: none; } note: the font referenced above — which includes optical sizing and is freely-licensed — is good for testing.
outline-color - CSS: Cascading Style Sheets
webaim: color contrast checker mdn understanding wcag, guideline 1.4 explanations understanding success criterion 1.4.3 | w3c understanding wcag 2.0 formal definition initial valueinvert, for browsers sup
porting it, currentcolor for the otherapplies toall elementsinheritednocomputed valuefor the keyword invert, the computed value is invert.
outline - CSS: Cascading Style Sheets
how to design useful and usable focus indicators wcag 2.1: understanding success criterion 2.4.7: focus visible formal definition initial valueas each of the properties of the shorthand:outline-color: invert, for browsers sup
porting it, currentcolor for the otheroutline-style: noneoutline-width: mediumapplies toall elementsinheritednocomputed valueas each of the properties of the shorthand:outline-color: for the keyword invert, the computed value is invert.
text-decoration - CSS: Cascading Style Sheets
be careful when removing the text decoration on anchors since users often depend on the underline to denote hyperlinks.</p> <p class="underover">this text has lines above <em>and</em> below it.</p> <p class="thick">this text has a really thick purple underline in sup
porting browsers.</p> <p class="blink">this text might blink for you, depending on the browser you use.</p> specifications specification status comment css text decoration module level 4 working draft adds text-decoration-thickness; note that this isn't yet officially part of the shorthand — this is as yet unspecified.
text-size-adjust - CSS: Cascading Style Sheets
formal definition initial valueauto for smartphone browsers sup
porting inflation, none in other cases (and then not modifiable).applies toall elementsinheritedyespercentagesyes, refer to the corresponding size of the text fontcomputed valueas specifiedanimation typediscrete formal syntax none | auto | <percentage> examples basic disabling usage as hinted at above, on a properly designed responsive site the text-size-adjust behavior is not needed, so developers ...
Constraint validation - Developer guides
validation-related attributes in addition to the type attribute described above, the following attributes are used to describe basic constraints: attribute input types sup
porting the attribute possible values constraint description associated violation pattern text, search, url, tel, email, password a javascript regular expression (compiled with the ecmascript 5 global, ignorecase, and multiline flags disabled) the value must match the pattern.
Writing forward-compatible websites - Developer guides
here's an example that works in browsers without html5 support but breaks in a browser sup
porting html5: <form action="http://www.example.com"> <input type="submit" value="submit the form" </form> due to the missing > on the input tag.
itemtype - HTML: Hypertext Markup Language
they must only be specified on elements with an itemscope attribute, whose itemtype attribute specifies a vocabulary not sup
porting global identifiers for items, as defined by that vocabulary's specification.
HTTP conditional requests - HTTP
integrity of a partial download partial downloading of files is a functionality of http that allows to resume previous operations, saving bandwidth and time, by keeping the already obtained information: a server sup
porting partial downloads broadcasts this by sending the accept-ranges header.
Configuring servers for Ogg media - HTTP
don't use http compression for media files one common way to reduce the load on a web server is to use gzip or deflate compression when serving to a sup
porting web browser.
Content-Encoding - HTTP
the http/1.1 standard also recommends that the servers sup
porting this content-encoding should recognize x-gzip as an alias, for compatibility purposes.
CSP: report-uri - HTTP
csp version 1 directive type re
porting directive this directive is not supported in the <meta> element.
Content-Security-Policy-Report-Only - HTTP
content-security-policy-report-only: default-src https:; report-uri /csp-violation-report-endpoint/ if you still want to receive re
porting, but also want to enforce a policy, use the content-security-policy header with the report-uri directive.
Feature-Policy: xr-spatial-tracking - HTTP
this policy controls whether navigator.xr.requestsession() can return xrsession that requires spatial tracking and whether user agent can indicate support for sessions sup
porting spatial tracking via navigator.xr.issessionsupported() and devicechange event on navigator.xr object.
NEL - HTTP
header type response header forbidden header name no syntax nel: { "report_to": "name_of_re
porting_group", "max_age": 12345, "include_subdomains": false, "success_fraction": 0.0, "failure_fraction": 1.0 } specifications specification network error logging ...
Transfer-Encoding - HTTP
the http/1.1 standard also recommends that the servers sup
porting this content-encoding should recognize x-gzip as an alias, for compatibility purposes.
HTTP resources and specifications - HTTP
control protocol (htcpcp/1.0) april 1st joke spec rfc 7168 the hyper text coffee pot control protocol for tea efflux appliances (htcpcp-tea) april 1st joke spec html living standard html defines extensions of http for server-sent events living standard tracking preference expression dnt header editor's draft / candidate recommendation re
porting api report-to header draft draft spec expect-ct extension for http ietf draft ...
501 Not Implemented - HTTP
501 is the appropriate response when the server does not recognize the request method and is incapable of sup
porting it for any resource.
JavaScript Guide - JavaScript
defining methods getter and setter details of the object model prototype-based oop creating object hierarchies inheritance promises guarantees chaining error propagation composition timing iterators and generators iterators iterables generators meta programming proxy handlers and traps revocable proxy reflect javascript modules ex
porting im
porting default exports renaming features aggregating modules dynamic module loading next » ...
Warning: String.x is deprecated; use String.prototype.x instead - JavaScript
examples deprecated syntax var num = 15; string.replace(num, /5/, '2'); standard syntax var num = 15; string(num).replace(/5/, '2'); shim the following is a shim to provide support to non-sup
porting browsers: /*globals define*/ // assumes all supplied string instance methods already present // (one may use shims for these if not available) (function() { 'use strict'; var i, // we could also build the array of methods with the following, but the // getownpropertynames() method is non-shimable: // object.getownpropertynames(string).filter(function(methodname) { // ret...
TypeError: "x" is not a function - JavaScript
using the latter will throw an error: const sixteen = 2(3 + 5); alert('2 x (3 + 5) is ' + string(sixteen)); //uncaught typeerror: 2 is not a function you can correct the code by adding a * operator: const sixteen = 2 * (3 + 5); alert('2 x (3 + 5) is ' + string(sixteen)); //2 x (3 + 5) is 16 import the exported module correctly ensure you are im
porting the module correctly.
Math.fround() - JavaScript
polyfill this can be emulated with the following function, if float32array are supported: math.fround = math.fround || (function (array) { return function(x) { return array[0] = x, array[0]; }; })(new float32array(1)); sup
porting older browsers is slower, but also possible: if (!math.fround) math.fround = function(arg) { arg = number(arg); // return early for ±0 and nan.
Number.prototype.toLocaleString() - JavaScript
a check that works in all hosts, including those sup
porting ecma-262 prior to ed 5.1, is to test for the features specified in ecma-402 that are required to support regional options for number.prototype.tolocalestring directly: function tolocalestringsupportsoptions() { return !!(typeof intl == 'object' && intl && typeof intl.numberformat == 'function'); } this tests for a global intl object, checks that it's not null and that it has a numberformat p...
WebAssembly.Instance.prototype.exports - JavaScript
instance.exports examples using exports after fetching some webassembly bytecode using fetch, we compile and instantiate the module using the webassembly.instantiatestreaming() function, im
porting a javascript function into the webassembly module in the process.
WebAssembly.Memory() constructor - JavaScript
the following example (see memory.html on github, and view it live also) fetches and instantiates the loaded memory.wasm byte code using the webassembly.instantiatestreaming() method, while im
porting the memory created in the line above.
WebAssembly.Memory.prototype.buffer - JavaScript
examples using buffer the following example (see memory.html on github, and view it live also) fetches and instantiates the loaded memory.wasm byte code using the webassembly.instantiatestreaming() method, while im
porting the memory created in the line above.
WebAssembly.Memory - JavaScript
the following example (see memory.html on github, and view it live also) fetches and instantiates the loaded memory.wasm byte code using the webassembly.instantiatestreaming() method, while im
porting the memory created in the line above.
WebAssembly.instantiate() - JavaScript
first overload example after fetching some webassembly bytecode using fetch, we compile and instantiate the module using the webassembly.instantiate() function, im
porting a javascript function into the webassembly module in the process.
Strict mode - JavaScript
browsers not sup
porting strict mode will run strict mode code with different behavior from browsers that do, so don't rely on strict mode without feature-testing for support for the relevant aspects of strict mode.
JavaScript
javascript is a prototype-based, multi-paradigm, single-threaded, dynamic language, sup
porting object-oriented, imperative, and declarative (e.g.
orientation - Web app manifests
note: orientation and/or its specific values might not be supported by a user agent on various display modes because sup
porting them does not make sense for the particular context.
Navigation and resource timings - Web Performance
((resource) => { console.dir(resource); }); performance.getentriesbytype('mark').foreach((mark) => { console.dir(mark); }); performance.getentriesbytype("measure").foreach((measure) => { console.dir(measure); }); performance.getentriesbytype('paint').foreach((paint) => { console.dir(paint); }); performance.getentriesbytype('frame').foreach((frame) => { console.dir(frame); }); in sup
porting browsers, you can use performance.getentriesbytype('paint') to query the measure for first-paint and first-contentful-paint.
Web Performance
in this guide we'll discuss some alternative media formats, how to use them responsibly so that non-sup
porting browsers don't get left out in the cold, and some advanced guidance on transcoding your existing assets to them.
Privacy, permissions, and information security
e likelihood of man-in-the-middle attacks http strict transport security (hsts) hsts is used by servers to let them protect themselves from protocol downgrade and cookie hijack attacks by letting sites tell clients that they can only use https to communicate with the server http/2 while http/2 technically does not have to use encryption, most browser developers are only sup
porting it when used with https, so it can be thought of in that regard as being security-related permissions api provides a way to determine the status of permissions for the current browser context transport layer security (tls); formerly known as secure sockets layer (ssl) tls provides security and privacy by encrypting data during transport over the network.
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 sup
porting user agents such as gecko-based browsers which must be very strict.
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 sup
porting user agents such as gecko-based browsers which must be very strict.
Features restricted to secure contexts - Web security
push api 42 17 not supported 44 re
porting api supported not supported not supported behind flag since fx 65 service workers 40 17 11.1 44 storage api 55 not supported not supported 51 web authentication api 65 in preview (17) in development 60 web bluetooth 56 not supported not supported not supported web midi (see midiaccess, for exa...
Types of attacks - Web security
in sup
porting browsers, this will have the effect of ensuring that the session cookie is not sent along with cross-site requests and so the request is effectively unauthenticated to the application server.
Web security
oss-site scripting cryptanalysis cryptographic hash function cryptography csp csrf decryption digital certificate dtls encryption forbidden header name forbidden response header name hash hmac hpkp hsts https key mitm owasp preflight request public-key cryptography re
porting directive robots.txt same-origin policy session hijacking sql injection symmetric-key cryptography tofu tls ...
Exported WebAssembly functions - WebAssembly
if you load the above example in a webassembly-sup
porting browser, and run the following lines in your console: var testfunc = othertable.get(0); typeof testfunc; you'll get the result function returned.
Loading and running WebAssembly code - WebAssembly
e.wasm'), importobject) .then(obj => { // call an exported function: obj.instance.exports.exported_func(); // or access the buffer contents of an exported memory: var i32 = new uint32array(obj.instance.exports.memory.buffer); // or access the elements of an exported table: var table = obj.instance.exports.table; console.log(table.get(0)()); }) note: for more information on how ex
porting from a webassembly module works, have a read of using the webassembly javascript api, and understanding webassembly text format.
Understanding WebAssembly text format - WebAssembly
lly equivalent to including a separate function statement outside the function, elsewhere in the module in the same manner as we did before, e.g.: (export "getanswerplus1" (func $functionname)) the javascript code to call our above module looks like so: webassembly.instantiatestreaming(fetch('call.wasm')) .then(obj => { console.log(obj.instance.exports.getanswerplus1()); // "43" }); im
porting functions from javascript we have already seen javascript calling webassembly functions, but what about webassembly calling javascript functions?