ユーザインターフェースのための基本的な情報が入ります. 詳細はMozilla Developer CenterのChrome Registrationを見てください. Mozilla Suite (SeaMonkey)用crhome定義とは異なることに注意してください.
Chromeの登録は,パッケージの登録とオーバーレイの登録からなります.
ちなみに,#で始まる行はコメントになります.
ウィンドウの定義をするcontentパッケージ,ローカライズ(言語)を定義するlocaleパッケージ,見た目を定義するskinパッケージの3種類があります. それぞれの定義では,指定したパッケージ名のルートとなるパスを指定します.このパスは,chrome.manifestからの相対パスになります.
content packagename path/to/files locale packagename localename path/to/files skin packagename skinname path/to/files
それぞれの定義は,必要に応じて複数書くことができます. localeはブラウザの設定に応じて,適切なものが自動的に割り当てられます.
また,基本的にjarアーカイブを利用するようですが,アーカイブにしなくても問題ありません.
content myextension jar:pack.jar!/chrome/content/
content myextension chrome/content/
先ほど登録したパスをchromeパスを利用することができます.
content myextension chrome/content/ # chrome://myextension/content/ locale myextension ja-JP chrome/locale/ja-JP/ # chrome://myextension/locale/
他のパッケージのオーバーレイをします. これにより,インターフェースを修正したりすることができます. また,オーバーレイではなく,オーバーライドすることもできますが,ここでは省きます.
overlay chrome://file-to-overlay chrome://overlay-file style chrome://file-to-style chrome://stylesheet-file
それぞれの定義は,必要に応じて複数書くことができます. というより,普通複数必要になります.
# ブラウザのcontentの表示をmyextensionのmyextension.xulでオーバーレイします
overlay chrome://browser/content/browser.xul chrome://myextension/content/myextension.xul