― MozillaZine.jp フォーラムは Mozilla 製品に関する情報交換の場です ―



All times are UTC + 9 hours

返信する
ユーザー名:
件名:
オプション:
BBCode: ON
[img]: ON
[flash]: OFF
[url]: ON
スマイリー: ON
BBCode を無効にする
フォントサイズ:
フォントカラー
スマイリーを無効にする
URL を自動的にパースしない
ユーザエージェントを表示する
認証コード
KCaptcha by Nikita_Sp
   

トピックのレビュー - 拡張インストール後の再起動時に拡張の初期化を行いたい
作成者 メッセージ
  記事の件名:  Re: 拡張インストール後の再起動時に拡張の初期化を行いたい  引用付きで返信する
あ さん さんが書きました:
XUL/Migemo を見てみましたが、components/Startup.js で上記のことをやってますね。

 ご教示ありがとうございます。さっそく XUL/Migemo の Startup.js を覗いてみようと思います。
投稿記事 Posted: 2008年8月04日(月) 13:48
  記事の件名:  Re: 拡張インストール後の再起動時に拡張の初期化を行いたい  引用付きで返信する
mitsugu さんが書きました:
 piro さんの XUL/Migemo が、再起動時に辞書ファイルの設定を行うのを知っていたので、XUL/Migemo を解凍して調べてみたが、どのタイミングでイベントをハンドリングしているのか読み取ることができなかった。

XUL/Migemo を見てみましたが、components/Startup.js で上記のことをやってますね。
投稿記事 Posted: 2008年8月03日(日) 23:40
  記事の件名:  Re: 拡張インストール後の再起動時に拡張の初期化を行いたい  引用付きで返信する
mitsugu さんが書きました:
 手順として xpi ファイルを拡張と同様に D&D でインストールし、再起動をさせたときに、SQLite のデータベース作成、テーブル、インデックスの作成、その他初期化処理を行いたい。

起動時に毎回、初期化が済んでいるのかどうかをチェックして、済んでいなければ初期化を行うのが良いでしょう。

起動時に毎回その処理をするためには、XPCOM コンポーネントを作成して、そこで nsIObserverService を実装し、起動時に発生する topic の通知を受ければ良いです。
具体的にどんな topic があるのかは Observer Notifications にありますが、単に起動時ということであれば app-startup、プロファイルの情報を使う必要があるなら profile-after-change、ブラウザが立ち上がる直前ならば final-ui-startup が良いと思います。
投稿記事 Posted: 2008年8月03日(日) 23:23
  記事の件名:  拡張インストール後の再起動時に拡張の初期化を行いたい  引用付きで返信する
【概要】
 拡張インストール後の再起動時に拡張の初期化を走らせたい。そのためのイベントのハンドリングの方法を知りたい。

【目的】
 Firefox をプラットフォームとし、SQLite を利用した、スタンドアロンのアプリケーションを作成する。

【詳細】
 Firefox に xpi 形式でインストールするが、起動は "firefox -chrome chrome://アプリケーション名/content/アプリケーション名.xul" で行いたい。
 手順として xpi ファイルを拡張と同様に D&D でインストールし、再起動をさせたときに、SQLite のデータベース作成、テーブル、インデックスの作成、その他初期化処理を行いたい。

 piro さんの XUL/Migemo が、再起動時に辞書ファイルの設定を行うのを知っていたので、XUL/Migemo を解凍して調べてみたが、どのタイミングでイベントをハンドリングしているのか読み取ることができなかった。

# どなたか再起動時のイベントハンドリングの方法をご存知でしたら、ご教示願えないでしょうか?
# MDC のここに書いてるよ、というのでもかまいません。
投稿記事 Posted: 2008年8月01日(金) 14:31

All times are UTC + 9 hours


ページ移動:  
cron
Powered by MozillaZine.jp® Forum Software © phpBB Group , Almsamim WYSIWYG
Japanese translation principally by ocean