Firefox 14 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 aform
attribute. - The default modifier keys for the
accesskey
of 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.code
is now deprecated per latest DOM Level 4 specification.- The
Range.insertNode()
method now works correctly when used on collapsed ranges. - The
MozBlobBuilder
interface has been deprecated in favor of the constructor onBlob
. If you useMozBlobBuilder
you'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
HTMLImageElement
interface'sx
andy
properties were removed in Firefox 7.0 but restored in this release for compatibility reasons. - The
Document
methodsexecCommandShowHelp()
andqueryCommandText()
, which never did anything, have been removed. - The
GeoPositionAddress
interface, an obsolete part of the Geolocation API, has been removed. localStorage/sessionStorage
now correctly returnundefined
instead ofnull
for undeclared keys through property access.ff- The
ImageData
object has been implemented (Firefox bug 550309). - Attributes and methods related to child nodes on
Attr
interface were obsoleted (Firefox bug 737122).
CSS
- The
text-transform
andfont-variant
CSS properties have been fixed to correctly handle thei
→İ
andı
→I
Turkic-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 fromtransform
property, as it has been removed from the draft standard. - The syntax for
border-image
has 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
statusline
action type on<maction>
elements has been adjusted to follow the MathML specification.
HTTP
- Gecko now supports the new HTTP
308 Permanent Redirect
status code. As Gecko doesn't make a distinction between permanent and temporary redirects, it behaves like the307 Temporary Redirect
status code, as it forbids the user agent from changing the HTTP method used between the two requests (POST
will stayPOST
,GET
will 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
fullscreenbutton
attribute to the<window>
element; setting this totrue
adds a button to the window's chrome to enable full screen mode.
Interfaces
- The
nsILocalFile
interface has been merged intonsIFile
(bug 682360). - The methods in
nsIPlacesImportExportService
for importing bookmarks have all been removed in favor of theBookmarkHTMLUtils.jsm
JavaScript code module. - The
nsIDOMGeoPositionAddress
interface has been removed. - The
getItemGUID
,setItemGUID
andgetItemIdForGUID
methods 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.
See also
- 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