Este documento descreve como empacotar temas para o Firefox e o Thunderbird.
Pré Requisitos
Fazer um tema para o Firefox ou Thunderbird requer conhecimentos em Cascading Style Sheets (CSS), provavelmente XBL, e um pouco de design gráfico e habilidade estética (...ou talvez não). Este documento descreve somente como Temas são empacotados em ordem para serem mostrados na janela de Temas do Firefox.
Disposição do Arquivo de Tema
Os temas do Firefox/Thunderbird são empacotados em um arquivo JAR com a seguinte estrutura:
theme.jar: install.rdf contents.rdf preview.png icon.png browser/files global/files mozapps/files communicator/files ...
- Você deve ter um nível máximo chrome.manifest (Firefox/Thunderbird 1.5) ou o arquivo contents.rdf que registre o chrome para o tema (como antes) e também um manifesto install.rdf que especifica metadados que são exibidos na janela de Temas.
- preview.png é uma imagem de previsão que será mostrada na área de previsão da janela de Temas. Ela pode ter qualquer tamanho.
- icon.png é um PNG 32x32 (pode conter transparência alfa) que irá aparecer na lista de Temas na janela de Temas.
install.rdf
Seu manifesto install.rdf parecerá com isto:
<?xml version="1.0"?> <RDF xmlns="https://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="https://www.mozilla.org/2004/em-rdf#"> <Description about="urn:mozilla:install-manifest"> <em:type>4</em:type>more properties </Description> </RDF>
Propriedades Requeridas de install.rdf
Seu arquivo install.rdf deve ter as seguintes propriedades. Veja a Referência install.rdf para mais informações:
- em:id
- em:version
- em:type
- em:targetApplication
- em:name
- em:internalName
Propriedades Opcionais de install.rdf
- em:description
- em:creator
- em:contributor
- em:homepageURL
- em:updateURL
Note que se o seu tema estiver disponível no website https://addons.mozilla.org, ele não deve incluir uma URL de atualização.
Arquivo de Amostra install.rdf
<?xml version="1.0"?> <RDF xmlns="https://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="https://www.mozilla.org/2004/em-rdf#"> <Description about="urn:mozilla:install-manifest"> <em:id>{18b64b56-d42f-428d-a88c-baa413bc413f}</em:id> <em:version>1.0</em:version> <em:type>4</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>0.8</em:minVersion> <em:maxVersion>0.9</em:maxVersion> </Description> </em:targetApplication> <!-- Front End MetaData --> <em:name>New Theme 1</em:name> <em:description>A test theme for Firefox</em:description> <em:creator>Ben Goodger</em:creator> <em:contributor>John Doe</em:contributor> <em:homepageURL>https://www.bengoodger.com/</em:homepageURL> <!-- Front End Integration Hooks (used by Theme Manager)--> <em:internalName>newtheme1</em:internalName> </Description> </RDF>
Os seguir estão algumas aplicações comuns de alvos GUIDs que você pode usar na sua propriedade targetApplication:
Firefox {ec8030f7-c20a-464f-9b0e-13a3a9e97384} Thunderbird {3550f703-e582-4d05-9a08-453d09bdfdc6} Sunbird {718e30fb-e89b-41dd-9da7-e25a45638b28}