Intégrer une extension au(x) navigateur(s)

Vous vous penchez sur le développement d'applications ou d'extensions pour Mozilla ? C'est alors vers ce forum que se dirigeront naturellement vos requêtes...
Répondre
Poulet

Intégrer une extension au(x) navigateur(s)

Message par Poulet »

Bon, j'ai beaucoup progressé grace à vos liens.

Mais je suis complètement perdu pour ce qui est d'intégrer l'extension au navigateur.

Pour le placer en SideBar ou en ToolBar, ajouter les menus correspondants, quelles différences entre Firefix et Mozilla etc. J'ai bien compris que ça a un rapport avec les overlays mais je bloque completement.

Si le tutoriel sur xulplanet en parle, j'ai l'impression qu'il n'évoque pas tous les points, et en anglais, j'ai du mal.

Est-ce que quelqu'un s'aurait m'expliquer ou m'aiguiller ?
Merci beaucoup
chBok
Iguane
Messages : 991
Inscription : 17 oct. 2003, 19:17

Message par chBok »

J'aimerai beaucoup t'aider, car je navigue en plein comme toi sur xulplanet et xulfr.org (sa traduction en cours). Je confirme que le tuto de xulplanet n'évoque pas tout, mais on peut y arriver quand même, par force de tatonnement en s'appuyant au besoin sur des petites extensions existantes.
Le plus dur est t'intégrer ton "package" à Mozilla ou FF, ensuite, c'est assez simple de faire une barre d'outils, sidebar...

Deux choix s'offrent à toi:
- installation globale (valable pour tous les profils)
- installation par profil, ma préférée pour une extension.
Dans les deux cas, avant de faire l'intégration, sauvegarde les répertoire chrome de Mozilla (ou FF) et du profil en cours. En cas de problème, tu reviens en arrière facilement et ca évite une résintallation.
Poulet

Message par Poulet »

Mais jusqu'à maintenant, j'ai un répertoire dans le dossier chrome de mozilla, et je lance la commande mozilla -chrome chrome:// ...

Si je veux intégrer cette petite application à Mozilla maintenant, je dois faire une installation ?

Et quels sont, rapidement, les fichiers à modifier pour l'intégration ?
J'ai déjà étudié plusieurs extensions qui ne m'aident pas vraiment.
chBok
Iguane
Messages : 991
Inscription : 17 oct. 2003, 19:17

Message par chBok »

Dans le fichier chrome.rdf d'un profil, il faut définir le package et pointer vers un fichier content.rdf de ton package

Code : Tout sélectionner

<RDF:Description about="urn:mozilla:package:poulet"
  c:baseURL="file:///C:/Travail/poulet/content/"
  c:locType="profile"
  c:displayName="mon Xul c'est pas du poulet"
  c:author="moi"
  c:name="poulet" />
et
  <RDF:Seq about="urn:mozilla:package:root">
    <RDF:li resource="urn:mozilla:package:poulet"/>
  </RDF:Seq>
et ton fichier content.rdf doit ressembler à ca :

Code : Tout sélectionner

<?xml version="1.0"?>
<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:chrome="http://www.mozilla.org/rdf/chrome#">
  <RDF:Seq about="urn:mozilla:package:root">
    <RDF:li resource="urn:mozilla:package:poulet"/>
  </RDF:Seq>
  <RDF:Description about="urn:mozilla:package:poulet"
        chrome:displayName="titre"
        chrome:author="moi"
        chrome:name="poulet">
  </RDF:Description>
<RDF:Seq about="urn:mozilla:overlays">
	<RDF:li resource="chrome://navigator/content/navigator.xul"/>
</RDF:Seq>
<RDF:Seq about="chrome://navigator/content/navigator.xul">
	<RDF:li>chrome://poulet/content/pouletroverlays.xul</RDF:li>
</RDF:Seq>
</RDF:RDF>
où le fichier pouletoverlays.xul doit contenir une balise <overlay> au lieu d'une balise <window>. Cet exemple m'a servi pour ajouter une barre d'outils.
Dernière modification par chBok le 19 févr. 2004, 18:34, modifié 1 fois.
Poulet

Message par Poulet »

Merci, je m'y mets ...
Poulet

Message par Poulet »

Ça ne marche pas encore ...
Mais quelque chose cloche, j'ai l'impression

resource:///chrome/monExt/content/monExt.xul dans la barre d'adresse de Mozilla ça fonctionne

en revanche, impossible d'y accéder à partir d'une adresse avec chrome.
chrome://monExt/content/monExt-overlay.xul renvoie une erreur
chrome://content/monExt-overlay.xul pas d'erreur mais aucun résultat

Quelle est l'adresse à écrire pour retrouver les mêmes fichiers ?
Merci beaucoup
chBok
Iguane
Messages : 991
Inscription : 17 oct. 2003, 19:17

Message par chBok »

A priori, tu accèdes à tes fichiers avec l'adresse chrome://monExt/content/, où content/ est un répertoire de ton package, si ton package est bien installé.
Poulet

Message par Poulet »

Donc, si le package est mal installé, ça veut dire que c'est dans le fichier chrome.rdf que qqchose ne va pas ?

Pour les tests, je n'utilise pas le chrome.rdf du profil mais celui du dossier d'installation, pour pouvoir me refaire une installation propre si necessaire.
Poulet

Message par Poulet »

PS: j'ai l'air de rien comprendre, mais au contraire, je progresse énormément... merci
chBok
Iguane
Messages : 991
Inscription : 17 oct. 2003, 19:17

Message par chBok »

Poulet a écrit :PS: j'ai l'air de rien comprendre, mais au contraire, je progresse énormément... merci
Je comprends, je suis passé par là. Tu auras ensuite le plaisir de voir ta barre d'outils apparaitre là où tu le voulais :P
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités