Back to Content

Firefox 31 release notes for developers

files/en-us/mozilla/firefox/releases/31/index.md

latest9.4 KB
Original Source

Firefox 31 was released on July 22, 2014. 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

Developer Tools

Highlights:

All devtools bugs fixed between Firefox 30 and Firefox 31.

CSS

  • Changed var- prefix of CSS Variables to -- to reflect the final spec change (Firefox bug 985838).
  • The {{cssxref("hyphens")}} property now support Polish hyphenation rules (Firefox bug 987668).
  • Removed an unwanted white space for multiple of 10,000 in Korean counter styles (Firefox bug 985186).
  • CSS opacity transition broken with parent pseudo :before and overflow auto (Firefox bug 990340).
  • The ::-moz-math-stretchy pseudo-element has been removed (Firefox bug 1000879).

HTML

JavaScript

New ECMAScript 2015 features implemented:

  • New Array built-in: {{jsxref("Array.prototype.fill()")}} (Firefox bug 911147)
  • New Math function: {{jsxref("Math.clz32()")}} (Firefox bug 925123)
  • New String built-in: {{jsxref("String.prototype.normalize()")}} is available in Firefox Desktop (Firefox bug 918987).
  • New Object method {{jsxref("Object.setPrototypeOf()")}}.
  • New Number constants: {{jsxref("Number.MAX_SAFE_INTEGER")}} and {{jsxref("Number.MIN_SAFE_INTEGER")}}.
  • The ES2015 Proxy {{jsxref("Global_Objects/Proxy/Proxy/isExtensible", "isExtensible")}} trap have been implemented (Firefox bug 978235).

Interfaces/APIs/DOM

  • Constructor of KeyboardEvent has been implemented (Firefox bug 930893).
  • The Resource Timing API has been implemented (see Firefox bug 822480).
  • KeyboardEvent.isComposing attribute has been implemented (Firefox bug 993234).
  • InputEvent interface has been implemented (Firefox bug 993253).
  • InputEvent.isComposing attribute has been implemented (Firefox bug 993253).
  • {{domxref("CSS.escape_static", "CSS.escape()")}} has been implemented (Firefox bug 955860).
  • {{domxref("Element/mousemove_event", "mousemove")}} is now cancelable like in other browsers (Firefox bug 704423). Calling preventDefault() only sets defaultPrevented attribute to true; any other behaviors are not changed. E.g., it cannot prevent to set :hover state.
  • The {{domxref("Path2D")}} interface has been implemented.
  • The {{domxref("CanvasRenderingContext2D.isPointInPath()")}}, {{domxref("CanvasRenderingContext2D.isPointInStroke()")}}, {{domxref("CanvasRenderingContext2D.clip()")}}, {{domxref("CanvasRenderingContext2D.fill()")}} and {{domxref("CanvasRenderingContext2D.stroke()")}} methods have been updated to optionally accept a {{domxref("Path2D")}} object.
  • Implemented {{domxref("HTMLMediaElement.fastSeek()")}}.
  • The Connection interface has been renamed to {{domxref("NetworkInformation")}} and has been modified to match the new specification (Firefox bug 960426).
  • The {{domxref("Navigator.sendBeacon()")}} has been implemented; this allows asynchronous transmission of analytics or other data in a manner that doesn't rely on the transmitting page remaining loaded, so that it can be used in an {{domxref("Window/unload_event", "unload")}} or {{domxref("Window.beforeunload_event", "beforeunload")}} handler.

MathML

SVG

No change.

Audio/Video

No change.

Security

Changes for add-on and Mozilla developers

  • The align attribute on the urlbar-wrapper (formerly on the urlbar-container) which was set to center since time immemorial, has been removed. This is known to affect third-party themes. You should look carefully at what the right fix is for your theme, but for maintaining the equivalent effect, you can add the following CSS rule to your theme:

    css
    #urlbar-wrapper {
      -moz-box-align: center;
    }
    
  • nsIDOMWindowUtils.sendQueryContentEvent() and nsIDOMWindowUtils.sendSelectionSetEvent() have aAdditionalFlags as optional argument. If you called nsIDOMWindowUtils.sendSelectionSetEvent() with true for aReverse, the behavior would be broken by this change. See explanation of each flag (QUERY_CONTENT_FLAG_* and SELECTION_SET_FLAG_*) for the detail of aAdditionalFlags.

Add-on SDK

Highlights:

GitHub commits made between Firefox 30 and Firefox 31. This will not include any uplifts made after this release entered Aurora.

Bugs fixed between Firefox 30 and Firefox 31. This will not include any uplifts made after this release entered Aurora.