Voici donc ce que ça donne en tapant dans la ligne de commande :

# xulrunner/xulrunner mybrowser/application.ini

Réaliser ce mini navigateur est d'une simplicité enfantine. Voici le fichier xul :

<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<!DOCTYPE window SYSTEM "chrome://mybrowser/locale/mybrowser.dtd">
<window
     id     = "mybrowser"
     title  = "&mybrowser.title;"
     width  = "800"
     height = "600"
     xmlns  = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
 <script src="mybrowser.js"/>
 <hbox>
   <button id="back" label="&mybrowser.back;" oncommand="back();" disabled="true"/>
   <button id="forward" label="&mybrowser.forward;" oncommand="forward();" disabled="true"/>
   <button id="reload" label="&mybrowser.reload;" oncommand="reload();"/>
   <button id="stop" label="&mybrowser.stop;" oncommand="stop();" disabled="true"/>
   <textbox id="urlbar" value="" flex="1" onchange="go();"/>
   <button id="go" label="&mybrowser.go;" oncommand="go();"/>
 </hbox>
 <browser flex="1" id="browser" src="" type="content-primary"/>
 <statusbar>
   <statusbarpanel id="status" label="" crop="end" flex="1"/>
   <progressmeter id="progress" mode="determined" value="0%" style="display: none"/>
   <statusbarpanel id="security" label="" style="display: none"/>
 </statusbar>
</window>

Agrémenté de quelques lignes javascript pour réagir aux boutons :

function go() {
 var urlbar = document.getElementById("urlbar");
 var browser = document.getElementById("browser");

 browser.loadURI(urlbar.value, null, null);
}

function back() {
 var browser = document.getElementById("browser");
 browser.stop();
 browser.goBack();
}

function forward() {
 var browser = document.getElementById("browser");
 browser.stop();
 browser.goForward();
}

function reload() {
 var browser = document.getElementById("browser");
 browser.reload();
}

function stop() {
 var browser = document.getElementById("browser");
 browser.stop();
}
 
function onload() {
 var urlbar = document.getElementById("urlbar");
 urlbar.value = "http://www.mozilla.org/";
 go();
}

(Dans le code source original, il y a plus de Javascript que ça, mais ce que je presente ici est le minimum requis pour que tout fonctionne correctement)

Génial le xul hein ? :-)

Pour en savoir plus, n'hesitez pas à consulter la rubrique XulRunner sur xulfr.org