下記のFirefoxアドオンのコンテストに出すために、既存のアドオンを再起動不要な形に変更しました。
再起動不要とするには、Add-on SDK を使うか、bootstrap.jsを使ったものにするかのいづれかとなりますが、Add-on SDKの方だと、Chrome URLを登録できない(すなわち自分で作成したXULをウインドウとして利用できない)ので、今回はbootstrap.jsを使った形式にするようにしました。
ちなみに、Add-on SDKでも、Firefox23では、Chrome URLが登録できるようになるようです。
bootstrap,jsを使った形にすると、自分でイベントやUIに追加したものを管理しなければなりません(アドオンが無効になった際に削除するなど)
面倒(抜けがありそうで怖い)なので、なるべくAdd-on SDKを使った方が良いかと思います。
Add-on SDKだと、Add-on SDKで提供されているライブラリを使うことにより、自分で管理する手間がなくなります。もうすぐChrome URLも使えるようになるので、Add-on SDKじゃだめなところはあまりなくなるのではと思います。(Firefox23がもう少し早くリリースされてくれれば、Add-on SDK使ったのに…)
Add-on SDKやbootstrap.jsを使った実装方法については、まとまった情報がWEB上であまり見つからなかった(特にbootstrap.jsの方)ので、下記の本を購入しました。
Firefox Hacks Rebooted ―Mozillaテクノロジ徹底活用テクニック
posted with amazlet at 13.07.20