aboutsummaryrefslogtreecommitdiff
path: root/files/fr/mozilla/firefox/releases/9/index.html
blob: ccef51ab0f668fb96d9c98dfba526255cef473f1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
---
title: Firefox 9 pour les développeurs
slug: Mozilla/Firefox/Releases/9
tags:
  - Firefox
  - Firefox 9
translation_of: Mozilla/Firefox/Releases/9
original_slug: Mozilla/Firefox/Versions/9
---
<div><section id="Quick_links">
  <ol>
    <li class="toggle">
        <details>
            <summary>Notes de versions pour développeurs</summary>
            <ol>
              <li><a href="/fr/docs/Mozilla/Firefox/Releases">Notes de versions pour développeurs</a></li>
            </ol>
        </details>
    </li>
    <li class="toggle">
        <details>
            <summary>Modules complémentaires</summary>
            <ol>
              <li><a href="/fr/Add-ons/WebExtensions">WebExtensions</a></li>
              <li><a href="/fr/Add-ons/Themes">Thèmes</a></li>
            </ol>
        </details>
    </li>
    <li class="toggle">
        <details>
            <summary>Fonctionnement interne de Firefox</summary>
            <ol>
              <li><a href="/fr/docs/Mozilla/">Le projet Mozilla</a></li>
              <li><a href="/fr/docs/Mozilla/Gecko">Gecko</a></li>
              <li><a href="/fr/docs/Mozilla/Firefox/Headless_mode">Mode « headless »</a></li>
              <li><a href="/fr/docs/Mozilla/JavaScript_code_modules">Modules de code Javascript</a></li>
              <li><a href="/fr/docs/Mozilla/js-ctypes">JS-ctypes</a></li>
              <li><a href="/fr/docs/Mozilla/MathML_Project">Le projet MathML</a></li>
              <li><a href="/fr/docs/Mozilla/MFBT">MFBT</a></li>
              <li><a href="/fr/docs/Mozilla/Projects">Les projets Mozilla</a></li>
              <li><a href="/fr/docs/Mozilla/Preferences">Le système de préférences</a></li>
              <li><a href="/fr/docs/Mozilla/WebIDL_bindings">Connexions WebIDL</a></li>
              <li><a href="/fr/docs/Mozilla/Tech/XPCOM">XPCOM</a></li>
              <li><a href="/fr/docs/Mozilla/Tech/XUL">XUL</a></li>
            </ol>
        </details>
    </li>
    <li class="toggle">
        <details>
            <summary>Développer et contribuer</summary>
            <ol>
              <li><a href="/fr/docs/Mozilla/Developer_guide/Build_Instructions">Instructions de compilation</a></li>
              <li><a href="/fr/docs/Mozilla/Developer_guide/Build_Instructions/Configuring_Build_Options">Configuration des options de compilation</a></li>
              <li><a href="/fr/docs/Mozilla/Developer_guide/Build_Instructions/How_Mozilla_s_build_system_works">Fonctionnement de la compilation</a></li>
              <li><a href="/fr/docs/Mozilla/Developer_guide/Source_Code/Mercurial">Code source de Mozilla</a></li>
              <li><a href="/fr/docs/Mozilla/Localization">Localisation</a></li>
              <li><a href="/fr/docs/Mozilla/Mercurial">Mercurial</a></li>
              <li><a href="/fr/docs/Mozilla/QA">Assurance qualité</a></li>
              <li><a href="/fr/docs/Mozilla/Using_Mozilla_code_in_other_projects">Utilisation de code Mozilla dans d'autres projets</a></li>
            </ol>
        </details>
    </li>
  </ol>
</section></div>

<p>Firefox 9, basé sur Gecko 9.0, est sorti le 20 décembre 2011 sur Windows. La version 9.0.1, qui corrige un problème de plantage découvert au dernier moment, est sortie le 21 décembre 2011, sur Mac et Linux.</p>

<h2 id="Changements_pour_les_développeurs_Web">Changements pour les développeurs Web</h2>

<h3 id="HTML">HTML</h3>

<ul>
 <li>L'attribut <code>value</code> de <a href="/fr/docs/Web/HTML/Element/li" title="L'élément HTML &lt;li> est utilisé pour représenter un élément dans une liste. Il doit être contenu dans un élément parent : une liste ordonnée (&lt;ol>), une liste non ordonnée (&lt;ul>) ou un menu (&lt;menu>). Dans les menus et les listes non ordonnées, les éléments de liste sont habituellement affichés en utilisant des puces. Dans les listes ordonnées, ils sont habituellement affichés avec compteur croissant à gauche, tel qu'un nombre ou une lettre."><code>&lt;li&gt;</code></a> peut désormais être négatif comme c'est indiqué dans HTML5. Auparavant les valeurs négatives été converties à 0.</li>
 <li>Vous pouvez désormais <a href="https://developer.mozilla.org/en-US/docs/Using_HTML5_audio_and_video#Specifying_playback_range" title="Using HTML5 audio and video#Specifying playback range">specifier le début et la fin du temps d'un média</a> dans l'URI en utilisant les éléments <a href="/fr/docs/Web/HTML/Element/audio" title="L'élément HTML &lt;audio> est utilisé afin d'intégrer un contenu sonore dans un document. Il peut contenir une ou plusieurs sources audio représentées avec l'attribut src ou l'élément &lt;source>. S'il y a plusieurs sources, l'agent utilisateur choisira celle qui convient le mieux."><code>&lt;audio&gt;</code></a> et <a href="/fr/docs/Web/HTML/Element/video" title="L'élément HTML &lt;video> intègre un contenu vidéo dans un document."><code>&lt;video&gt;</code></a>.</li>
 <li>Les éléments <a href="/fr/docs/Web/HTML/Element/input" title="L'élément HTML &lt;input> est utilisé pour créer un contrôle interactif dans un formulaire web qui permet à l'utilisateur de saisir des données. Les saisies possibles et le comportement de l'élément &lt;input> dépend fortement de la valeur indiquée dans son attribut type."><code>&lt;input&gt;</code></a> et <a href="/fr/docs/Web/HTML/Element/textarea" title="L'élément HTML &lt;textarea> représente un contrôle qui permet d'éditer du texte sur plusieurs lignes."><code>&lt;textarea&gt;</code></a> <a class="internal" href="https://developer.mozilla.org/en-US/docs/HTML/Controlling_spell_checking_in_HTML_forms#Controlling_the_spellchecker_language" title="Controlling spell checking in HTML forms#Controlling the spellchecker language">respectent désormais la valeur de l'attribut <code>lang</code></a> lors de l'appel du correcteur orthographique.</li>
 <li>Firefox sur Android permet désormais la prise de photo avec le téléphone sans devoir quitter le navigateur lorsque l'élément <a href="/fr/docs/Web/HTML/Element/input" title="L'élément HTML &lt;input> est utilisé pour créer un contrôle interactif dans un formulaire web qui permet à l'utilisateur de saisir des données. Les saisies possibles et le comportement de l'élément &lt;input> dépend fortement de la valeur indiquée dans son attribut type."><code>&lt;input&gt;</code></a> est utilisé avec <code>type="file"</code> et <code>accept="image/*"</code>.</li>
 <li>Les images ICO de style PNG de Windows Vista sont à présent supportée.</li>
 <li>Les images dessinées qui utilisent l'attribut <a class="internal" href="https://developer.mozilla.org/en/HTML/CORS_settings_attributes" title="CORS settings attributes"><code>crossorigin</code></a> pour demander l'accès à CORS <a class="internal" href="https://developer.mozilla.org/en/CORS_Enabled_Image#What_is_a_.22tainted.22_canvas.3F" title="CORS Enabled Image#What is a tainted canvas ?">n'altère plus le canvas</a> quand CORS est accordé.</li>
 <li>La valeur de l'attribut <code><a href="/fr/docs/Web/HTML/Element/td#attr-rowspan">rowspan</a></code> peut désormais aller jusqu'à 65 534, contre 8190 avant.</li>
</ul>

<h3 id="CSS">CSS</h3>

<ul>
 <li>La propriété <a href="/fr/docs/Web/CSS/font-stretch" title="La propriété font-stretch permet de choisir entre la forme normale, condensée ou étendue d'une police."><code>font-stretch</code></a> est à présent supportée.</li>
 <li>La propriété <a href="/fr/docs/Web/CSS/columns" title="La propriété columns est une propriété raccourcie permettant de définir les deux propriétés column-width (qui définit la largeur des colonnes) et column-count (qui définit le nombre de colonnes) en même temps."><code>columns</code></a> est à présent supportée, avec le préfixe <code>-moz</code>. C'est un raccourci des propriétés suivantes : <a href="/fr/docs/Web/CSS/column-width" title="La propriété column-width définit une largeur de colonne idéale lorsqu'on utilise une disposition en colonnes. Aussi, on aura le plus de colonnes possible et pour lesquelles aucune n'est moins large que column-width. La colonne réelle peut être plus petite que cette taille si son conteneur est moins large que cette valeur."><code>column-width</code></a> et <a href="/fr/docs/Web/CSS/column-count" title="La propriété column-count décrit le nombre de colonnes d'un élément lorsqu'on utilise une disposition en colonnes."><code>column-count</code></a>.</li>
 <li>Quand une feuille de style incluse à l'aide de l'élément <a href="/fr/docs/Web/HTML/Element/link" title="L'élément HTML &lt;link> définit la relation entre le document courant et une ressource externe. Cet élément peut être utilisé pour définir un lien vers une feuille de style ou un cadre de navigation (accéder à la même page dans une langue différente par exemple)."><code>&lt;link&gt;</code></a> a été entièrement chargée et analysée (mais pas encore appliquée au document), l'<a class="internal" href="https://developer.mozilla.org/en-US/docs/HTML/Element/link#Stylesheet_load_events" title="link#Stylesheet load events"><code>load</code> event</a> est désormais déclenché. En outre, si une erreur survient durant le traitement d'une feuille de style, l'événement <code>error</code> est déclenché.</li>
 <li>Vous pouvez à présent spécifier les paramètres de débordement pour les bords, à la fois à gauche et à droite, du contenu en utilisant une nouvelle syntaxe de deux valeurs pour <a href="/fr/docs/Web/CSS/text-overflow" title="La propriété text-overflow définit la façon dont le contenu textuel qui dépasse d'une boîte est signalé pour les utilisateurs. Le texte peut être rogné (clipping), afficher une ellipse ('…', U+2026 Horizontal Ellipsis) ou afficher une chaîne de caractères choisie."><code>text-overflow</code></a>.</li>
</ul>

<h3 id="DOM">DOM</h3>

<dl>
 <dt><a class="internal" href="https://developer.mozilla.org/en-US/docs/DOM/Using_full-screen_mode" title="Using full-screen mode">Utilisation du mode plein écran</a></dt>
 <dd>La nouvelle API pour le plein écran offre un moyen de présenter le contenu en utilisant la totalité de l'écran, sans l'interface du navigateur. C'est très bien pour les vidéos et les jeux. Cette API est encore expérimentale et préfixée.</dd>
</dl>

<ul>
 <li>La méthode <a href="/fr/docs/Web/API/Node/contains" title="Cette fonction vérifie si un élément est dans le corps de la page. Comme contains est inclusif, déterminer si le corps est contenu en lui-même n'est pas le but de isInPage, donc ce cas renvoie false."><code>Node.contains()</code></a> est désormais implémentée, elle vous permet de déterminer si un nœud donné est un descendant d'un autre noeud.</li>
 <li>L'attribut <a href="/fr/docs/Web/API/Node/parentElement" title="parentElement référence l'élément parent d'un nœud (node). C'est toujours un objet Element  du DOM ou null."><code>Node.parentElement</code></a> a été implémenté, cela renvoie l'<a href="/fr/docs/Web/API/Element" title="Element est la classe de base la plus générale à partir de laquelle tous les objets d'un Document héritent. Il n'a que des méthodes et des propriétés communes à tous les types d'éléments. Les classes plus spécifiques héritent d'Element. Par exemple, l'interface HTMLElement est l'interface de base pour les éléments HTML, tandis que l'interface SVGElement est la base de tous les éléments SVG. La plupart des fonctionnalités sont spécifiées plus bas dans la hiérarchie des classes."><code>Element</code></a> parent d'un noeud DOM, ou <code>null</code> si le parent n'est pas un élément.</li>
 <li><a class="internal" href="https://developer.mozilla.org/en-US/docs/DOM/CompositionEvent" title="CompositionEvent">Les évènements de composition</a> du DOM Level 3 sont à présent supportés.</li>
 <li>L'attribut <a href="/fr/docs/Web/API/Document/scripts" title="Retourne une liste des scripts (éléments &lt;script>) présents dans le document. L'objet retourné est une liste du type HTMLCollection."><code>Document.scripts</code></a> a été implémenté, il renvoie <a href="/fr/docs/Web/API/HTMLCollection" title="L'interface HTMLCollection est constituée d'une collection générique (à la manière d'un tableau similaire à arguments) d'éléments (dans l'ordre du document) et offre des méthodes et des propriétés pour sélectionner ces éléments dans la liste."><code>HTMLCollection</code></a> de tous les éléments <a href="/fr/docs/Web/HTML/Element/script" title="L'élément HTML &lt;script> est utilisé pour intégrer ou faire référence à un script exécutable. Cela fait généralement référence à du code JavaScript mais ce peut également être un autre type de script (par exemple WebGL)."><code>&lt;script&gt;</code></a> du document.</li>
 <li>la méthode <a href="/fr/docs/Web/API/Document/queryCommandSupported" title="La méthode Document.queryCommandSupported() indique si la commande d'éditeur spécifiée est prise en charge par le navigateur."><code>Document.queryCommandSupported()</code></a> a été implémentée.</li>
 <li>L'ensemble des événements qui peuvent être écoutés sur les éléments <a href="/fr/docs/Web/HTML/Element/body" title="L'élément &lt;body> représente le contenu principal du document HTML. Il ne peut y avoir qu'un élément &lt;body> par document."><code>&lt;body&gt;</code></a> a été révisé pour correspondre à la dernière version de la spécification HTML5. La liste des événements dans la <a class="internal" href="https://developer.mozilla.org/en/DOM/DOM_event_reference" title="DOM event reference">référence d'événements DOM</a> reflète ceux qui peuvent être écoutés sur les <a href="/fr/docs/Web/HTML/Element/body" title="L'élément &lt;body> représente le contenu principal du document HTML. Il ne peut y avoir qu'un élément &lt;body> par document."><code>&lt;body&gt;</code></a>.</li>
 <li>L'évènement <code>readystatechange</code> est désormais uniquement tiré sur le document, comme prévu.</li>
 <li>Les gestionnaires d'événements sont désormais implémentés comme des interfaces IDL standard. Dans la plupart des cas, cela n'affectera pas le contenu, mais <a class="internal" href="https://developer.mozilla.org/en-US/docs/DOM/DOM_event_handlers#Event_handler_changes_in_Firefox_9" title="DOM event handlers#Event handler changes in Firefox 9">il y a des exceptions</a>.</li>
 <li>Un nouveau type de réponse, "<code>moz-json</code>", a été ajouté à <code>XMLHttpRequest</code>, laissant <code>XMLHttpRequest</code> analyser automatiquement les chaînes <a class="internal" href="https://developer.mozilla.org/en-US/docs/JSON" title="JSON">JSON</a>, quand vous demandez ce type, une chaîne JSON est analysé, afin que la valeur de la propriété <code>response</code> est la résultante de l'objet JavaScript.</li>
 <li><a class="internal" href="https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest/Using_XMLHttpRequest#Monitoring_progress" title="Using XMLHttpRequest#Monitoring progress">Les évènements "progress" de <code>XMLHttpRequest</code></a> sont à présent correctement envoyé pour chaque bloc de données reçu, dans le passé il était possible pour que le dernier bloc de données reçu ne déclenche pas un évènement "progress". Maintenant, vous pouvez suivre uniquement la progression des évènements "progress", au lieu d'avoir également à surveiller les évènements "load" pour détecter la réception du dernier bloc de données.</li>
 <li>Dans le passé, l'appel de <a class="internal" href="https://developer.mozilla.org/fr/docs/DOM/element.addEventListener" title="element.addEventListener"><code>addEventListener()</code></a> avec un écouteur <code>null</code> renvoyait une exception. maintenant il ne retourne plus d'erreur et est sans effet.</li>
 <li>La nouvelle propriété <a href="/fr/docs/Web/API/Navigator/doNotTrack" title='Renvoi le paramètre utilisateur de do-not-track. Cette valeur est "1" si l´utilisateur a demandé de ne pas être suivi par les sites web, le contenu ou la publicité.'><code>navigator.doNotTrack</code></a> permet à votre contenu de déterminer facilement si l'utilisateur a activé la préférence do-no-track, si la valeur est "oui", vous ne devez pas suivre l'utilisateur.</li>
 <li>Les objets <a href="/fr/docs/Web/API/Range" title="L'objet Range (littéralement : &quot;étendue&quot; ou &quot;portée&quot;, ici : &quot;segment&quot;) représente un fragment de document qui peut contenir des nœuds et des parties de nœuds texte dans un document donné."><code>Range</code></a> et <a href="/fr/docs/Web/API/Selection" title="La classe de l'objet retourné par  window.getSelection(), document.getSelection() et d'autres méthodes."><code>Selection</code></a> se comportent désormais selon leurs spécifications lorsque <a href="/fr/docs/Web/API/Text/splitText" title="La méthode Text.splitText() sépare le nœud Text en deux nœuds au niveau de l’indice spécifié, et conserve les deux nœuds dans l’arbre en tant que voisins."><code>splitText()</code></a> et <a href="/fr/docs/Web/API/Node/normalize" title="Cette documentation n'a pas encore été rédigée, vous pouvez aider en contribuant !"><code>normalize()</code></a> sont appelés.</li>
 <li>La valeur de <a href="/fr/docs/Web/API/Node/ownerDocument" title="La propriété en lecture seule Node.ownerDocument renvoie l'objet document de niveau supérieur pour ce nœud."><code>Node.ownerDocument</code></a> pour les noeuds de doctype est désormais le document sur lequel <a class="internal" href="https://developer.mozilla.org/en-US/docs/DOM/DOMImplementation.createDocumentType" title="DOMImplementation.createDocumentType"><code>createDocumentType()</code></a> a été appelé pour créer le noeud, au lieu de <code>null</code>.</li>
 <li><code>window.navigator.taintEnabled</code> a été retiré, il n'est plus supporté depuis plusieurs années.</li>
</ul>

<h3 id="Workers">Workers</h3>

<ul>
 <li>Les workers implémentés dans les URLs blob étaient cassés sous Firefox 8, et sont de nouveaux disponibles à partir de Firefox 9.</li>
</ul>

<h3 id="WebGL">WebGL</h3>

<ul>
 <li>Dans le cadre de <a class="internal" href="https://developer.mozilla.org/en-US/docs/WebGL" title="WebGL">WebGL</a> les attributs <code>drawingBufferWidth</code> et <code>drawingBufferHeight</code> sont à présent supportés.</li>
</ul>

<h3 id="MathML">MathML</h3>

<ul>
 <li>La valeur non-standard <code>restyle</code> pour les attributs <code>actiontype</code> des éléments <code><a href="/fr/docs/Web/MathML/Element/maction" title="&lt;maction>">&lt;maction&gt;</a></code> a été retirée.</li>
 <li>Alors qu'il n'était pas encore supporté, l'utilisation de l'élément <code><a href="/fr/docs/Web/MathML/Element/mlabeledtr" title="&lt;mlabeledtr>">&lt;mlabeledtr&gt;</a></code> ne casse plus complètement le rendu. Voir le <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=689641" title="Add support for mlabeledtr">bug 689641</a> pour l'avancement du support de cet élément.</li>
</ul>

<h3 id="Réseau">Réseau</h3>

<ul>
 <li>Vous pouvez désormais envoyer le contenu de <a class="internal" href="https://developer.mozilla.org/en-US/docs/JavaScript_typed_arrays" title="JavaScript typed arrays">tableaux JavaScript typés</a> (c'est, le contenu d'un objet <a class="internal" href="https://developer.mozilla.org/en-US/docs/JavaScript_typed_arrays/ArrayBuffer" title="ArrayBuffer"><code>ArrayBuffer</code></a>) <a class="internal" href="https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest/Using_XMLHttpRequest#Sending_typed_arrays_as_binary_data" title="Using XMLHttpRequest#Sending typed arrays as binary data">en utilisant XMLHttpRequest</a>.</li>
 <li>Les connexions WebSocket permettent désormais des non-caractères autres que UTF-8 des trames de données devant être reçues, au lieu d'échouer.</li>
 <li>L'en-tête HTTP <code>Accept</code> pour les réquêtes XSLT a été changée pour "*/*" pour simplifier. Puisque l'extraction d'XSLT est toujours retombée à "* / *", il était logique de faire la simplification.</li>
 <li>Les tentatives faites par un serveur pour utiliser les codes de réponses <code>301 Moved Permanently</code> ou <code>307 Temporary Redirect</code> pour rediriger l'utilisateur vers une URI <code>javascript:</code> donne désormais <a class="internal" href="https://developer.mozilla.org/en-US/docs/HTTP#More_on_redirection_responses" title="HTTP#More on redirection responses">lieu à l'erreur "connexion incorrecte"</a> au lieu de vraiment rediriger. Cela évite certaines attaques de type cross-site scripting.</li>
 <li>Le contenu servi par <a href="/fr/docs/Web/HTTP/Headers/Content-Disposition" title="Dans une réponse HTTP régulière, l'en-tête de réponse Content-Disposition est un en-tête indiquant si le contenu devrait être affiché en ligne dans le navigateur, c'est-à-dire en tant que page Web ou dans une page Web, ou en pièce jointe est téléchargé et enregistré localement."><code>Content-Disposition</code></a> vide avait déjà été traité comme si <a href="/fr/docs/Web/HTTP/Headers/Content-Disposition" title="Dans une réponse HTTP régulière, l'en-tête de réponse Content-Disposition est un en-tête indiquant si le contenu devrait être affiché en ligne dans le navigateur, c'est-à-dire en tant que page Web ou dans une page Web, ou en pièce jointe est téléchargé et enregistré localement."><code>Content-Disposition</code></a> était attachment", ce qui ne fonctionnait pas toujours comme prévu. C'est désormais traité comme si <a href="/fr/docs/Web/HTTP/Headers/Content-Disposition" title="Dans une réponse HTTP régulière, l'en-tête de réponse Content-Disposition est un en-tête indiquant si le contenu devrait être affiché en ligne dans le navigateur, c'est-à-dire en tant que page Web ou dans une page Web, ou en pièce jointe est téléchargé et enregistré localement."><code>Content-Disposition</code></a> était "inline".</li>
 <li>La taille maximale par défaut d'un élément dans le cache disque a été augmentée à 50 Mo, auparavant, seuls les éléments jusqu'à 5 Mo étaient mis en cache.</li>
</ul>

<h3 id="Outils_de_développement">Outils de développement</h3>

<ul>
 <li>La console Web supporte désormais <a class="internal" href="https://developer.mozilla.org/en-US/docs/Tools/Web_Console#String_substitutions" title="Using the Web Console#String substitutions">les chaînes de substitutions</a> basiques dans ses méthodes d'exploitation.</li>
 <li>Vous pouvez désormais <a class="internal" href="https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Using_groups_in_the_console" title="Using the Web Console#Using groups in the console">créer des blocs imbriqués pour la sortie</a> dans la console web, pour faciliter la lecture.</li>
</ul>

<h2 id="Changements_pour_les_développeurs_de_Mozilla_et_de_modules_complémentaires">Changements pour les développeurs de Mozilla et de modules complémentaires</h2>

<p>Voir <a class="internal" href="https://developer.mozilla.org/en-US/docs/Firefox/Updating_add-ons_for_Firefox_9" title="Updating add-ons for Firefox 9">Updating add-ons for Firefox 9</a> pour un aperçu des modifications que vous devriez apporter pour rendre vos extensions compatibles avec Firefox 9.</p>

<h3 id="XUL">XUL</h3>

<ul>
 <li>L'élément <code><a href="/fr/docs/Mozilla/Tech/XUL/tab" title="tab">tab</a></code> dispose à présent d'un attribut <code id="a-pending"><a href="https://developer.mozilla.org/fr/docs/Mozilla/Tech/XUL/Attributs/pending">pending</a></code>, dont la valeur est <code>true</code>, lorsque l'onglet est en train d'être rétabli par le service de sauvegarde de session. Il peut être utilisé pour le style de l'onglet dans les thèmes. L'attribut n'est pas présent sur les onglets qui ne sont pas en attente.</li>
 <li>L'élément <code><a href="/fr/docs/Mozilla/Tech/XUL/tab" title="tab">tab</a></code> dispose à présent d'un attribut <code id="a-unread"><a href="https://developer.mozilla.org/fr/docs/Mozilla/Tech/XUL/Attributs/unread">unread</a></code>, dont la valeur est <code>true</code>, lorsque l'onglet a changé depuis la dernière fois qu'il était actif ou si il n'a pas été sélectionné depuis que la session en cours a commencé. L'attribut n'est pas présent sur les onglets qui ne sont pas lus.</li>
 <li>Vous pouvez désormais utiliser <code><a href="/fr/docs/Mozilla/Tech/XUL/panel" title="panel">panel</a></code> comme une image glissée pour les opérations DOM de glisser-déposer. Cela vous permet d'utiliser l'API standard drag &amp; drop pour <a class="internal" href="https://developer.mozilla.org/en-US/docs/DragDrop/Drag_Operations#Using_XUL_panels_as_drag_images" title="Drag Operations#Using XUL panels as drag images">glisser et déposer du contenu XUL</a>.</li>
 <li>La méthode <span id="m-appendNotification"><code><a href="https://developer.mozilla.org/fr/docs/Mozilla/Tech/XUL/Méthodes/appendNotification">appendNotification</a></code></span> de l'élément <code><a href="/fr/docs/Mozilla/Tech/XUL/notificationbox" title="notificationbox">notificationbox</a></code> vous permet désormais de spécifier un rappel qui est appelé pour des événements intéressants liés à la zone de notification. Actuellement, le seul événement est "removed", qui vous indique la zone qui a été retirée de sa fenêtre.</li>
</ul>

<h3 id="Changements_dans_le_module_de_code_JavaScript">Changements dans le module de code JavaScript</h3>

<ul>
 <li><a class="internal" href="https://developer.mozilla.org/en-US/docs/JavaScript_code_modules/FileUtils.jsm" title="FileUtils.jsm"><code>FileUtils.jsm</code></a> dispose désormais du constructeur <code>File</code> qui renvoie l'objet <code><a href="/fr/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIFile" title="">nsIFile</a></code> représentant un fichier spécifié par son chemin d'accès.</li>
</ul>

<h3 id="Changement_dans_le_service">Changement dans le service</h3>

<ul>
 <li>Le service de préférence du contenu gère désormais <a class="internal" href="https://developer.mozilla.org/en-US/docs/Using_content_preferences#private-browsing" title="Using content preferences#private-browsing">le mode de navigation privée</a> (voir <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=679784" title="FIXED: nsIContentPrefService should handle private browsing mode">bug 679784</a>).</li>
</ul>

<h3 id="NSPR">NSPR</h3>

<ul>
 <li>NSPR dispose désormais d'un module "append", qui vous permet d'ajouter de nouvelles données à la fin d'un journal existant.</li>
</ul>

<h3 id="Changements_dans_les_interfaces">Changements dans les interfaces</h3>

<h4 id="Interface_supprimée">Interface supprimée</h4>

<ul>
 <li><code><a href="/fr/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIGlobalHistory3" title="">nsIGlobalHistory3</a></code> a été enlevée lors de la réduction de Places et du code DocShell.</li>
</ul>

<h4 id="Divers_changements_dans_les_interfaces">Divers changements dans les interfaces</h4>

<ul>
 <li>L'interface <code><a href="/fr/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsISound" title="">nsISound</a></code> a une nouvelle constante <code>EVENT_EDITOR_MAX_LEN</code>. Elle permet de lire le son du système quand plus de caractères que le maximum autorisé sont entrés dans un champ de texte. Actuellement, ce n'est utilisé que sous Windows.</li>
 <li>L'interface <code><a href="/fr/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIScriptError2" title="">nsIScriptError2</a></code> a de nouvelles propriétés, <code>timeStamp</code> et <code>innerWindowID</code> ; en plus, la méthode <code>initWithWindowID()</code> prend désormais un ID de fenêtre intérieure au lieu d'un ID de fenêtre extérieure.</li>
 <li>L'attribut <code><a href="https://developer.mozilla.org/fr/docs/XPCOM_Interface_Reference/nsIBidiKeyboard#haveBidiKeyboards">nsIBidiKeyboard.haveBidiKeyboards</a></code> a été ajouté, il vous permet de vérifier que le système a au moins un clavier installé dans chaque sens : de gauche à droite ou de droite à gauche.</li>
 <li>Le nouvel attribut <code><a href="https://developer.mozilla.org/fr/docs/XPCOM_Interface_Reference/nsIEditor#isSelectionEditable">nsIEditor.isSelectionEditable</a></code> vous permet de déterminer si l'ancre de sélection en cours est modifiable. Cela permet de supporter les cas où seules certaines parties du document sont modifiables, en vous permettant de voir si la sélection actuelle est dans une partie modifiable.</li>
 <li>Les méthodes <code><a href="https://developer.mozilla.org/fr/docs/XPCOM_Interface_Reference/nsIBrowserHistory#registerOpenPage()">nsIBrowserHistory.registerOpenPage()</a></code> et <code><a href="https://developer.mozilla.org/fr/docs/XPCOM_Interface_Reference/nsIBrowserHistory#unregisterOpenPage()">nsIBrowserHistory.unregisterOpenPage()</a></code> ont été supprimées dans le cadre d'une refonte des performances dans le système Places. A la place, vous pouvez utiliser les méthodes correspondantes de <code><a href="/fr/docs/Mozilla/Tech/XPCOM/Reference/Interface/mozIPlacesAutoComplete" title="">mozIPlacesAutoComplete</a></code>.</li>
 <li>La méthode <code><a href="https://developer.mozilla.org/fr/docs/XPCOM_Interface_Reference/nsIDOMWindowUtils#wrapDOMFile()">nsIDOMWindowUtils.wrapDOMFile()</a></code> a été ajoutée, elle retourne un objet DOM <a href="/fr/docs/Web/API/File" title="L'objet File fournit un tableau contenant des informations sur l'accès au contenu du ou des fichiers selectionnés, des informations sur le type mime, la taille, le nom des fichiers ainsi que le nombre de fichiers selectionnés. Ils sont généralement extraits d'un objet FileList retourné comme résultat lors de la sélection des fichiers en utilisant un input de type file, ou à partir d'un objet DataTransfer lors d'un glisser-déposer."><code>File</code></a> pour un <code><a href="/fr/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIFile" title="">nsIFile</a></code> donné.</li>
 <li>La méthode <code><a href="https://developer.mozilla.org/fr/docs/XPCOM_Interface_Reference/nsIChromeFrameMessageManager#removeDelayedFrameScript()">nsIChromeFrameMessageManager.removeDelayedFrameScript()</a></code> a été ajouté pour supporter la suppression des scripts de chargement différé. Les extensions amorcées doivent l'utilisée, lors de l'arrêt, pour éliminer tous les scripts chargés à l'aide de <code><a href="https://developer.mozilla.org/fr/docs/XPCOM_Interface_Reference/nsIChromeFrameMessageManager#loadFrameScript()">nsIChromeFrameMessageManager.loadFrameScript()</a></code> avec l'indicateur de charge différé. Cela expose des extensions comme <code>browser.messageManager.removeDelayedFrameScript()</code>.</li>
 <li>L'interface <code><a href="/fr/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIAppStartup" title="">nsIAppStartup</a></code> a un nouvel attribut <code>interrupted</code>, qui vous permet de savoir si la procédure de démarrage a été interrompue à tout moment par une commande interactive invitée. Cela peut être utile, par exemple, lors de la synchronisation du démarrage pendant l'évaluation des performances, pour être en mesure de déposer le nombre de sessions qui ont été interrompues.</li>
 <li>L'interface <code><a href="/fr/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIEditorSpellCheck" title="">nsIEditorSpellCheck</a></code> a été revue pour supporter le choix des sites de dictionnaires pour la vérification orthographique.</li>
</ul>

<h3 id="Parseur_IDL">Parseur IDL</h3>

<p>Le parseur IDL ne supporte plus la notion de pointeurs unique qui n'a jamais été entièrement implémentée.</p>

<h3 id="Changements_dans_le_système_de_compilation">Changements dans le système de compilation</h3>

<ul>
 <li>L'option <code>--enable-application=standalone</code> pour la compilation autonome d'XPConnect a été retirée, elle n'a pas été utilisée depuis 2007.</li>
 <li>Le support de la compilation autonome de Necko et Transformiix XSLT a été retiré, vous ne pouvez plus utilisez <code>--enable-application=network</code> ou <code>--enable-application=content/xslt</code>.</li>
 <li>Le système de compilation cherche désormais <code>.mozconfig</code> à <code>$topsrcdir/.mozconfig</code> ou <code>$topsrcdir/mozconfig</code>, et pas ailleurs, sauf si vous remplacez le chemin <code>.mozconfig</code> en utilisant la variable d'environnement <code>MOZCONFIG</code>.</li>
 <li>L'utilitaire <code>xpidl</code> a été remplacé dans le SDK avec <a class="internal" href="https://developer.mozilla.org/en-US/docs/XPIDL/pyxpidl" title="pyxpidl">pyxpidl</a>.</li>
</ul>

<h3 id="Autres_changements">Autres changements</h3>

<ul>
 <li>Le correcteur orthographique n'a plus la limite de 130 caractères sur la longueur des mots à vérifier. Cette limite était précédemment en place pour éviter les plantages qui sont survenus dans le correcteur orthographique, mais les bogues sous-jacents ont depuis été corrigés.</li>
 <li>Vous pouvez désormais enregistrer des composants pour ajouter des fonctionnalités à l'objet <a href="/fr/docs/Web/API/Window/navigator" title="Renvoie une référence à l'objet

  navigator
 , qui peut être interrogé pour obtenir des informations concernant l'application exécutant le script."><code>window.navigator</code></a> à l'aide de la catégorie "JavaScript-navigator-property". Voir <a class="internal" href="https://developer.mozilla.org/En/Developer_Guide/Adding_APIs_to_the_navigator_object" title="en/Developer_Guide/Adding APIs to the navigator object">Ajout des APIs de l'objet navigator</a> pour plus de détails et des exemples.</li>
</ul>

<h2 id="Voir_également">Voir également</h2>

<div class="multiColumnList">
<ul>
<li><a href="/fr/docs/Mozilla/Firefox/Versions/8">Firefox 8 pour les développeurs</a></li><li><a href="/fr/docs/Mozilla/Firefox/Versions/7">Firefox 7 pour les développeurs</a></li><li><a href="/fr/docs/Mozilla/Firefox/Versions/6">Firefox 6 pour les développeurs</a></li><li><a href="/fr/docs/Mozilla/Firefox/Versions/5">Firefox 5 pour les développeurs</a></li><li><a href="/fr/docs/Mozilla/Firefox/Versions/4">Firefox 4 pour les développeurs</a></li><li><a href="/fr/docs/Mozilla/Firefox/Versions/3.6">Firefox 3.6 pour les développeurs</a></li><li><a href="/fr/docs/Mozilla/Firefox/Versions/3.5">Firefox 3.5 pour les développeurs</a></li><li><a href="/fr/docs/Mozilla/Firefox/Versions/3">Firefox 3 pour les développeurs</a></li><li><a href="/fr/docs/Mozilla/Firefox/Versions/2">Firefox 2 pour les développeurs</a></li><li><a href="/fr/docs/Mozilla/Firefox/Versions/1.5">Firefox 1.5 pour les développeurs</a></li></ul>
</div>