Firefox 19 pour les développeurs
================================

Firefox 19, basé sur Gecko 19.0, est sorti le 19 février 2013. Cette page résume les principaux changements dans Firefox 19 qui sont utiles aux développeurs.

Vous voulez aider à documenter Firefox 19 ? Regardez la liste des bugs qui ont besoin de rédaction et lancez-vous !

Changements pour les développeurs web
-------------------------------------

### JavaScript

* La méthode `size()` des objets `Map` (en-US) et `Set` (en-US) devient la propriété `size` (bug Firefox 807001)
* Les objets `Map` (en-US) et `Set` (en-US) ont maintenant une méthode `clear()`. (bug Firefox 805003)
### CSS

* Support des unités relatives au viewport `<length>`, `vh`, `vw`, `vmin`, et `vmax`. (bug Firefox 503720)
* CSS Flexbox est maintenant non-préfixé, mais reste désactivé par défaut (bug Firefox 801098).
* La valeur `-moz-initial` n'est plus préfixée (bug Firefox 806068). `-moz-initial` sera conservée pendant quelques temps en tant qu'alias, cependant les auteurs sont fortement encouragés à utiliser `initial`.
* La propriété CSS `text-transform` supporte dorénavant le mot-clé `full-width` qui permet une intégration plus discrète des caractères latins dans les textes utilisant des caractères idéographiques à largeur fixe tel que le chinois ou le japonais (bug Firefox 774560).
* La propriété CSS `page-break-inside` a été implémentée (bug Firefox 685012).
* La fonction CSS `calc()` peut maintenant être utilisée avec `<color-stop>` (sur `<gradient>`).
* La règle CSS `@page` est maintenant supportée (bug Firefox 115199). Notez que les pseudo-classes `:first`, `:right`, et `:left` ne le sont pas encore.
* La pseudo-classe `:-moz-placeholder` est remplacée par le pseudo-élément `::-moz-placeholder` (bug Firefox 737786).
### DOM

* La méthode `element.getElementsByTagName` retourne maintenant un `HTMLCollection` (bug Firefox 799464).
* La propriété `mozLastModifiedDate` de `File` a été implémentée. (bug Firefox 793955)
* La propriété `lastModifiedDate` de `File` renvoie la date actuelle, si la date de la dernière modification est inconnue (bug Firefox 793459).
* La méthode `isPointInStroke` de `CanvasRenderingContext2D` a été implémentée (bug Firefox 803124).
* La méthode `toBlob` de `HTMLCanvasElement` a été implémentée (bug Firefox 648610).
* Les méthodes `Node.isSupported` et `document.implementation.hasFeature()` ont été modifiées pour qu'elles renvoient toujours `true` (bug Firefox 801425).
* Lors de l'appel de `document.createElement(null)`, `null` sera désormais "stringified" et fonctionne comme `document.createElement("null")`.
### XForms

Le support des XForms a été **retiré** dans Firefox 19.

Changements pour les développeurs d'add-ons et les développeurs Mozilla
-----------------------------------------------------------------------

**Note :** `nsresult` est maintenant fortement typé, c'est un changement majeur dans Firefox 19. Cela permet de détecter plus facilement les bugs causés par la mauvaise gestion des valeurs retournées mais peut empêcher des codes actuels de fonctionner si `nsresult` fait de mauvaises suppositions concernant ces valeurs.

* `getBrowserSelection()` retourne dorénavant le texte sélectionné dans un input de type `text`. Ainsi, `gContextMenu.isTextSelected` vaudra `true` quand l'utilisateur sélectionne du texte depuis un champ texte qui n'est pas de type `password`. (bug Firefox 565717)
* Dict.jsm: `Dict()` accepte maintenant les String JSON. `Dict.toJSON()` a été ajouté et retourne un String JSON. (bug Firefox 727967)
### Changements dans les intefaces

`nsIImgLoadingContent`

Le paramètre (aObserver) de la méthode `addObserver()` change de `imgIDecoderObserver` pour `imgINotificationObserver`. La méthode `notify()` de `imgINotificationObserver` n'est pas scriptable, vous devez donc utiliser `createScriptedObserver()` à partir de `imgITools`.

`nsIChannel`

La propriété `contentLength` a changée de `long` à `int64_t`

Voir aussi
----------

* Notes de versions de Firefox 19
* Compatibilité des sites avec Firefox 19
### Anciennes versions

* Firefox 18 pour les développeurs
* Firefox 17 pour les développeurs
* Firefox 16 pour les développeurs
* Firefox 15 pour les développeurs
* Firefox 14 pour les développeurs
* Firefox 13 pour les développeurs
* Firefox 12 pour les développeurs
* Firefox 11 pour les développeurs
* Firefox 10 pour les développeurs
* Firefox 9 pour les développeurs
* Firefox 8 pour les développeurs
* Firefox 7 pour les développeurs
* Firefox 6 pour les développeurs
* Firefox 5 pour les développeurs
* Firefox 4 pour les développeurs
* Firefox 3.6 pour les développeurs
* Firefox 3.5 pour les développeurs
* Firefox 3 pour les développeurs
* Firefox 2 pour les développeurs
* Firefox 1.5 pour les développeurs