Il est probable qu'un jour dans vos applications xulrunner vous ayez besoin d'ouvrir un lien ou d'ouvrir la boite de rédaction d'email dans le navigateur/composer par défaut de l'utilisateur.
var ioservice = Components.classes["@mozilla.org/network/io-service;1"]
.getService(Components.interfaces.nsIIOService);
var uriToOpen = ioservice.newURI("http://www.mozilla.org", null, null);
var extps = Components.classes["@mozilla.org/uriloader/external-protocol-service;1"]
.getService(Components.interfaces.nsIExternalProtocolService);
extps.loadURI(uriToOpen, null);
Pour ouvrir la boite de rédaction d'email il suffit de mettre comme adresse: "mailto:machin@chose.truc".
On crée d'abord une variable qui appelle un objet nsIURI utilisant ioservice puis on ouvre la page.
Ce code vous demandera si vous souhaitez ou non ouvrir la page dans le navigateur mais vous proposera de ne plus vous le demander. Il est possible de désactiver cette demande en ajoutant:
pref("network.protocol-handler.warn-external.http", false);
pref("network.protocol-handler.warn-external.https", false);
pref("network.protocol-handler.warn-external.ftp", false);
dans le fichier application-prefs.js de votre application.
Vous pouvez visiter les pages suivantes pour plus d'informations:
http://developer.mozilla.org/en/docs/Opening_a_Link_in_the_Default_Browser
http://xulplanet.com/references/xpcomref/ifaces/nsIExternalProtocolService.html
http://developer.mozilla.org/en/docs/Custom_Toolbar_Button:Code_Samples
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.