Firefox 19 pour les développeurs

  • Raccourci de la révision : Firefox_19_pour_les_developpeurs
  • Titre de la révision : Firefox 19 pour les développeurs
  • ID de la révision : 371279
  • Créé :
  • Créateur : the prisoner
  • Version actuelle ? Non
  • Commentaire

Contenu de la révision

{{ draft() }}

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 et Set devient la propriété size ({{bug("807001")}})
  • Les objets Map et Set ont maintenant une méthode clear(). ({{bug("805003")}})

CSS

  • Support des unités relatives au viewport {{xref_csslength()}}, vh, vw, vmin, et vmax. ({{bug("503720")}})
  • CSS Flexbox est maintenant non-préfixé, mais reste désactivé par défaut ({{bug("801098")}}).
  • La valeur -moz-initial n'est plus préfixée ({{bug("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 {{cssxref("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("774560")}}).
  • La propriété CSS {{cssxref("page-break-inside")}} a été implémentée ({{bug("685012")}}).
  • La fonction CSS {{cssxref("calc", "calc()")}} peut maintenant être utilisée avec <color-stop> (sur {{xref_cssgradient()}}).
  • La règle CSS {{ cssxref("@page") }} est maintenant supportée ({{bug("115199")}}). Notez que les pseudo-classes {{cssxref(":first")}}, {{cssxref(":right")}}, et {{cssxref(":left")}} ne le sont pas encore.
  • La pseudo-classe {{cssxref(":-moz-placeholder")}} est remplacée par le pseudo-élément {{cssxref("::-moz-placeholder")}} ({{bug("737786")}}).

DOM

  • La méthode {{domxref("element.getElementsByTagName")}} retourne maintenant un HTMLCollection ({{bug("799464")}}).
  • La propriété mozLastModifiedDate de {{domxref("File")}} a été implémentée. ({{bug("793955")}})
  • La méthode isPointInStroke de {{domxref("CanvasRenderingContext2D")}} a été implémentée ({{bug("803124")}}).
  • La méthode toBlob de {{domxref("HTMLCanvasElement")}} a été implémentée ({{bug("648610")}}).

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("565717")}})
  • Dict.jsm: Dict() accepte maintenant les String JSON. Dict.toJSON() a été ajouté et retourne un String JSON. ({{bug("727967")}})

Changements dans les intefaces

{{interface("nsIImgLoadingContent")}}
Le paramètre (aObserver) de la méthode addObserver() change de {{interface("imgIDecoderObserver")}} pour {{interface("imgINotificationObserver")}}. La méthode notify() de {{interface("imgINotificationObserver")}} n'est pas scriptable, vous devez donc utiliser createScriptedObserver() à partir de {{interface("imgITools")}}.
{{interface("nsIChannel")}}
La propriété contentLength a changée de long à int64_t

A voir également

Anciennes versions

{{Firefox_for_developers('18')}}

Source de la révision

<p>{{ draft() }}</p>
<p>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.</p>
<p>Vous voulez aider à documenter Firefox 19 ? Regardez la <a class="external" href="http://beta.elchi3.de/doctracker/#list=fx&amp;version=19.0">liste des bugs qui ont besoin de rédaction</a> et lancez-vous !</p>
<h2 id="Changements_pour_les_d.C3.A9veloppeurs_web">Changements pour les développeurs web</h2>
<h3 id="JavaScript">JavaScript</h3>
<ul>
  <li>La méthode <code>size()</code>des objets <code><a href="/en-US/docs/JavaScript/Reference/Global_Objects/Map" title="/en-US/docs/JavaScript/Reference/Global_Objects/Map">Map</a></code> et <code><a href="/en-US/docs/JavaScript/Reference/Global_Objects/Set" title="/en-US/docs/JavaScript/Reference/Global_Objects/Set">Set</a></code> devient la propriété <code>size</code> ({{bug("807001")}})</li>
  <li>Les objets <code><a href="/en-US/docs/JavaScript/Reference/Global_Objects/Map" title="/en-US/docs/JavaScript/Reference/Global_Objects/Map">Map</a></code> et <code><a href="/en-US/docs/JavaScript/Reference/Global_Objects/Set" title="/en-US/docs/JavaScript/Reference/Global_Objects/Set">Set</a></code> ont maintenant une méthode <code>clear()</code>. ({{bug("805003")}})</li>
</ul>
<h3 id="CSS">CSS</h3>
<ul>
  <li>Support des unités relatives au viewport {{xref_csslength()}}, <code>vh</code>, <code>vw</code>, <code>vmin</code>, et <code>vmax</code>. ({{bug("503720")}})</li>
  <li>CSS Flexbox est maintenant non-préfixé, mais reste désactivé par défaut ({{bug("801098")}}).</li>
  <li>La valeur <code>-moz-initial</code> n'est plus préfixée ({{bug("806068")}}). <code>-moz-initial</code> sera conservée pendant quelques temps en tant qu'alias, cependant les auteurs sont fortement encouragés à utiliser <code>initial</code>.</li>
  <li>La propriété CSS {{cssxref("text-transform")}} supporte dorénavant le mot-clé <code>full-width</code> 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("774560")}}).</li>
  <li>La propriété CSS {{cssxref("page-break-inside")}} a été implémentée ({{bug("685012")}}).</li>
  <li>La fonction CSS {{cssxref("calc", "calc()")}} peut maintenant être utilisée avec <code>&lt;color-stop&gt;</code> (sur {{xref_cssgradient()}}).</li>
  <li>La règle CSS {{ cssxref("@page") }} est maintenant supportée ({{bug("115199")}}). Notez que les pseudo-classes {{cssxref(":first")}}, {{cssxref(":right")}}, et {{cssxref(":left")}} ne le sont pas encore.</li>
  <li>La pseudo-classe {{cssxref(":-moz-placeholder")}} est remplacée par le pseudo-élément {{cssxref("::-moz-placeholder")}} ({{bug("737786")}}).</li>
</ul>
<h3 id="DOM">DOM</h3>
<ul>
  <li>La méthode {{domxref("element.getElementsByTagName")}} retourne maintenant un <code>HTMLCollection</code> ({{bug("799464")}}).</li>
  <li>La propriété <code>mozLastModifiedDate</code> de {{domxref("File")}} a été implémentée. ({{bug("793955")}})</li>
  <li>La méthode <code>isPointInStroke</code> de {{domxref("CanvasRenderingContext2D")}} a été implémentée ({{bug("803124")}}).</li>
  <li>La méthode <code>toBlob</code> de {{domxref("HTMLCanvasElement")}} a été implémentée ({{bug("648610")}}).</li>
</ul>
<h3 id="XForms">XForms</h3>
<p>Le support des <a href="/en-US/docs/XForms" title="/en-US/docs/XForms">XForms</a> a été <a href="http://www.philipp-wagner.com/blog/2011/07/the-future-of-mozilla-xforms/" title="http://www.philipp-wagner.com/blog/2011/07/the-future-of-mozilla-xforms/"><strong>retiré</strong></a> dans Firefox 19.</p>
<h2 id="Changements_pour_les_d.C3.A9veloppeurs_d'add-ons_et_les_d.C3.A9veloppeurs_Mozilla">Changements pour les développeurs d'add-ons et les développeurs Mozilla</h2>
<div class="note">
  <p><strong>Note:</strong>&nbsp; <a href="/en-US/docs/XPCOM_API_Reference/nsresult" title="/en-US/docs/XPCOM_API_Reference/nsresult"><code>nsresult</code></a> 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 <a href="/en-US/docs/XPCOM_API_Reference/nsresult" title="/en-US/docs/XPCOM_API_Reference/nsresult"><code>nsresult</code></a> fait de mauvaises suppositions concernant ces valeurs.</p>
</div>
<ul>
  <li><code>getBrowserSelection()</code> retourne dorénavant le texte sélectionné dans un input de type <code>text</code>. Ainsi, <code>gContextMenu.isTextSelected</code> vaudra <code>true</code> quand l'utilisateur sélectionne du texte depuis un champ texte qui n'est pas de type <code>password</code>. ({{bug("565717")}})</li>
  <li><a href="/en/Mozilla/JavaScript_code_modules/Dict.jsm" title="en/Mozilla/JavaScript_code_modules/Dict.jsm">Dict.jsm</a>: <a href="/en/Mozilla/JavaScript_code_modules/Dict.jsm#Creating_a_dictionary" title="en/Mozilla/JavaScript_code_modules/Dict.jsm#Creating_a_dictionary"><code>Dict()</code></a> accepte maintenant les String JSON. <a href="/en/Mozilla/JavaScript_code_modules/Dict.jsm#toJSON()" title="en/Mozilla/JavaScript_code_modules/Dict.jsm#toJSON()"><code>Dict.toJSON()</code></a> a été ajouté et retourne un String JSON. ({{bug("727967")}})</li>
</ul>
<h3 id="Changements_dans_les_intefaces">Changements dans les intefaces</h3>
<dl>
  <dt>
    {{interface("nsIImgLoadingContent")}}</dt>
  <dd>
    Le paramètre (aObserver) de la méthode <code>addObserver()</code> change de {{interface("imgIDecoderObserver")}} pour {{interface("imgINotificationObserver")}}. La méthode <code>notify()</code> de {{interface("imgINotificationObserver")}} n'est pas scriptable, vous devez donc utiliser <code>createScriptedObserver()</code> à partir de {{interface("imgITools")}}.</dd>
  <dt>{{interface("nsIChannel")}}</dt>
  <dd>La propriété <code>contentLength</code> a changée de <code>long</code> à <code>int64_t</code></dd>
</dl>
<h2 id="A_voir_.C3.A9galement">A voir également</h2>
<ul>
  <li><a href="http://www.mozilla.org/en-US/firefox/19.0beta/releasenotes/">Notes de versions de Firefox&nbsp;19</a></li>
  <li><a href="/en-US/docs/Site_Compatibility_for_Firefox_19">Compatibilité des sites avec Firefox 19</a></li>
</ul>
<h3 id="Anciennes_versions">Anciennes versions</h3>
<p>{{Firefox_for_developers('18')}}</p>
Revenir à cette révision