Firefox 21 note de version pour les développeurs
Firefox 21 est sorti le 14 mai 2013. Cet article répertorie les principaux changements utiles non seulement aux développeur·euse·s Web, mais aussi aux développeur·euse·s Firefox et Gecko ainsi qu'aux développeur·euse·s d'extensions.
Changement pour les développeur·euse·s Web
>HTML
- L'attribut
scopeda été ajouté à l'élément<style>. Il permet d'inclure des styles qui sont isolés du reste du document. Ces styles peuvent être sélectionnés par le pseudo élément CSS:scopeajouté dans Firefox 20. (bogue Firefox 508725 (angl.)). - Le nouvel élément HTML
<main>a été implémenté (bogue Firefox 820508 (angl.)).
JavaScript
- ECMAScript pour XML (E4X), une ancienne extension JavaScript, a été retirée. Implémentée seulement par Gecko, elle n'a jamais reçu suffisamment de soutien (bogue Firefox 788293 (angl.)).
parseInt()ne traite plus les chaînes de caractères commençant par"0"comme un octal (bogue Firefox 786135 (angl.)).
CSS
- La valeur
nonepour-moz-user-selecta maintenant le même comportement que la valeur-moz-none, alignant Gecko sur WebKit (Chrome, Safari), Presto (Opera) et Trident (Internet Explorer) (bogue Firefox 816298 (angl.)). - Dans des contenus XHTML, la valeur
autode-moz-hyphensappliquait incorrectement des règles de césure quand le langage n'était pas explicitement défini. Cela a été corrigé par (bogue Firefox 702121 (angl.)). - Une valeur
autoa été ajoutée pour la propriété CSS-moz-orient. La valeurautoest équivalente àhorizontalquand appliquée à<meter>et<progress>(bogue Firefox 835883 (angl.)). - La requêtes média
-moz-windows-glassa été ajouté sous Windows 7 et les versions antérieures de Windows (bogue Firefox 816803 (angl.)).
DOM
- Prise en charge de
RTCPeerConnection(en tant queMozRTCPeerConnection) est maintenant activée par défaut (bogue Firefox 796463 (angl.)). Elle peut être désactivée si nécessaire en définissantmedia.peerconnection.enabledsur false. - La propriété
origina été ajoutée àWindow.location(bogue Firefox 828261 (angl.)). - Les méthodes
valueAsDateetvalueAsNumberont été ajoutées à<input type="time">(bogue Firefox 781570 (angl.)). - Les attributs
minetmaxsont maintenant aussi appliquées à<input type="time">(bogue Firefox 781572 (angl.)). - De nouveaux keyCodes pour contrôler le volume sont supportées (bogue Firefox 674739 (angl.)).
- De nouveaux keyCodes pour des anciennes disposition de touches de claviers tels que AS/400 sont maintenant supportées sur Windows et Linux (bogue Firefox 833719 (angl.)).
- Différentes valeurs keyCode pour des touches OEM spécifiques sur Windows sont maintenant supportées (bogue Firefox 833719 (angl.)).
- La fonction
window.crypto.getRandomValuesest maintenant implémentée (bogue Firefox 440046 (angl.)). - Les méthodes non standard
NodeIterator.expandEntityReferences()etTreeWalker.expandEntityReferences()ont été supprimées (bogue Firefox 672190 (angl.)). - CSSOM : la méthode
CSSKeyframesRule.insertRule()a été supprimée au profit deCSSKeyframesRule.appendRule()pour correspondre à un changement de spécification (bogue Firefox 841896 (angl.)). - CSSOM : si le paramètre donné à
CSSStyleSheet.insertRulecontient plus d'une règle, unDOMExceptionavec unSYNTAX_ERRest maintenant levé (bogue Firefox 765599 (angl.)). - Jusqu'à présent, lorsque les mêmes en-têtes étaient définis à plusieurs reprises avec
XMLHttpRequest.setRequestHeader, la dernière valeur définie était utilisée. Ce comportement a été modifié pour se conformer à la spécification, de sorte que ces valeurs sont correctement combinées (bogue Firefox 819051 (angl.)).
SVG
- La propriété
paint-ordera été implémentée (bogue Firefox 828805 (angl.)). - La préférence
svg.smil.enableda été supprimée. SMIL est toujours activé. (bogue Firefox 835030 (angl.))
Réseau
- Nous continuons à faire évoluer notre implémentation de CSP pour qu'elle corresponde à la spécification CSP 1.0, qui vient d'atteindre la statut de Candidate Recommendation :
- Le support de l'entête HTTP
Content-Security-Policyconformément à la spécification (en plus de l'entête expérimentalX-Content-Security-Policy) a été ajouté (bogue Firefox 783049 (angl.)).Note : Le patch pour ce nouvel en-tête est arrivé dans Firefox 21, mais il a été désactivé dans les compilations (bogue Firefox 842657 (angl.)).
- Le support de l'entête HTTP
Worker
- Les fonctions
URL.createObjectURL()etURL.revokeObjectURL()font maintenant partie des fonctions disponibles dans les workers.
Changement pour les add-ons et les développeurs Mozilla
-
Les applications FUEL ne peuvent plus utiliser le service Livemarks (bogue Firefox 834492 (angl.)). Le service Livemarks est déprécié et mis en retrait en faveur de l'interface async.
-
resource:///modules/etresource://gre/modules/ne sont plus identiques (bogue Firefox 755724 (angl.)). Ce changement a eu lieu à cause du travail pour la version métro de Firefox. Si vous chargez des modules en utilisantresource:///modules/, vous devez vérifier si vous ne préférez pas utiliserresource://gre/modules/à la place. Notez que certains modules ont migrés de Firefox à Toolkit (bogue Firefox 840287 (angl.) et bogue Firefox 811548 (angl.) ont déplacé respectivementNewTabUtils.jsmet les modules thumbnail). -
Le SDK Add-on est maintenant inclus dans Firefox (bogue Firefox 731779 (angl.))
-
L'API History a vu plusieurs API obsolètes, retirées :
-
Remplacées par
mozIAsyncFavicons:nsIFaviconService::setFaviconUrlForPagensIFaviconService::setFaviconDatansIFaviconService::getFaviconDatansIFaviconService::getFaviconForPagensIFaviconService::setAndLoadFaviconForPagensIFaviconService::getFaviconImageForPagensIFaviconService::getFaviconDataAsDataURL
-
Remplacées par
mozIAsyncLivemarks:nsILivemarkService::*PlacesUtils.itemIsLivemarkPlacesUtils.nodeIsLivemarkContainerPlacesUtils.nodeIsLivemarkItem
-
Retiré seulement le 3e argument :
PlacesUIUtils.showBookmarkDialog
-
N'est plus implémenté par Places, utilisez
mozIAsyncHistoryà la place :nsIGlobalHistory2::addURInsIGlobalHistory2::isVisitednsIGlobalHistory2::setPageTitle
-
N'est plus nécessaire, utilisez
onDeleteURIouonItemRemoved:nsINavHistoryObserver::OnBeforeDeleteURInsINavBookmarkObserver::OnBeforeItemRemoved
-
Jamais implémenté correctement :
nsINavHistoryFullVisitResultNode
-
Obsolète, utilisez
mozIAsyncHistory::updatePlacesà la place :nsINavHistoryService::AddVisit
-
-
nsIHttpChannel.redirectToa été ajouté pour permettre de rediriger les canaux HTTP sans faire des bidouilles fragiles.