Mozilla Jetpackについて調べたいこと
どうもWeb経由でインストールが可能っぽく、ステータスバーを更新しているサンプルからchromeコンテンツにアクセスできるっぽい。
- スクリプトはどのコンテキストで実行されているのか
- Greasemonkeyのように個々のWebコンテンツ内か
- userChrome.jsのようにフルアクセスか
- chromeコンテキスト内だがevalInSandboxでxpconnectは禁止しているか
Components.utils.Sandboxを使って、evalInSandboxで実行しているみたい。ってことで気軽に作れる/インストールできる分制限がありますね。
また、拡張開発が簡単になると言われているが、
- 何が簡単になるのか
- また、出来ない事はないのか
- Mozilla Labs JetpackにあるAPIの使用
console.log():JavaScriptコンソールへログ出力jetpack.notifications.show():nsIAlertsServiceを使用した通知jetpack.statusBar.append:ステータスバーへアイコンなどのアイテム表示- タブ関連
jetpack.tabs.focused:現在アクティブなタブの参照(getBrowser().selectedTabjetpack.tabs.open():タブに開く(getBrowser().addTab(url)jetpack.tabs.onReady():DOMContentLoadedをトリガーとしたコード実行
などなど調べたい。
結局、ちょっと凝ったものを作ろうとする場合は、従来どおりのやり方になっちゃうんじゃないの? って疑いが晴れることを祈ります。
ごめん、嘘ついた。
xpconnect使えますね。
id:Constellationさん、id:psychedesireさん、申し訳ない。