Gecko 2エンジン(Firefox 4)では、クロスプラットフォームコンポーネント(XPCOM)を登録する方法が変わります

[mozilla.org] エンジンの以前のバージョン(2010年7月まで存在していました)では、すべてのXPCOMコンポーネント (javascriptまたはコンパイルされたバイナリであるかどうか)は、最初にブラウザーによって読み込まれ、それから自分自身を登録しました。 これで、登録に必要なすべての情報の代わりに、拡張機能の作成者はテキストファイル「chrome.manifest」クロムが記述されている)にそれらを配置する必要があり、ブラウザ自体が登録に関与します。



「platform / WINNT_x86-msvc / chrome.manifest」 (これはWindowsのパスの例)という形式のパスを持つファイルは、以前は各プラットフォームの個別のchromeマニフェストを保存していましたがキャンセルされます。 代わりに、マニフェストで、マニフェストのこの行またはその行を特定のプラットフォームでのみ使用する必要があるという特別な注意を使用できます。



これらの変更の目的は、ブラウザーからの労力を必要としないコンポーネントの登録手順を簡素化することです。つまり、Firefoxの初期ダウンロードが加速します。これは、以前はブラウザー自体を更新した後、または拡張機能を再インストール(再インストール、無効化、削除)した後、非常に長いことが判明しました また、将来計画されているマルチスレッドへの移行が簡素化される可能性があります。



これらの変更の代価は、独自のXPCOMコンポーネントを含んで使用したすべての拡張機能を絶対に書き換える必要があることです(MDCにはこれを行う方法に関する指示があります)。 さらに、「xpcom-startup」および「app-startup」という名前の通知は、これらの通知に対応するイベント中にコンポーネントがまだないため、コンポーネントに入りません。



作者によって放棄された多くの拡張機能は、Firefox 4への移植のために書き直さなければなりません:単にバージョンチェックをキャンセルすることを目的とした古い半球のトリック(手動または「Nightly Tester Tools」、「MR Tech Toolkit」、 「Add-on Compatibility」記者「)、彼らは正しく稼ぐことはありません。



上記のMDCの記事で、これらのブラウザーの変更について詳しく読むことができます。 ソースコードはBugsillで入手できます。



All Articles