Add-on SDKでできない事をやってみよう -UI編-

Mozilla 勉強会@東京 7thで使用した資料です。プレゼンテーション資料とサンプル実装、発表内容のメモを公開しています。

概要

Mozilla 勉強会@東京 7thで、Add-on SDKの標準ライブラリに含まれている機能だけではできない事を実現する方法についてのチュートリアルをやろうとしました(実際の発表では時間配分のミスのため予定していた内容を消化できませんでした)。プレゼンテーション資料と発表内容のメモでは、FirefoxのGUI上で発生するイベントをSDKのAPIを介さずに直接監視する方法と、そのイベントに基づいてFirefox内部のAPIを呼び出すにあたってどのように呼び出す先を探すのかという流れを解説しています。

プレゼンテーション

以下のプレゼンテーションはFirefox 10以降のバージョンで閲覧できます(プレゼンテーションは高橋メソッド in XUL リターンズで作成しています)。

ファイルをダウンロードしてFirefoxのウィンドウにドラッグ&ドロップすると、再起動不要なアドオンとしてインストールされます。ツールバーに挿入される「Start Presentation」というボタンをクリックするとプレゼンテーションが始まります。プレゼンテーションの閲覧後は、アドオンマネージャから「Takahashi Method in XUL Returns/Restartless」をアンインストールして下さい。

サンプル実装

以下のファイルは、プレゼンテーション中で紹介しているサードパーティ製ライブラリSidebarを使用したアドオンの例と、タブバーの上でのホイールスクロールでタブのフォーカスを切り替えるアドオンの例のインストルパッケージ、および、それらのソースコードです。