Firefox 14 release notes for developers
Firefox 14 shipped on July 17, 2012. This article lists key changes that are useful for not only Web developers to know about, but also Firefox and Gecko developers as well as add-on developers.
Changes for Web developers
>HTML
- The
<progress>element is no longer incorrectly classified as a form element, and therefore no longer has aformattribute. - The default modifier keys for the
accesskeyof HTML contents on Mac are changed to Control+Option. This is the same as WebKit-based browsers on Mac.
DOM
- input events are fired also on editing host element of contenteditable editor and root element of designMode editor.
DOMException.codeis now deprecated per latest DOM Level 4 specification.- The
Range.insertNode()method now works correctly when used on collapsed ranges. - The
MozBlobBuilderinterface has been deprecated in favor of the constructor onBlob. If you useMozBlobBuilderyou'll see a warning message in the Web Console. - The
Blob()constructor is now available to workers (Firefox bug 736686). - Support for the Mutation Observers has been landed. It is designed as a replacement for the Mutation Events in DOM3, which has a number of issues regarding performance.
- The
HTMLImageElementinterface'sxandyproperties were removed in Firefox 7.0 but restored in this release for compatibility reasons. - The
DocumentmethodsexecCommandShowHelp()andqueryCommandText(), which never did anything, have been removed. - The
GeoPositionAddressinterface, an obsolete part of the Geolocation API, has been removed. localStorage/sessionStoragenow correctly returnundefinedinstead ofnullfor undeclared keys through property access.ff- The
ImageDataobject has been implemented (Firefox bug 550309). - Attributes and methods related to child nodes on
Attrinterface were obsoleted (Firefox bug 737122).
CSS
- The
text-transformandfont-variantCSS properties have been fixed to correctly handle thei→İandı→ITurkic-specific case pairs. - The Dutch IJ digraph is now correctly handled by
text-transform: capitalization. Similarly the Greek letterΣ, which has two lowercase forms,σandς, is now correctly handled bytext-transform: lowercase. - Support for the
skew()function has been removed fromtransformproperty, as it has been removed from the draft standard. - The syntax for
border-imagehas been updated to match the latest revision of the specification; it no longer accepts a trailing slash ("/").
JavaScript
No change.
MathML
- The syntax of the
statuslineaction type on<maction>elements has been adjusted to follow the MathML specification.
HTTP
- Gecko now supports the new HTTP
308 Permanent Redirectstatus code. As Gecko doesn't make a distinction between permanent and temporary redirects, it behaves like the307 Temporary Redirectstatus code, as it forbids the user agent from changing the HTTP method used between the two requests (POSTwill stayPOST,GETwill stayGET).
Changes for Mozilla and add-on developers
>JavaScript code modules
source-editor.jsm
- Added a keyboard shortcut to toggle commenting for the current selection (Ctrl-/ or Cmd-/ on Mac OS X).
- Added the Ctrl-[ and Ctrl-] keyboard shortcuts for moving the text input position to the beginning and end of the current block.
- Added the new
getLineStart()andgetLineEnd()methods.
XUL
- Added the new
fullscreenbuttonattribute to the<window>element; setting this totrueadds a button to the window's chrome to enable full screen mode.
Interfaces
- The
nsILocalFileinterface has been merged intonsIFile(bug 682360). - The methods in
nsIPlacesImportExportServicefor importing bookmarks have all been removed in favor of theBookmarkHTMLUtils.jsmJavaScript code module. - The
nsIDOMGeoPositionAddressinterface has been removed. - The
getItemGUID,setItemGUIDandgetItemIdForGUIDmethods have been removed fromnsINavBookmarksService(Firefox bug 715355).
Spellchecking
- Dictionary names are now parsed as full BCP 47 language tags (bug 730209, bug 741842). Developers are encouraged to not hard-code the name of their language in their dictionary names.