のソースコードを読んでみたけれど、全然歯が立ちませんでした。ステップガイドを見ながら実験的に拡張機能を作ることはできたのだけれど、そこから先に進めません…
仮想デスクトップを使っていて、Firefox のウィンドゥが仮想デスクトップ間を跳び越してくる問題をなんとかしたいのですよ。機能としては、現在のデスクトップ上にある Firefox ウィンドウの表示状態を見て、URL を新規ウィンドゥで開くか、既存ウィンドゥのタブで開くかを判断するだけだから、そんなに難しいこともないとは思うのですがね。
暫く調べてみた範囲では、about:config
で設定される browser.link.open_external
の値を使って JavaScript でゴニョゴニョしている部分があるので、そこの処理を拡張で上書きしてしまえばいいのかなぁ、というところまで。Firefox ではダイアログ関係は XUL で、ほとんどの処理は内部的に JavaScript で制御されています。ソースコードを見ると、なかなか面白い発見もあったりします。例えばこれ↓とか(Firefox 限定)。
chrome://browser/content/credits.xhtml
あのスタッフロールって XHTML と JavaScript で実現されていたんですね。