Changes for Web developers
Developer Tools
Highlights:
- Eyedropper tool to select colors in web pages
- full stack traces for console error messages
- editable Box Model View
- %c formatting to style console messages
- "copy as cURL" command in Network Monitor
- Sublime Text keybindings in the source editor
- Option to make Network Monitor logs persistent
- JavaScript warnings on by default in the Web Console
- Alt+click to expand all descendants of a node
All devtools bugs fixed between Firefox 30 and Firefox 31.
CSS
- Changed
var-
prefix of CSS Variables to--
to reflect the final spec change (bug 985838). - The
hyphens
property now support Polish hyphenation rules (bug 987668). - Removed an unwanted white space for multiple of 10,000 in Korean counter styles (bug 985186).
- CSS opacity transition broken with parent pseudo :before and overflow auto (bug 990340).
- The
::-moz-math-stretchy
pseudo-element has been removed (bug 1000879).
HTML
<track>
has been implemented (bug 629350).
JavaScript
New ECMAScript 2015 features implemented:
- New
Array
built-in:Array.prototype.fill()
(bug 911147) - New
Math
function:Math.clz32()
(bug 925123) - New
String
built-in:String.prototype.normalize()
is available in Firefox Desktop (bug 918987). - New
Object
methodObject.setPrototypeOf()
. - New
Number
constants:Number.MAX_SAFE_INTEGER
andNumber.MIN_SAFE_INTEGER
. - The ES2015 Proxy
isExtensible
trap have been implemented (bug 978235).
Interfaces/APIs/DOM
- Constructor of
KeyboardEvent
has been implemented (bug 930893). - The Resource Timing API has been implemented (see bug 822480).
KeyboardEvent.isComposing
attribute has been implemented (bug 993234).InputEvent
interface has been implemented (bug 993253).InputEvent.isComposing
attribute has been implemented (bug 993253).CSS.escape()
has been implemented (bug 955860).mousemove
is now cancelable like in other browsers (bug 704423). CallingpreventDefault()
only setsdefaultPrevented
attribute totrue;
any other behaviors are not changed. E.g., it cannot prevent to set:hover
state.- The
Path2D
interface has been implemented. - The
CanvasRenderingContext2D.isPointInPath()
,CanvasRenderingContext2D.isPointInStroke()
,CanvasRenderingContext2D.clip()
,CanvasRenderingContext2D.fill()
andCanvasRenderingContext2D.stroke()
methods have been updated to optionally accept aPath2D
object. - Implemented
HTMLMediaElement.fastSeek()
. - The
Connection
interface has been renamed toNetworkInformation
and has been modified to match the new specificaiton (bug 960426). - The
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 anunload
orbeforeunload
handler.
MathML
- Partial implementation of the OpenType MATH table, section 6.3.6 (bug 407059). For details, see the fonts for Mozilla's MathML engine and try the MathML torture test .
- The
:
:-moz-math-stretchy
pseudo-element has been removed (bug 1000879). - When available, the Unicode Mathematical alphanumeric characters are used for bold, italic and bold-italic mathvariants (bug 930504).
SVG
No change.
Audio/Video
No change.
Security
Changes for add-on and Mozilla developers
- The "
align
" attribute on theurlbar-wrapper
(formerly on theurlbar-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:
#urlbar-wrapper {
-moz-box-align: center;
} nsIDOMWindowUtils.sendQueryContentEvent()
andnsIDOMWindowUtils.sendSelectionSetEvent()
haveaAdditionalFlags
as optional argument. If you callednsIDOMWindowUtils.sendSelectionSetEvent()
withtrue
foraReverse
, the behavior would be broken by this change. See explanation of each flag (QUERY_CONTENT_FLAG_*
andSELECTION_SET_FLAG_*
) for the detail ofaAdditionalFlags
.
Add-on SDK
Highlights:
- Add-on Debugger
- Added the ability to convert between high-level BrowserWindow objects and DOM windows, and between high-level Tab objects and XUL tabs.
- Updated the default theme used for panels on Mac OS X.
- Added contentStyle and contentStyleFile options to panel.
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.
See also
Older versions
- Firefox 30 for developers
- Firefox 29 for developers
- Firefox 28 for developers
- Firefox 27 for developers
- Firefox 26 for developers
- Firefox 25 for developers
- Firefox 24 for developers
- Firefox 23 for developers
- Firefox 22 for developers
- Firefox 21 for developers
- Firefox 20 for developers
- Firefox 19 for developers
- Firefox 18 for developers
- Firefox 17 for developers
- Firefox 16 for developers
- Firefox 15 for developers
- Firefox 14 for developers
- Firefox 13 for developers
- Firefox 12 for developers
- Firefox 11 for developers
- Firefox 10 for developers
- Firefox 9 for developers
- Firefox 8 for developers
- Firefox 7 for developers
- Firefox 6 for developers
- Firefox 5 for developers
- Firefox 4 for developers
- Firefox 3.6 for developers
- Firefox 3.5 for developers
- Firefox 3 for developers
- Firefox 2 for developers
- Firefox 1.5 for developers
Document Tags and Contributors
Tags:
Contributors to this page:
Sebastianz,
kdex,
Sheppy,
teoli,
kohei.yoshino,
arai,
fscholz,
chrisdavidmills,
JWhy,
wbamberg,
fred.wang,
yisi,
ziyunfei,
GijsKruitbosch,
Masayuki,
mnoorenberghe
Last updated by:
Sebastianz,