Firefox 18



Firefox

  1. Firefox 18 Mac
  2. Mozilla Firefox 18.0 Free Download
  3. Firefox 18

Firefox 18 was released on January 8, 2013. This article lists key changes that are useful not only for web developers, but also Firefox and Gecko developers as well as add-on developers.

Firefox 18 was released on January 8, 2013. This article lists key changes that are useful not only for web developers, but also Firefox and Gecko developers as well as add-on developers.

Changes for Web developers

HTML

  • The reversed attribute of the <ol> element is now supported (bug 601912).
  • The crossorigin attribute of the <link> element is now supported (bug 786564).
  • The allowfullscreen attribute of the <iframe> has been implemented and it's prefixed predecessor mozallowfullscreen is now deprecated.

CSS

Firefox 18 will be released on the second week of January. Here’s the list of changes that went into Firefox 18 that can affect add-on compatibility. There is more information available in Firefox 18 for Developers, so you should read that too. App:// protocol and XHR. If you load local resources using XHR and you check for status. Get notifications on updates for this project. Get the SourceForge newsletter. Get newsletters and notices that include site news, special offers and exclusive discounts about IT products & services. Download uBlock Origin for Firefox. Finally, an efficient wide-spectrum content blocker. Easy on CPU and memory. Version History of Firefox 18.0.1 FIXED - 18.0.1: Problems involving HTTP Proxy Transactions (Associated bugs) FIXED - 18.0.1: Unity player crashes on Mac OS X (bug 828954).

  • The min-width and min-height now uses the auto keyword as initial value (This has an effect only on flex items as it resolves to 0, the previous initial value, for other items). (bug 763689)
  • The cascade has been updated: now author !important rules override CSS animations. (bug 783714)
  • The background shorthand property now recognizes CSS3 background-size property specified inside. (bug 570326)
  • Initial support for the CSS Flexbox Module has been landed. It is disabled by default but can be enabled by setting layout.css.flexbox.enabled to true. (bug 666041)

DOM/APIs

  • navigator.mozPay has been landed. (bug 767818)
  • window.devicePixelRatio has been landed. (bug 564815)
  • The MacOS X backend for window.navigator.battery has been implemented. (bug 696045)
  • MozBlobBuilder is removed. Developers need to use Blob constructor for creating a Blob object. (bug 744907)
  • The visibilitychange event and the Page Visibility API has been unprefixed (bug 812086).
  • TextDecoder and TextEncoder have been added. Note that the implementation and spec of these evolved and have been changed in Firefox 19 (bug 764234).
  • HTMLMediaElement.src has been separate in two properties: the standard src property, dealing with DOMString, and the prefixed mozSrcObject property, dealing with media streams (bug 792665).
  • Support for transferable objects.
  • The Screen.lockOrientation() method now supports an Array of DOMString as argument (bug 784549.

JavaScript

  • Harmony's (ECMAScript 2015) Direct Proxies have been landed (bug 703537). Warning: the implementation contains a couple of known bugs, missing features and misalignments with the current state of the spec. Do not rely on it for production code.
  • The ECMAScript 2015 contains() method is now implemented on strings. This is unfortunately not compatible with Mootools 1.2, which expects different behavior from contains() on strings but does not ensure it. Newer versions of Mootools fix this issue; sites should upgrade their Mootools version to something newer than 1.2.

WebGL

  • The prefixed version of the EXT_texture_filter_anisotropic WebGL extension, 'MOZ_EXT_texture_filter_anisotropic' has been removed (bug 790946).

SVG

MathML

XUL

Firefox 18Macbook

Network

  • Quality factors ('q-values') are now clamped to 2 digits (e.g. in HTTP Accept-Language headers) (bug 672448).
  • The ALLOW-FROM syntax of the X-FRAME-OPTIONS HTTP Response header is now supported (bug 690168).

Developer tools

Changes for add-on and Mozilla developers

Interface changes

nsIStreamListener
The 4th parameter (aOffset) of onDataAvailable() method changes to unsigned long long. (bug 784912)
nsIUploadChannel
setUploadStream() supports over 2GB content-length (bug 790617)
nsIEditor
addEditorObserver() has been removed, use setEditorObserver() instead, removeEditorObserver() no longer takes a nsIEditorObserver parameter (bug 785091)
nsIHttpProtocolHandler
http-on-modify-request observers are no longer guaranteed to be called synchronously during nsIChannel.asyncOpen().
For observers that need to be called during asyncOpen(), the new http-on-opening-request observer topic has been added. See (bug 800799)
nsIProtocolProxyService
The resolve method has been removed. Now, only the asyncResolve method can be used. See (bug 769764)

New interfaces

Removed interfaces

The following interfaces have been removed.

See also

  • Aurora 18: HiDPI & Touch Events (Mozilla Hacks)
  • Add-on Compatibility for Firefox 18 (Add-ons Blog)

Older versions

Firefox 18 will be released on the second week of January. Here’s the list of changes that went into Firefox 18 that can affect add-on compatibility. There is more information available in Firefox 18 for Developers, so you should read that too.

General

Firefox 18 Mac

  • app:// protocol and XHR. If you load local resources using XHR and you check for status 0, this will no longer work. You must check for status 200, like with a regular request.
  • Move various onfoo event listeners off of DOM objects. addEventListener should always be favored. If you need to set an on* property to add an event listener, you should set it to a function instead of an object containing the handleEvent function. Updated: There’s more information on this MDN page.
  • Remove synchronous proxy API and synchronous DNS resolution. This changes nsIProtocolProxyService and nsIProxyAutoConfig, as well as the newProxiedChannel function, in order to make them asynchronous.
  • Remove calls to nsICacheSession::openCacheEntry on the main thread. asyncOpenCacheEntry should be used instead.
  • Remove BlobBuilder. The Blob constructor should be used instead.
  • WebSocket constructor fails from the scope of an add-on. This bug is no longer present in Firefox 18, but it was during a big part of the 18 beta cycle. It was particularly easy to reproduce in add-ons using the Add-ons SDK. If this bug affected you, make sure you test again on the latest beta.
  • Porting Websockets to WebIDL. This should only affect add-ons who are creating WebSockets using XPCOM instead of the global constructor. This will no longer be possible.

Private Browsing

Private Browsing Mode is changing to support private and non-private windows opened at the same time. This means that many XPCOM interfaces and other functions are changing to support it. Mac os update from sierra to mojave. The changes are mostly new parameters that tell the function which context it is being called from, so that it can work accordingly.

  • Move the removeDataFromDomain API into its own service. The function was moved to a JS module: ClearRecentHistory.jsm.
  • Make network favicon requests inherit private browsing context. This adds a new argument to setAndLoadFaviconForPage.
  • imgLoader uses global PB notifications. Using imgICache or imgILoader is now deprecated. imgITools should be used instead. See the imgICache docs for more information.
  • nsWebBrowserPersist::SaveURIInternal creates a channel out of thin air. saveURI has a new argument, and there’s a new savePrivacyAwareURI function.
  • Add privacy status to nsDownload. This adds new arguments to nsIDownloadManager.addDownload, nsITransfer.init, and saveURL from contentAreaUtils.

There’s more information about the new private browsing in these docs: Supporting PBM, and Updating add-ons broken by PB changes.

New!

  • Support feeding TypedArray to js-ctypes.

Mozilla Firefox 18.0 Free Download

Please let me know in the comments if there’s anything missing or incorrect on these lists. If your add-on breaks on Firefox 18, I’d like to know.

Firefox 18

The automatic compatibility validation and upgrade for add-ons on AMO will happen next week, so check your email.