Firefox 23 for developers
=========================

Changes for Web developers
--------------------------

### Security

* Mixed content blocking. Firefox will no longer load non-secure (http) resources on secure (https) pages (Firefox bug 834836).
* The standard syntax of CSP 1.0 policies are now implemented and enforced by default.
### Developer Tools

* A Network Panel has been added to the developer tools. This is more detailed view than the "Net" view option in the Web Console.
* Web Console has been renamed "Console", and includes the option to filter security errors/warnings.
* The new Toolbox Options lets you disable features, change light/dark theme, or enable Chrome/Remote debugging.
### HTML

* The `<blink>` element support is now completely dropped. The `<blink>` tag now implements the `HTMLUnknownElement` interface (Firefox bug 857820).
* The `range` type of the `<input>` element (`<input type="range">`) has been switched on by default (Firefox bug 841950).
### JavaScript

* The `Object.defineProperty` method can now be used to redefine the `length` property of an `Array` object.
* The option to disable JavaScript, including the options to allow moving windows/replace context menu, have been removed. You may still disable JavaScript by double clicking the "javascript.enabled" option in about:config.
### DOM

* D3E `KeyboardEvent.key` is now supported, but only for non-printable keys (Firefox bug 842927).
* The `title` attribute of `DOMImplementation.createHTMLDocument` is now optional as per updated DOM specification.
* The ability to add a sidebar panel (`window.sidebar.addPanel`) has been dropped (Firefox bug 691647).
* The unprefixed `Window.requestAnimationFrame` and `Window.cancelAnimationFrame` methods has been added (Firefox bug 704063). The unprefixed `Window.requestAnimationFrame` receives a `DOMHighResTimeStamp` as argument; the prefixed version receives a timestamp in milliseconds (Firefox bug 753453).
* The text argument for `window.alert` and `window.confirm` is now optional (Firefox bug 861605).
* The `HTMLMediaElement.initialTime` property, removed from the spec, is no longer supported (Firefox bug 742537).
* The `AnimationEvent()` constructor has been added (Firefox bug 848293).
* The `AnimationEvent.pseudoElement` property has been implemented (Firefox bug 848293).
* The `TransitionEvent()` constructor has been added (Firefox bug 848291).
* The `TransitionEvent.pseudoElement` property has been implemented (Firefox bug 848291).
* The non-standard `TransitionEvent.initTransitionEvent()` and `AnimationEvent.initAnimationEvent()` have been removed (Firefox bug 868751).
### WebRTC

* Instead of including usernames in the `RTCIceServer.url` property (such as stun:username@stunserver.example.com), you now need to use the new `RTCIceServer.username` property.
### CSS

* The blink effect for `text-decoration: blink;` has no more effect, but is still a valid value (Firefox bug 857820).
* In-flow `::after` and `::before` pseudo-elements are now flex items (Firefox bug 867454).
* The way to compute viewport units has been changed. In conjunction with `overflow:auto`, space taken by eventual scrollbars is not subtracted from the viewport, whereas in the case of `overflow:scroll`, it is. (Firefox bug 811403)
### MathML

* Negative widths for the `<mspace>` element has been implemented (Firefox bug 717546).
* The `<semantics>` element now determines the visible child as described in the MathML3 specification.
Changes for addon and Mozilla developers
----------------------------------------

### Firefox developer tools

Addons that overlay chrome://browser/content/debugger.xul must now overlay chrome://browser/content/devtools/debugger.xul. You may add references to both these files in chrome.manifest for compatibility.

See also
--------

* Firefox 23 Aurora Notes
### Older versions

* 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