Firefox 13 release notes for developers
Firefox 13 was shipped on June 5, 2012. This page summarizes the changes in Firefox 13 that affect developers.
Changes for Web developers
>HTML
- Tables' 
cellspacingattributes are now parsed the same outside quirks mode as they are in quirks mode. That is, if a value is specified as a percentage, it's treated as a number of pixels instead, since percentage values are not actually permitted according to the specification. - The 
<wbr>element has seen its bidirectional behavior fixed. It now behaves like the UnicodeU+200B ZERO-WIDTH SPACEand therefore doesn't affect bi-directionality of its parent element anymore. - The 
:invalidpseudo-class can now be applied to the<form>element. 
CSS
- The 
turn<angle>unit is now supported (to be used with CSS functions likerotate()). - Support for 3-to-4 value syntax of the 
background-positionhas been added. You can offset a background image from any corner by writing likeright 10px bottom 20px. See Firefox bug 522607 - Support for the 2-value syntax of the CSS 
background-repeathas been added. - Support for 
-moz-border-radius*and-moz-box-shadowhas been removed. Authors should use unprefixedborder-radiusorbox-shadowinstead. See Firefox bug 693510 - The 
column-fillproperty has been implemented (prefixed). 
JavaScript
DOM
- The 
Node.cloneNode()method'sdeepargument is now optional, as specified in DOM4. - The 
setTimeout(),setTimeout(),Window.setInterval()andWorkerGlobalScope.setInterval()methods no longer pass an additional "lateness" argument to the callback routine. - The 
Blob.mozSlice()method has been unprefixed. - Support for the 
Blobconstructor has been added. - Support for 
globalStoragehas been removed. - The new 
DOMRequestinterface, used for reporting the status and result of background operations, has been added. - The 
HTMLOptionElement.index()method now returns0instead of the incorrect-1when the<option>is inside a<datalist>HTML element. DOMExceptionas defined in DOM Level 4 has been implemented.- The 
FileErrorinterface has been removed in favor of theDOMErrorinterface as defined in the latest FileAPI specification. - The 
Rangeobject no longer throws aRangeException. Instead aDOMExceptionas defined in DOM 4 is used. element.getAttributeNS()now always returnsnullinstead of the empty string for non-existent attributes. Previously, there were cases in which the empty string could be returned. This is in keeping with the DOM4 specification, which now says this should return null for non-existent attributes, instead of an empty string.- The 
HTMLCanvasElementinterface now has a non-standardmozFetchAsStream()method, which provides an input stream containing the element's image data in the specified format. 
UA string
- Firefox for Android now has a Tablet or Mobile token in the UA string to indicate the form factor and no longer has the Fennec token. Also, the number after "Gecko/" is now the Gecko version number instead of a frozen date.
 - The UA string no longer exposes the Gecko patch number or release status in the version number; that is, the version number is now always of the form "X.Y", where X is the major release number and Y the minor. For example, "13.0" or "14.1". It will no longer be something like "14.0.1b1".
 
SVG
- The 
SVGStringListDOM interface is now indexable likeArray(see Firefox bug 722071). 
WebGL
- Support has been added for the 
EXT_texture_filter_anisotropicextension. Anisotropic texture filtering improves the quality of mipmapped texture access when viewing a textured primitive at an oblique angle. 
MathML
- Support for the 
widthattribute on<mtable>elements has been added (Firefox bug 722880). - MathJax fonts are now used as the default fonts for mathematical text. See Fonts for Mozilla's MathML engine for more information.
 
Network
- The SPDY protocol now enabled by default.
 
Developer tools
3D view improvements
- You can now press the "f" key to make sure the currently selected node is visible.
 
Style panel improvements
- Clicking the heading for any rule in the style panel now opens the Style Editor at the corresponding CSS.
 - Right-clicking on a rule in the style panel now offers an option to copy the rule to the clipboard.
 - Entering an unknown property name, or an illegal property value, displays a warning icon next to that property.
 
Scratchpad improvements
- The Scratchpad now has an option in the Help menu to take you to the MDN documentation about Scratchpad.
 
Changes for Mozilla and add-on developers
>Compatibility note
Starting in Firefox 13, Firefox for Windows requires at least Windows XP Service Pack 2; it will no longer run on Windows 2000 or earlier versions of Windows XP.
JavaScript code modules
source-editor.jsm
- Support for a dirty flag has been added to the Source Editor API.
 - The Source Editor no longer supports falling back to a 
<textarea>instead of using Orion. - The editor now exposes focus and blur events.
 - The 
getIndentationString()method has been added; this returns the string to use for indenting text in the editor. - The Source Editor now supports managing a list of breakpoints and displaying user interface for toggling them on and off; it does not actually implement breakpoints, however. That's up to you to write debugger code for.
 - Support has been added for highlighting the current line, using the 
highlightCurrentLineconfiguration option. 
ARIA
- The CSS properties 
margin-left,margin-right,margin-top,margin-bottomare now all reflected into ARIA object attributes with the same name. See Gecko object attributes for more information. 
Interfaces
- The 
nsIScreeninterface now supports controlling rotation through the newrotationattribute. - The 
nsIPrefBranch2interface has been merged intonsIPrefBranch(Firefox bug 718255). - The new message manager wake-up service, implemented by 
nsIMessageWakeupService, has been implemented. See Firefox bug 591052. - The aliases 
MozOpacity,MozOutline,MozOutlineStyle,MozOutlineWidth,MozOutlineOffset, andMozOutlineColor, all of which were removed in previous versions of Gecko, have been removed fromnsIDOMCSS2Properties, which should have been done with the aliases were initially removed. - The 
nsINavHistoryQueryOptionsattributeexcludeItemIfParentHasAnnotationhas been removed, along with the corresponding query operation. It existed to support livemarks, which no longer exist.