1 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 20:00:38 ] オラ拡張作る。 XULはXMLベースのUI記述言語です。 Mozilla、Firefox、Thunderbird、Netscape等の Gecko系のソフトウェアために開発されました。 このスレはXUL、JavaScriptで利用できるXPCOM、 拡張の作り方などを主に話しあうスレです。 前スレ Mozillaでプログラミング(XUL) その2 pc8.2ch.net/test/read.cgi/tech/1102172958/ 姉妹スレ Geckoベースのブラウザを作ろう pc5.2ch.net/test/read.cgi/tech/1023546699/l50 参考サイト Mozilla Developer Center developer.mozilla.org/ XULPlanet www.xulplanet.com/ 過去スレ Mozillaでプログラミング(XUL) pc5.2ch.net/test/read.cgi/tech/1019704370/ >>2-50 あたりに関連リンク、近況などがあるかも。
186 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 20:57:34 ] 大した事じゃないのですが、ちょっとお聞きしますね。 XPCOMを作っていて名前をどう付けるのが良いのか迷っています。 具体的にはContractIDとインターフェイス等の名前のプレフィックスについてで、 ContractIDは、いくつかの拡張を見たところ全部@mozilla.org/some-component;1となっていました。 プレフィックスは、Mozillaのソースではnsで始まるのが慣習のようでした。 Mozillaプロジェクトと直接関係がない拡張なのに、何故この様(mozilla.orgとかnsとか)に なっているのか分かりません。 皆さんならどうされますか/してらっしゃいますか?
187 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 22:05:37 ] 関係ないのにns〜とか@mozilla.orgとか書くのは厳密には詐称だよね Mozilla内の物でもインターフェース名がmozI〜という物はいくつかあるし 適当に付けたらいいんじゃないの?
188 名前:デフォルトの名無しさん mailto:sage [2007/11/13(火) 00:14:36 ] >>186 XPCOMだけにxpcIxxx〜とかcpIxxx〜とかどうよ?ださいけどな。
189 名前:デフォルトの名無しさん mailto:sage [2007/11/13(火) 00:24:00 ] >>186 MDCのサンプルでは、 nsIHelloWorld @dietrich.ganx4.com/helloworld developer.mozilla.org/en/docs/How_to_Build_an_XPCOM_Component_in_Javascript でも個人的にはnsを付けるのはやめた方がいいと思う。 nsはNetScapeの略だとこのスレで以前に教わった。
190 名前:デフォルトの名無しさん mailto:sage [2007/11/13(火) 05:51:48 ] (*゚ω゚)ノ∩へぇへぇ
191 名前:デフォルトの名無しさん mailto:sage [2007/11/13(火) 10:14:10 ] 接頭辞xpcはXPConnect関係で使われてるからよくないな。 作者名または拡張名から取るのがいいだろう。 例えばXUL/Migemoの場合、接頭辞はp(作者名Piroから?)、 コントラクトIDは@piro.sakura.ne.jp/xmigemo/から始まっている。 ttp://www.cozmixng.org/repos/piro/xulmigemo/trunk/components/
192 名前:デフォルトの名無しさん mailto:sage [2007/11/14(水) 00:31:47 ] 自サイトではなくAMOでしか公開していない場合のコントラクトIDは?
193 名前:デフォルトの名無しさん mailto:sage [2007/11/14(水) 01:40:49 ] 同じ。AMO かどうかと、contruct ID は関係ない。
194 名前:186 mailto:sage [2007/11/14(水) 18:01:51 ] やはり、独自のprefix/ContractIDを付けた方が良さそうですね。 皆さん、助言ありがとうございます。
195 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 14:29:55 ] ここが適切かわかりませんが質問です。 IEで動作するActiveXのプラグインがあるのですが、これをFirefoxへ簡単に移植する方法はないでしょうか? Windows以外のOSへの移植は考えていないので、ラッパーのDLLか拡張を作るという手でも構いません。
196 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 21:52:17 ] >>195 Firefox 1.5までなら、プラグインがありますよ Mozilla ActiveX Project ttp://www.iol.ie/~locka/mozilla/mozilla.htm ソースコード lxr.mozilla.org/seamonkey/source/embedding/browser/activex/src/plugin
197 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 15:16:24 ] 今、外部テキストファイルの読み書きをしているんですが、 全角文字を書き出しor読み込みすると文字化けしてしてしまいます。 文字コードの変換なども試したのですが上手くいきませんでした。 何か解決方法はないでしょうか?
198 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 15:33:00 ] どうやってどううまくいかなかったのかを書かないと エスパーにしか解決方法はわからないと思われ
199 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 16:43:05 ] piro.sakura.ne.jp/xul/tips/x0021.html ここを参考にやらしていただきましたが、ファイルの書き出しなどを行った際、 日本語ではなく文字コードとして出力されてしまいます。
200 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 10:07:00 ] Fxのエクステンションを作ろうと思ってFxまとめWikiのチュートリアルを見ながら作業してたんですが、 contents.rdfってのは何のためにあるんですか?解説がなく、MDC見てもよく分からなかったんですが。
201 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 10:13:23 ] まとめにも書いてあるじゃないか
202 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 17:19:07 ] >>200 古い contents.rdf 形式のマニフェスト ttp://developer.mozilla.org/ja/docs/Chrome_Registration#.E5.8F.A4.E3.81.84_contents.rdf_.E5.BD.A2.E5.BC.8F.E3.81.AE.E3.83.9E.E3.83.8B.E3.83.95.E3.82.A7.E3.82.B9.E3.83.88
203 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 18:31:49 ] >>202 ありがとうございます。最新のFxをターゲットにする場合は不要なんですね。
204 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 17:47:01 ] ちょこちょこと拡張をいじったりしてみてます。 Firefox2.0.0.11なんですが、タブを右クリックした場合の コンテキストメニューを拡張するにはどうしたらいいのでしょう・・・
205 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 18:08:04 ] で、あなたはまずご自分で何を調べられて何を試されたのですか?
206 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 19:42:16 ] >>205 CopyUrlPlusとTabMixPlus、ContextMenu拡張のアーカイブを展開して 内部を調べてみました。 しかしCopyUrlPlusではタブを右クリックしたメニューの拡張を行って無く、 TabMixPlusとContextMenu拡張は読み切れませんでした。OTZ MDCのコードサンプル、DOMインターフェースリファレンスも調べましたが、 該当のものを見つけられませんでした。
207 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 23:38:49 ] >>206 userChrome.js のスクリプトあされば出てくるが…まぁ大ヒント。 document.getAnonymousElementByAttribute(gBrowser, 'anonid', 'tabContextMenu');
208 名前:デフォルトの名無しさん [2008/01/10(木) 00:42:41 ] 久しぶりにXUL弄ろうとおもって遊んでいたんですが いつの間にかmakeURI関数って使えなくなっていませんか? Mozilla開発コミュニティは相変わらずのクオリティだなと思った。嫌いじゃないけど
209 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 11:55:04 ] プラットフォーム書いてくれ。 firefox なら 2 でも trunk でも使えるはずだけど<makeURI mxr.mozilla.org/seamonkey/source/toolkit/content/contentAreaUtils.js#683 seamonkey だと前は2引数だったが trunk とかだと3引数なのを注意。 mxr.mozilla.org/seamonkey/source/xpfe/communicator/resources/content/contentAreaUtils.js#764 Prism, XULRunner なら contentAreaUtils.js 入れないとどーもならん、 つか実質3行なので自分で書け。
210 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 17:31:12 ] サイドバーを使うFirefox拡張の作り方がさっぱり分かりません。 どこかにサンプルとかありませんか?
211 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 18:09:07 ] sageとか
212 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 18:37:14 ] developer.mozilla.org/en/docs/Creating_a_Firefox_sidebar
213 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 20:37:30 ] >>212 おお、ありがとうございます! すっかり見落としてました
214 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 17:22:29 ] var listbox = document.getElementById('searchResultList'); for(var i = 0; i < 10; i++) { var listitem = document.createElement('listitem'); listitem.label = "foo"; listbox.appendChild(listitem); } このようなコードを実行すると、listboxにアイテムは追加されるんですが、真っ白でlabelの内容が表示されません。 DOM Inspectorで見ればちゃんとlabelにfooが入ってるんですが… どこに問題があるんでしょうか。
215 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 17:33:10 ] appendChild(...)でなくappendItem(...)としてみる
216 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 17:41:19 ] >>215 ありがとうございます。appendItem()でできました。 richlistboxだとappendChild()でできたのでついlistboxでもできるのかと思ってました。
217 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 17:12:44 ] groupbox - button - button - button みたいな感じに、ある要素の子要素が複数あるときに、これ全部を一気に取り除く方法ってありますか? やっぱりひとつずつ消してかなきゃダメ?
218 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 21:44:41 ] DOM2 Rangeつかうといいかも
219 名前:デフォルトの名無しさん mailto:sage [2008/01/23(水) 11:51:44 ] >>218 ありがとうございます。 var range = document.createRange(); range.selectNodeContents(element); range.deleteContents(); でできました。
220 名前:デフォルトの名無しさん [2008/01/31(木) 11:46:40 ] Javascriptでaddonを書いています。 このaddon内部から、起動プロファイル名を取得することは可能でしょうか? (firefox -P fuga の fugaを取得) モノはFirefox 2.xです。
221 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 12:27:10 ] nsIToolkitProfileServiceを使えば可能。 toolkitのprofileSelection.jsが良い例題になる。
222 名前:220 [2008/01/31(木) 13:30:22 ] おおおズバリ。 名回答TNX.
223 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 23:24:20 ] firefoxの拡張作成に挑戦しようと思い、 ttp://piro.sakura.ne.jp/xul/doc/20070726keio/XUL.zip の通りに自分で作成したものはツールのところにHello,Worldが表示されません。 アドオンの一覧には表示されています。 このサンプルコードであるttp://piro.sakura.ne.jp/xul/doc/20070726keio/XUL3-1.zip はちゃんとツールのページの情報の下に表示されます。 両方のコードを見比べても自分でみた限り違いはありませんでした。 変更した部分は<em:maxVersion>2.0.0.*</em:maxVersion>だけです。 firefoxのバージョンは2.0.0.11です。 どこが問題か教えていただけますでしょうか?
224 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 15:16:30 ] お前が見た限りの情報で分かるエスパーはいねーよ馬鹿 教えて欲しいならコード載せろ
225 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 16:12:17 ] >>224 おっしゃるとおりです。すいませんでした。 コードはここにうpしました。 www.uploda.net/cgi/uploader4/index.php?file_id=0000026347.zip どうかよろしくおねがいします。
226 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 16:50:26 ] >>225 すべての構成ファイルの文字コードUTF-8のBOMなしかどうか確認
227 名前:220 [2008/02/01(金) 18:09:46 ] profileSelection.jsは起動時にでてくるプロファイル選択画面みたいだ。 const C = Components.classes; const I = Components.interfaces; var p = C["@mozilla.org/toolkit/profile-service;1"]; alert(p); ここでいきなりundefinedなのだが。 なんででしょう? いや、classes配列にないのはわかるが、他のサービス(directory-service)とかだと getService()できる。 firefox/components/* firefox/chrome/* は一応調べた。grepだけど。
228 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 18:11:16 ] >>226 すべての構成ファイルの文字コードを改めてUTF8BOMなしで保存し、 インストールしてみましたがやはりできませんでした。 エディタはTerapadを使っています。
229 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 18:48:55 ] >>228 >にすべての構成ファイルの文字コードを改めてUTF8BOMなしで保存し、 >インストールしてみましたがやはりできませんでした。 chrome.manifestをUTF-8のBOMなしで保存したら動作するけど... エディタが勝手に変なことするんじゃない?
230 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 19:35:31 ] スレチな質問だとは思うんですが UTF-8BOMなしで保存して、開きなおしたらUTF-8BOMなしで開くものですよね? TerapadでもEmEditorでも開きなおすとSJISになってしまうんです。 他のUTF-8のファイルはちゃんとUTF-8で開くのですが...
231 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 19:50:22 ] BOMついてるのはバイナリエディタで確認できる でchrome.manifest BOMついてますね。 エディタの件だが, 自動判定はあまり信用しない方がよろしいかと, 特にファイルに含まれる文字数が少ない場合は失敗する確率が高い, BOMついてないUTF-8は特に判定が難しい。 使用エディタ変える方がいいんじゃない, 秀丸エディタとかNotepad++とか
232 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 19:55:06 ] >>230 TeraPadはUTF-8(BOMなし)を扱える。 君のTeraPadの設定がおかしい可能性が高い。 オプションの文字コード関係の設定をよく見直して。 これ以上はTeraPadスレで。
233 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 20:04:52 ] >>231 再度保存してみたものです。 バイナリエディタでみたところ各ファイルBOMはついてないようです。 www.uploda.net/cgi/uploader4/index.php?file_id=0000026353.zip chrome.manifestを直したものはツールのところにhello world出てるってことですよね? >エディタの件だが, 自動判定はあまり信用しない方がよろしいかと, >特にファイルに含まれる文字数が少ない場合は失敗する確率が高い, >BOMついてないUTF-8は特に判定が難しい。 なるほど。勉強になります。
234 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 20:37:02 ] 連投失礼いたします。 直接extensionsフォルダから拡張を削除しもう一度インストールしたらできるようになりました。 どうもお騒がせしました。
235 名前:220 [2008/02/06(水) 14:31:27 ] 結局 developer.mozilla.org/ja/docs/Code_snippets:File_I/O を見て、プロファイルディレクトリが取れたのでよしとしました。
236 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 05:04:30 ] おまえらデバックする時どうしてる? 自分は書庫化し直してるんだが、これって一般的な方法? どうも面倒くさい
237 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 05:08:44 ] >>236 アドオン開発環境のセットアップ developer.mozilla.org/ja/docs/Setting_up_extension_development_environment
238 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 06:26:53 ] >>236 >>237 の開発用の設定にして、jarに圧縮せず、-console オプションを付けて起動。
239 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 06:30:05 ] どもども
240 名前:デフォルトの名無しさん [2008/03/01(土) 09:21:56 ] xulをプラットフォームとして使おうと思ったら、Firefox起動しない状態でも、ファイルをダブルクリックしたらXULアプリケーションが起動するような環境が必要だと思うのだが・・・
241 名前:デフォルトの名無しさん mailto:sage [2008/03/01(土) 13:47:17 ] >>240 思うのだが?続きはなんでしょう? developer.mozilla.org/ja/docs/XULRunner
242 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 21:34:29 ] Firefox3でopenPopupの直後だとpanelのサイズが取得できない……。 2ではshowPopupの直後でもpopupのサイズ取得できたのになあ……。 それでもなんとかして取得したいんだが、どうすればいい? 欲を言えば、openPopup(showPopup)の前(非表示状態のとき)に 取得できるとなお良いんだが。 要はウィンドウ中央に表示させたいんだよね。
243 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 22:50:06 ] ポップアップは非同期になったんじゃなかったけ? popupshowingかpopupshownで取得できるんじゃない?
244 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 00:13:50 ] >>243 できたよありがとう!
245 名前:デフォルトの名無しさん [2008/03/10(月) 03:47:11 ] >241 …空が、青いなぁ… orz
246 名前:デフォルトの名無しさん [2008/03/11(火) 12:16:32 ] もともとのステイタスバーの上にテキストボックスとボタンを配置したいのですが hboxにid属性をつけると表示されません。どうしてでしょうか? 以下ソースです。汚いですが。。。 <?xml version="1.0"?> <overlay id="inputhelperOverlay" xmlns="www.mozilla.org/keymaster/gatekeeper/there.is.only.xul "> <popup id="contentAreaContextMenu"> <menuitem id="show_InputHelper" label="InputHelper" insertafter="context-undo" oncommand="show_IH()"/> </popup> <script src="Overlay.js" /> <hbox insertbefore="status-bar" id="ihbox"> <textbox multiline="true" width="400" rows="4" /> <button label="Copy" oncommand="copy(); return false;"/> </hbox> </overlay> </overlay>
247 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 14:42:51 ] >>246 オーバーレイを適用する親要素がない。 ttp://developer.mozilla.org/ja/docs/XUL_Overlays
248 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 14:47:06 ] <overlay id="inputhelperOverlay" xmlns="www.mozilla.org/keymaster/gatekeeper/there.is.only.xul "> <popup id="contentAreaContextMenu"> <menuitem id="show_InputHelper" label="InputHelper" insertafter="context-undo" oncommand="show_IH()"/> </popup> <script src="Overlay.js" /> <window id="main-window"> <hbox insertbefore="status-bar" id="ihbox"> <textbox multiline="true" width="400" rows="4" /> <button label="Copy" oncommand="copy(); return false;"/> </hbox> </window> </overlay> これでどう?
249 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 16:19:32 ] >>247 ,248 できました!ありがとうございます!
250 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 23:39:42 ] addons.mozilla.org について教えてほしいのですが ・作者の項目にニックネームを表示する方法 ・登録した拡張の削除の仕方 これらはどうやってやるのでしょうか? 作者がニックネームの人も居るので出来るかと思ったら アカウントを作ったときの姓名が表示されてしまうし、 ファイルを削除は出来ても、登録された拡張は削除できないし、 わけわかめな状態になってます。
251 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 10:30:04 ] ログインした状態で右上の「アカウント」って所からニックネーム設定できるよ。 あと登録された拡張の削除はシステム的にできないみたい。 ファイルを消せばユーザからは見えなくなるのでそれで我慢するしかないぽ。 漏れなんて、この間からシステムの不調でアップロードが上手く行かなくて 管理画面上ではIncomplete - No Filesで同じバージョンの項目が3つ並んでる。
252 名前:250 mailto:sage [2008/03/17(月) 20:20:17 ] >>251 レスどうもです。 アカウントでニックネームを設定してみたのですが、 開発者用コンパネでは作者に姓名の方が表示されています。 作者の追加でも、アカウントから勝手に作者名を探すみたいで、 名前を自由に入れたりは出来ないみたいだし。 とりあえず姓名の方を適当に変更する事にします。 削除は出来ないんですね。 自分も同じバージョンのIncomplete - No Filesが3つ並んでますw
253 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 22:26:35 ] webサービス開発系のプログラマーは目の的! firefox開発者って対して取り上げられていなくてかわいそうに だっせぇwww
254 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 22:34:33 ] めのまと?
255 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 23:09:51 ] >>253 日本語でおk
256 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 23:42:29 ] めのてき(←なぜか変換できない)
257 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 23:57:14 ] 目の敵と目の的の関係は既出と外出のそれに同じか。
258 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 10:23:56 ] Firefox 3のbrowser.jsのズーム機能のコードを眺めていたら こんなふうにdeleteを使っているのですが、どういった意味があるのでしょうか? // Content Pref Service get _cps FullZoom_get__cps() { delete this._cps; return this._cps = Cc["@mozilla.org/content-pref/service;1"]. getService(Ci.nsIContentPrefService); },
259 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 11:55:09 ] 何かのタイミングで FullZoom._cps が書き換えられていても、 確実に ContentPrefService を返す。 ちなみに修正前はこんなコード __cps: null, get _cps() { if (!this.__cps) this.__cps = Cc["@mozilla.org/content-pref/service;1"]. getService(Ci.nsIContentPrefService); return this.__cps; }, https://bugzilla.mozilla.org/show_bug.cgi?id=389628#c117 修正前 https://bugzilla.mozilla.org/show_bug.cgi?id=389628#c118 修正後 mxr.mozilla.org/firefox/source/browser/base/content/browser-textZoom.js 現コード
260 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 13:32:00 ] 御回答ありがとうございます。でも、なぜこうやらないんですか? get _cps() { return Cc["@mozilla.org/content-pref/service;1"]. getService(Ci.nsIContentPrefService); },
261 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 23:07:54 ] getterが最初の一回のみ実行されるようにじゃないの delete this._cps; によってgetterが削除されて 以降はthis._cpsに格納されたnsIContentPrefServiceを参照するようになる
262 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 00:20:04 ] なるほど。ありがとうございました。
263 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 22:15:25 ] gzip圧縮されたdiskキャッシュをnsIStreamConverterServiceの convertで展開しようとしてるんだけどうまくいかのよね。
264 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 17:51:13 ] Firefoxを多重起動したときに連動するように したいんだが、どうすりゃいいんだ??
265 名前:デフォルトの名無しさん [2008/06/15(日) 18:24:36 ] RDFから作成したlistboxをもう一度、RDFから作成しなおす方法はありませんか?
266 名前:デフォルトの名無しさん mailto:sage [2008/06/15(日) 21:24:53 ] よくわからんが、builder.rebuild()じゃだめなの? XUL:Property:builder - MDC developer.mozilla.org/ja/docs/XUL:Property:builder
267 名前:デフォルトの名無しさん [2008/06/16(月) 22:18:32 ] ありがとうございます。 builder.rebuild()ではファイルからの再読み込みはしないようです。 別の方法を考えます・・・・。
268 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 23:14:24 ] >>267 多分nsIRDFServiceのUnregisterDataSourceでいったんデータソースを開放しないとダメ。
269 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 00:24:07 ] leakmonitorを入れてみたら、以下のようなコードもリークしてるよと 報告されました。 document.getElementById("contentAreaContextMenu").addEventListener("popupshowing", function(e) { if (e.target == this) myextension.showContextMenu(this);}, false); やっぱりちゃんと handleEvent メソッドを備えたオブジェクトをリスナーとして登録して、 window の unload 時に removeEventListener した方がいいんでしょうか? まだまだ良く分かっていないので、とんちんかんな質問かもしれませんがよろしくお願いします。
270 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 01:04:47 ] >>269 handleEventを使う必要はないと思うけど removeEventListenerはしておいた方が安全そう
271 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 06:11:08 ] <tabbox id="tabBox" orient="vertical" flex="1"> <tabs> <tab label="tab1" id="tab1"/> <tab label="tab2" id="tab2"/> <!-- 以下、tabたくさん --> </tabs> <tabpanels id="pagePanels" flex="1"> <tabpanel id="1"> <html:iframe type="content" id="iframe1" src="〜" flex="1"/> </tabpanel> <tabpanel id="2"> <html:iframe type="content" id="iframe2" src="〜" flex="1"/> </tabpanel> <!-- 以下、tabpanelたくさん --> </tabpanels> </tabbox> このようなXULをウィンドウコンテント領域に表示させると、 多数のタブのブラウザに入りきらない部分が見切れてしまい、 矢印キーなどでフォーカスは当たるが表示されない状態になってしまいました。 また、それに合わせてtabpanelも広がってしまい、右端の部分が表示されません。 これを、タブを多段表示にする、またはスクロールバーなどを出す、など 何らかの方法でブラウザ内に収まりきるようにしたいのですが どうしたらいいんでしょうか? flexを外したりorientをhorizontalにしたりしても tabpanelが縮んだりタブが縦に広がったりとうまくいきません。 また、cssでwidth:100%などしても効果がありませんでした…。
272 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 08:03:49 ] それこそtabbrowser.xmlを参考にしてみたらいいんじゃない?>スクロール Tab Mix Plus等のコードを見てみれば多段表示についてもヒントが得られるかと。
273 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 21:18:52 ] レビューでバグについて報告があったんだけど、 自分の環境では再現されない。 この場合どういう反応をすればいいんだろうか。
274 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 22:20:59 ] TMPの作者に倣ってみるとか tmp.garyr.net/forum/viewtopic.php?p=23635#23635 tmp.garyr.net/forum/viewtopic.php?p=24428#24428
275 名前:デフォルトの名無しさん mailto:sage [2008/07/15(火) 01:12:56 ] >>274 どうも。とりあえず 他のアドオン無効でチェックしてみて、まだ問題あるなら連絡してくれ という意味(のつもり)の文を書いといたよ。 あんだけの文章でどれだけ時間掛けてるんだ俺……英語力のなさに失望orz
276 名前:デフォルトの名無しさん mailto:sage [2008/07/26(土) 10:35:19 ] ボタンを通常のクリックしたときとミドルクリックしたときで実行する処理を分けたい場合 どうすればいいですか? oncommandでevent.buttonの値を調べてもundefinedとなってしまいます。
277 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 03:49:37 ] onclickでやるしかないんじゃないかな 通常クリック→oncommandで捕捉 ミドルクリック→onclickで捕捉(通常クリックは無視)
278 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 12:21:07 ] >>277 その方法でいけそうです。ありがとうございました。
279 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 04:44:00 ] >>592 設定出来ない。 ツール(外部アプリ)でいじれるかも知れない。 >>593 saveImageURLって何 forums.mozillazine.jp/viewforum.php?f=2 ttp://forums.mozillazine.org/viewforum.php?f=19 ttp://pc11.2ch.net/test/read.cgi/tech/1164625238/ で聞く方が良いのでは? 拡張機能で同様の機能を持つものはいくらでもあるけど。
280 名前:279 mailto:sage [2008/09/25(木) 04:45:25 ] 誤爆した。
281 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 00:44:10 ] Visual Basic2008にXULRUNNERを組み込もうとしています 表示まではあっさり行ったのですが、プログラムでブラウザをコントロールするところがうまくいきません ページ上の各要素に対してコントロールしたいのですが IEのように、各種Htmlコントロールでコントロール出来ないのです ここからサンプル-------------------------------- 'ブラウザメモリ確保 IE = New WebBrowser Moz1 = New AxMOZILLACONTROLLib.AxMozillaBrowser Moz2 = New AxMOZILLACONTROLLib.AxMozillaBrowser Dim heOut As HtmlElementCollection heOut = Moz2.Document '代入した瞬間にエラー 'heOut = IE.Document.All'うまくいく heOut.GetElementsByName("srchtxt")(0).InnerText = "検索用です" heOut.GetElementsByName("srchbtn")(0).InvokeMember("click") ここまでサンプル-------------------------------- HTMLコントロールはIE用に用意されているので、何らかのキャストが必要かと思うのですが MOZILLA側で、各要素をコントロールするにはどうすればいいのでしょう MOZILLAのメソッドを色々探しているのですがなかなか見つからず難儀しています
282 名前:plus7 ◆DHcM3x9Sng mailto:sausage [2008/09/29(月) 12:33:01 ] HtmlElementCollectionにHtmlDocument代入しようとすればエラーになるのは当然では あと微妙にスレ違い
283 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 19:28:57 ] いやまあ・・エラーになって当然なんだけど Mozillaでも似たようなクラス無いのかなぁ・・・と。 目的はプログラムから直接画面上のテキストやらボタンやらにアクセスしたいんです すれ違いなの?
284 名前:plus7 ◆DHcM3x9Sng mailto:sausage [2008/09/29(月) 22:51:58 ] GeckoのActiveXコントロールはわざわざIEコンポーネントの機能を エミュレーションしているので、一部(つーか大半)使えない機能がある。 だが、document.allには対応してそうな感じ。 mxr.mozilla.org/mozilla-central/source/embedding/browser/activex/src/control/IEHtmlDocument.cpp#98 getElementsByNameは見た限りでは見つからない。innerTextはいけるっぽい。 mxr.mozilla.org/mozilla-central/source/embedding/browser/activex/src/common/IEHtmlElement.cpp#602 とまあ苦労するのが目に見えているので、.NETでGeckoをより深く制御したいならこのコンポーネントを使ったほうがいい。 code.google.com/p/geckofx/ >すれ違いなの? >>1 は読んだのかね?
285 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 00:55:40 ] 283です ありがとうございます。 そんなコンポーネントを作ってる人がいるとは。 週末に試すようにします。 姉妹スレ できけってことかと思うんですが、ブラウザ自体を作りたいわけではなかったので・・・ あ、でもこちらは拡張の作り方か・・・すいません。
286 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 17:20:26 ] ちょっと紹介させてください。 XULのUIデザイナみたいなものを作ってみました。 まだ不安定ですが、よかったらどうぞ。 kukuru.s7.xrea.com/xulpix/