Nouveautes DeFirefox 1.5

Voici les nouveautés qu'il y a dans Gecko 1.8 (Firefox 1.5) pour les développeurs.

Technologies

XUL

Overlays dynamiques
il est possible de charger dynamiquement un overlay, même si le fichier XUL est déja affiché (document.loadOverlay()).
Fenêtres translucides
sur windows et linux, les fenêtres XUL avec un fond transparent peuvent s'afficher.
XUL, bindings pour les préférences
des nouvelles balises XUL (balises prefWindow, prefPane, preference, preferences, Attribut preference-editable) permettent de construire une fenêtre de choix de préférences, sans écrire une seule ligne de code javascript. Les préférences choisies sont automatiquement enregistrées. Voir httphttp://forums.mozillazine.org/viewtopic.php?t=263028.
nouvelles balises XUL
richlistbox, richlistitem, scrollcorner
attribut tabindex
il peut être utilisé sur presque tout les éléments.
attribut value sur <radiogroup>
permet de selectionner le radio bouton associé à la valeur.
attribut defaultButton sur <dialog>
on peut indiquer quel bouton est le bouton par defaut dans une boîte de dialogue.
attribut icon sur <button>
contient un nom d'icone. il permet d'indiquer à gecko qu'il faut qu'il affiche l'icone correspondante utilisée habituellement dans l'environnement utilisateur. Il peut prendre les valeurs accept, cancel, help, open, save, find, clear, yes, no, apply, close, print, add, remove, refresh, go-forward, go-back, properties, select-font, select-color, network.
<tabbrowser>
permet maintenant de réorganiser les onglets par drag and drop.

Evolutions sur la balise tree

Les colonnes n'ont plus besoin d'id. En effet, il leur est maintenant associé un objet nsITreeColumn. Dans le view d'un tree, ce n'est donc plus un ID que vous recevez mais un objet nsITreeColumn.

Vous pouvez aussi maintenant utiliser des colonnes de checkbox et la pseudo-classe CSS associée -moz-tree-checkbox.

Voir httples details sur devmo

Javascript et DOM

Gecko 1.8 embarque Javascript 1.6. Cette nouvelle version inclus E4X, l'API XML pour Ecmascript, et des httpaméliorations sur les tableaux. Voir aussi la httpdoc de reférence sur les tableaux javascripts

Gecko 1.8 prend maintenant en charge les XML Events.

Il est possible aussi d'utiliser maintenant des caractères internationnaux dans les fichiers Javascript chargés à partir de fichiers XUL. (voir la httppage sur devmo)

XPCNativeWrapper est maintenant activé par défaut.

Il y a également une API pour améliorer l'accessibilité en DHTML ( httphttp://www.mozilla.org/access/dhtml/ )

bfcache

Gecko 1.8 peut mettre en cache des arbres DOM. Cela permet par exemple à Firefox de pouvoir faire des back/forward instantannés.

CSS

  • propriété quote (open-quote, close-quote)
  • pseudo element :only-child
  • propriété pour le multi-colonnage CSS3 (-moz-column*) voir des exemples sur cette page : httppropriétés CSS counter
  • propriété CSS 3 overflow-x, overflow-y
  • nouveaux noms de curseurs pour la propriété cursor
  • propriété outline (-moz-outline est maintenant obsolete)
  • -moz-outline-radius pour faire des outline avec coins arrondis
  • compteurs CSS, qui permettent la numérotation automatique. Voir un exemple sur cette page : httpcompteurs CSS
  • nouvelle rêgle @-moz-document , que l'on peut utiliser dans les feuilles de styles utilisateurs pour indiquer des styles à utiliser pour des sites précis.
  • pseudo-classe : :valid, :invalid, :out-of-range, :in-range, :disabled, :enabled, :-moz-read-only, :-moz-read-write

Autres

Support de XTF
= eXtensible Tag Framework. Permet l'ajout de nouveaux namespace dans gecko, sans toucher au code de Gecko. On peut donc ajouter le support d'un nouveau langage XML dans Gecko, via une extension. Par exemple, l'implementation de Xforms utilise XTF. Voir les détails sur la page dédiée
Prise en charge de SVG
langage xml pour faire des dessins vectoriels. voir la page SVG.
Prise en charge de l'élément <canvas>
cet élément fournis un espace où l'on peut "dessiner" en javascript. Voir httphttp://developer.mozilla.org/en/docs/Drawing_Graphics_with_Canvas.
Prise en charge de Xforms
permet d'utiliser ce puissant système de formulaire. Voir la page XForms.

API

Accés à l'historique
on accéde plus facilement à l'historique dans le navigateur, ce qui permet à une extension d'afficher l'historique autrement, de mieux gérer les données de l'historique etc.
API pour specifier les priorités de connexions HTTP
on peut mettre une priorité sur les connexions vers un serveur spécifique.
API pour gérer l'utilisateur et les feuilles de styles utilisateurs
Les extensions peuvent maintenant déclarer des feuilles de styles additionnelles. Elles n'ont plus besoin d'éditer userContent.css pour ajouter des styles aux pages web (comme des attachements de composants XBL)
API pour configurer les proxys
Il est maintenant possible pour les extensions de modifier la configuration des proxys sans toucher aux préférences utilisateurs.
Ajout d'informations dans le user-agent
Il est maintenant possible d'ajouter des informations dans le user-agent sans écraser les infos ajoutés par d'autres extensions.
API pour la base de registre windows
une nouvelle API via l'interface nsIWindowsRegKey a fait son apparition pour acceder plus facilement à la base de registre de Windows (il s'agit de l'objet @mozilla.org/windows-registry-key;1. (nsIWindowsShellService::getRegistryEntry est donc obsolète)
API les paramètres de lignes de commandes
les extensions peuvent désormais manipuler/obtenir plus facilement les paramètres données en ligne de commande quand l'application est lancée. (cela concerne les interfaces nsICommandLine et nsICommandLineHandler, qui seront du même coup gelées). Trés utile aussi pour les applications XulRunner.

Chrome

La déclaration de fichiers dans le chrome a été grandement amélioré. Ainsi on ne doit plus mettre de fichiers content.rdf mais un simple fichier texte (non xml), chrome.manifest. Voir sur les details sur la page Enregistrement Chrome.

Il est également possible de

  • fournir dans une extension des fichiers qui vont remplacer ceux d'une autre extension, d'un autre paquet jar

*

Gestionnaire d'extension

  • Il est maintenant possible d'avoir des extensions en dehors du repertoire extension du profile et celui de l'application
  • L'installation des extensions peut être fait en mettant simplement un XPI dans le repertoire extension du profil ou de l'application.
  • Désinstaller une extension est tout aussi simple, en supprimant le repertoire correspondant dans le repertoire extensions.
  • Les extensions peuvent être installées sur Windows en mettant des valeurs dans la base de registre de windows. Voir httpcette page
  • On peut indiquer dans le fichier install.rdf de l'extension (httpbug), la plateforme cible :
 <em:targetPlatform>Linux_gcc2</em:targetPlatform>
 <em:targetPlatform>Linux_gcc3</em:targetPlatform>
 <em:targetPlatform>WINNT_msvc</em:targetPlatform>
 <em:targetPlatform>OS2</em:targetPlatform>
  • on peut fournir des plugins de recherche dans les extensions, en les mettant dans un repertoire searchplugins du xpi (httpbug)
  • on peut indiquer les composants xpcom à installer en fonction de la plateforme (httpbug)

Ressources

Les informations sont issues de httphttp://www.mozilla.org/projects/deerpark/whatsnew.html .

Voir aussi la page sur devmo httpAdapter son application XUL à Firefox 1.5

Dernière modification le novembre 30, 2005 1:16 .


Le contenu de cette page est disponible selon certaines conditions de réutilisation. Lire aussi la page des informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.