あなたはアドオンを作る時、他のアドオンと連携しやすいようにするということを意識しているでしょうか? 例えば、複数のタブをまとめて一気に閉じる機能を設けるために、タブの配列を受け取ってそれらをすべて閉じる closeTabs() という関数を定義するとしましょう。 function closeTabs(aTabs) { gBrowser.dispatchEvent(event); aTabs.forEach(function(aTab) { gBrowser.removeTab(aTab); }); } この機能を提供するアドオンの作者であるあなたにとっては、これ以上特に何も気にする事はありませんよね。 では、他のアドオン作者の人が、あなたのアドオンと連係して動作するアドオンを開発する場面を考えてみましょう。この関数が呼ばれたという事を他のアドオンから検知するにはどうすればよいでしょうか?
![機能が呼び出されたことを他のアドオンに通知する « Mozilla Developer Street (modest)](https://cdn-ak-scissors.b.st-hatena.com/image/square/8eebd75773eb0321573d9040b42d88f184780c77/height=288;version=1;width=512/https%3A%2F%2Fdev.mozilla.jp%2Fwp-content%2Fthemes%2Fmodest%2Fimages%2Fpage-image.png)