Envoyé par : syl
Date : 27/05/2006 12:12
Bonjour,
Je cherche a y voir clair dans les déclarations chrome.
D'apres le tuto Extensions/Enregistrement Chrome, On peut enregistrer "manuellement" une appli dans le chrome a l'aide du fichier installed-chrome.txt.
Je travaille avec Firefox 1.5.0.3 et impossible de trouver ce fichier. J'ai donc créer ce fichier mais rien ne se passe; je fais probablement fausse route. Il y a bien un fichier chromelist.txt mais je ne sais pas comment le completer si du moins il a un role équivalent.
Bon, mon objectif est de créeer une appli standalone donc d'utiliser Xulrunner a terme. Y-a-t-il alors un moyen de declarer une appli manuellement (sans XPI) pour développer directement dans xulrunner.
Merci par avance pour vos réponse...
Envoyé par : chBok
Date : 27/05/2006 13:09
Le tuto est fait pour créer un paquetage pour une extension. Pour développer, je te conseille de lire l'article comment configurer Mozilla pour développer.
Envoyé par : syl
Date : 27/05/2006 14:49
Bon, c'est fait pour la creation du profil, ca semble fonctionner, par contre, j'ai beau lire le tuto sur l'enregistrement chrome, je m'embrouille les pinceaux et ne sais plus comment je dois déclarer mon appli sous firefox 1.5 et pour pouvoir développer (sans extension)
J'ai mon appli (aase) qui est là : C:\syl\aase\ Avec content, locale et skin...
Ce que je ne comprend pas c'est quelles sont les opérations minimales pour arriver à mes fins.
J'ai essayer de créer un aase.manifest enregistré sous :
C:\Program Files\Mozilla Firefox\chrome
content aase C:\syl\aase\content locale aase C:\syl\aase\locale skin aase C:\syl\aase\skin overlay chrome://aase/content/aase.xul chrome://aase/content/aa_ovl_MainMenu.xul overlay chrome://aase/content/aase.xul chrome://aase/content/aa_ovl_MainToolbar.xul overlay chrome://aase/content/aase.xul chrome://aase/content/aa_ovl_MainRecherche.xul overlay chrome://aase/content/aase.xul chrome://aase/content/aa_ovl_MainStatusBar.xul overlay chrome://aase/content/aase.xul chrome://aase/content/aa_ovl_MainTable.xul
Que faut-il faire apres ? Je nage un peu et ce que j'ai essayé ne marche pas (c'est la console javascript qui me dit que mon chrome aase n'est pas déclaré)
Merci
Envoyé par : syl
Date : 28/05/2006 12:15
Ca y est !! Apres maintes consultations de pages sur l'enregistrement chrome, j'ai enfin reussi à déclarer mon appli en chrome Je suis toujours sous FF 1.5 et je ne veux pas creer d'XPI. Voici comment j'ai procéder, si ça peut servir à quelques Xulien débutant comme moi.
Mon dossier de projet est ficelé comme ça :
c:\syl\ chrome.manifest install.rdf chrome\ aase\ content\ aase.xul locale\ skin\
Mon fichier chrome.manifest est le suivant :
content aase chrome\aase\content\ locale aase chrome\aase\locale\ skin aase chrome\aase\skin\
Mon fichier install.rdf est le suivant :
<?xml version="1.0"?> <RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <Description about="urn:mozilla:install-manifest"> <em:id>id@aase.com</em:id> <em:version>1.0</em:version> <em:type>2</em:type> <!-- Target Application this extension can install into, with minimum and maximum supported versions. --> <em:targetApplication> <Description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:minVersion>1.0+</em:minVersion> <em:maxVersion>1.5.0.*</em:maxVersion> </Description> </em:targetApplication> <!-- Front End MetaData --> <em:name>Sample!</em:name> <em:description>A test extension</em:description> <em:creator>Your Name Here</em:creator> <em:homepageURL>http://www.foo.com/</em:homepageURL> </Description> </RDF>
J'ai créé un profil de développement qui se trouve dans mon répertoire de profil. Dans le répertoire extensions il y a mon fichier de redirection que j'ai appelé id@aase.com (identifiant de mon appli) et qui contient :
C:\syl\
Il me semble que ça devrait fonctionner Alors j'ouvre FF a l'aide du fichier bat ci-dessous :
cd /d "C:\Program Files\Mozilla Firefox" set MOZ_NO_REMOTE=1 start firefox.exe -P aasedev
Puis dans la barre d'adresse, je colle :
chrome://aase/content/aase.xul
Bonne journée
Envoyé par : delaballe
Date : 28/05/2006 17:53
Salut
Bon alors voilà je débute avec le developpement d'applis XUL
et là je dois dire que y a un truc que je comprend pas !!!
voilà je tente de faire une extension. En suivant les nombreuses doc sur le web (c'est le gros bordel!!! pas une doc qui marche du premier coup avec toutes ces versions différentes !! mais bon c un autre problème)
et donc voilà mon dossier :
test
chrome content test.xul
chrome.manifest install.rdf
donc je fais la procédure d'enregistrement comme expliqué (GUID)
lorsque je démare firefox mon extension est bien visible mais firefox me dit qu'elle n'est pas compatible avec la version utilisée.
Mais là mystère il suffit que je crée n'importe quel fichier dans le dossier de mon extension je redémarre firefox et la magie opère, mon extension marche !!!!!!!!.
Une idée ???
Envoyé par : gorby69
Date : 02/08/2006 16:24
Salut Syl,
Grace à toi ça marche enfin chez moi....
Un grand merci :)
Envoyé par : jreeman
Date : 16/08/2006 23:45
Je comprends rien ca marche pas du tout chez moi...
Envoyé par : jreeman
Date : 17/08/2006 01:15
Bon vraiment je pige quedalle, j'explique mon truc.
Tout d'abord, j'ai pris une ancienne arborescence qui marche quand elle est dans un XPI (voir l'arborescences en fin de message dans le PS), mon extension s'apelle pagesback, alors c'est parti, voila l'arboresence :
c:\pagesback\sources contient : - install.rdf - chrome.manifest + xul + content + pagesback <- ?? - pagesback.xul - content.rdf + skin + classic + pagesback <- ?? - content.rdf - pagesback.css + locale + en-US + pagesback<- ?? - content.rdf - pagesback.dtd
Me demandez pas pourquoi à la fin de l'arborescence, j'ai le nom de mon extention pagesback, j'ai repris une arborescence (trouvé surement ici y'a pas mal de temps) et qui fonctionne.
Tout ce que je sais c'est que lorsque je package mon xpi final en gardant cette structure et les content.rdf, ca fonctionne très bien, je tape chrome://pagesback/content/pagesback.xul et j'ai ma page, même si je trouve bizarre, comme déjà dit, d'avoir un répertoire pagesback à chaque fois en bout de content, skin et locale, ca a le mérite de fonctionner.
Bon bref, j'ai essayé de configurer mon firefox 1.5 pour le dev, j'ai créé mon profil etc etc..., j'ai mis MOZ_NO_REMOTE à 1, j'ai mis dans le répertoire extentions de mon profil le fichier pagesback@pagesback.com contenant le chemin d'accès à ma structure soit :
c:\pagesback\sources
Ok et donc ensuite dans c:/pagesback/sources, j'ai mis le fichier chrome.manifest et install.rdf contenant donc logiquement :
<?xml version="1.0"?> <RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <Description about="urn:mozilla:install-manifest"> <em:id>__pagesback@pagesback.com__</em:id> <em:version>0.1</em:version> <em:type>2</em:type> <!-- Target Application this extension can install into, with minimum and maximum supported versions. --> <em:targetApplication> <Description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:minVersion>1.0+</em:minVersion> <em:maxVersion>1.5.0.+</em:maxVersion> </Description> </em:targetApplication> <!-- Front End MetaData --> <em:name>PAGESBACK</em:name> <em:description>My extension</em:description> <em:creator>pagesback.com</em:creator> <em:homepageURL>http://www.pagesback.com</em:homepageURL> <em:updateURL></em:updateURL> </Description> </RDF>
Et surtout surtout, maintenant le plus intéressant, le chrome.manifest...
1ère tentative, j'y met :
content pagesback xul\content locale pagesback en-US xul\locale skin pagesback global xul\skin
Mais là rien du tout, je saisis dans firefox chrome://pagesback/content/pagesback.xul mais j'ai un message d'erreur de firefox me disant que la page est introuvable, j'ai mis aussi chrome://pagesback/content/pagesback/pagesback.xul mais ca ne marche pas non plus. Par contre, l'extension manager "voit" mon extension (??).
2ème tentative, je rajoute le chemin jusqu'à mes fichiers donc :
content pagesback xul\content\pagesback locale pagesback en-US xul\locale\en-US\pagesback skin pagesback global xul\skin\global\pagesback
Et là, avec chrome://pagesback/content/pagesback.xul rien du tout.
Mais avec chrome://pagesback/content/pagesback/pagesback.xul, miracle, j'ai une erreur :
Erreur d'analyse XML : entité non définie Emplacement : chrome://pagesback/content/pagesback/pagesback.xul Numéro de ligne 7, Colonne 1 :<window id="pagesback_main" centerscreen="true" title="&menu.title;" ^
Ceci juste pour dire qu'il arrive bien à trouver ma page (il trouve juste pas la dtd).
Pour information et dans un dernier élan, je viens de changer la structure en essayant de faire comme vous l'avez fait dans ce forum, à savoir dans c:/pagesback/sources/ :
+ chrome - install.rdf - chrome.manifest + pagesback + content + pagesback <- ?? - pagesback.xul - content.rdf etc...
Dans le chrome.manifest :
content pagesback chrome\pagesback\content locale pagesback en-US chrome\pagesback\locale skin pagesback global chrome\pagesback\skin
et dans pagesback@pagesback.com toujours :
c:\pagesback\sources
Mais là encore rien, ca ne marche pas...
Par rapport à ça, j'ai encore fait un test en enlevant le pagesback en fin d'arborescence (mais sans changer les content.rdf), mais choux blanc encore une fois, rien du tout ca veut pas marcher...
Donc je sais plus quoi tenter, pourriez-vous m'expliquer pourquoi ca ne marche pas, et ce que vous me conseillez de faire ?
Notamment :
Merci d'avance de vos éléments de réponses et conseils.
PS : mon xpi qui fonctionne bien à la structure suivante :
pagesback.xpi contient : - install.rdf + chrome + pagesback.jar + content + pagesback - pagesback.xul - content.rdf etc...
Et voici un exemple du content.rdf :
<?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#"> <!-- list all the packages being supplied by this jar --> <RDF:Seq about="urn:mozilla:package:root"> <RDF:li resource="urn:mozilla:package:pagesback"/> </RDF:Seq> <!-- package information --> <RDF:Description about="urn:mozilla:package:pagesback" chrome:displayName="PAGESBACK" chrome:author="pagesback.com" chrome:name="pagesback" chrome:extension="true"> </RDF:Description> <!-- overlay information --> <RDF:Seq RDF:about="urn:mozilla:overlays"> <RDF:li RDF:resource="chrome://browser/content/browser.xul"/> <RDF:li RDF:resource="chrome://navigator/content/navigator.xul"/> </RDF:Seq> <RDF:Seq RDF:about="chrome://browser/content/browser.xul"> <RDF:li>chrome://pagesback/content/pagesbackOverlay.xul</RDF:li> </RDF:Seq> <RDF:Seq about="chrome://navigator/content/navigator.xul"> <RDF:li>chrome://pagesback/content/pagesbackOverlay.xul</RDF:li> </RDF:Seq> </RDF:RDF>
Pensant que c'était les "overlay information", j'ai aussi fait un test en enleveant les lignes correspondantes.
Envoyé par : jreeman
Date : 17/08/2006 17:33
J'ai trouvé, tout cela pour un pauvre slash.
C'était qu'il faut mettre :
content pagesback chrome/content/
et non :
content pagesback chrome/content
Envoyé par : jreeman
Date : 17/08/2006 17:36
Tiens ca m'a appris un truc par contre si ca peut servir à qq'un, pour faire du développement XPCOM, il suffit de mettre un répertoire components (contenant le xpt, les dll ou les .js pour le dev XPCOM en javascript) au niveau du chrome.manifest.
Voili voilou.
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - 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.