firefox

XMLHttpRequest を JS XPCOM などから呼び出す

Ajaxなどのために javascript中で XMLHttpRequest を使用する際は, va req = new XMLHttpRequest(); でオブジェクトを作成できますが, JS XPCOM などから使用すると, XMLHttpRequestオブジェクト が定義されていません. JS XPCOMから利用する場合は, このオ…

RDFデータソースの使い方

RDFデータソースの使い方について簡単にまとめてみました. RDFデータソースはFirefoxでデータを扱う上で重要な要素で, ブックマークや履歴など様々な場所で利用されている. XUL の tree 要素を使用する場合にはほぼ必須です. RDFについて RDFは, subject ---…

たまに resource:// が動作しない・・・

Component.utils.import を積極的に使ってみているんですが, たまに NS_ERROR_NOT_AVAILABLE というエラーが出て, 「自作ライブラリ」の読み込みが一切できなくなりました. ※ XPCOMUtils.jsm はエラーにならず. XPの場合, 一度アドオンを削除したら直ったん…

JS XPCOMを再読み込みする

JS XPCOMを作成していたらソースを変更したのに反映されないという問題がおきました。 以下のファイルを消すと再読み込みできます。(Windows XPの場合) C:\Documents and Settings\\Application Data\Mozilla\Firefox\Profiles\ディレクトリ>\compreg.dat ※…

XPCOMUtilsを使おう

Firefox3でしか使えませんが、 Firefox拡張機能開発で、 QueryInterface NSGetModule メソッドを書くとき、やたら長いコードを毎回書かなくてはならず、めんどくさくてしょうがない方のためのモジュールです。 https://developer.mozilla.org/Ja/XPCOMUtils.…

拡張機能開発でOSネイティブソケットを使う

Firefoxで拡張機能開発の話。 既存のXPCOMオブジェクトを利用して、javascriptで通信プログラムを書くのに挫折気味です。 あまりにブルーな気分になったので、オープンソースなライブラリでも使用してやろうかと思い、まずCのsocket関係の関数って直接使える…

どこまでがスレッドセーフなのだろうか

Firefox3からThread機能が使えるようになったと、よろこんで使い倒していますが、なんか微妙な雲行き。 Threadの動作を知るために自分でビルドしたFirefox3を使ってみました。 エラーがぼりぼり出ますが、問題のあるところは逐一メッセージがでますので、あ…

nsIThreadPoolの使い方

今回も、Firefox拡張機能開発のお話。 Firefox3からThread関係のインターフェースが追加されています。 ネットワークの通信処理をかいているのですが、nsIAsyncInputStreamやnsIAsyncOPenStreamの、AsyncWait()の使い方がわからないので、ベーシックな感じで…

拡張機能開発: nsIThreadManager利用時における定義済みコアオブジェクトの挙動

Firefoxの拡張機能を相変わらず作っております。 スレッドではまったのでメモ。 時間がかかる処理を行うので、Firefox3から導入されたnsIThreadManagerを利用して、マルチスレッディングで楽しようとコーディング。 MDC: The Thread Manager https://develop…

拡張機能開発のメモ(開発を始めるまで)

拡張機能を開発することになったので最初にすべきことをメモっておきます。 開発をはじめるまでの学習手順(?)がメインです。 開発方法についてはリンク先を参照してください。 Mozilla Developer Center(MDC)の拡張機能のページに基本的な情報はそろって…