[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 05/09 12:52 / Filesize : 107 KB / Number-of Response : 393
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Mozillaでプログラミング(XUL) その3



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あたりに関連リンク、近況などがあるかも。

2 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 20:11:57 ]
ずるしてらくしてかれいに2げっとかしらかしら〜

3 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 22:45:42 ]
XULはMozilla Corporationの商標だぞ
勝手に使うなよ

4 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 22:50:46 ]
There is no data.
There is only xul.

5 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 23:30:50 ]
>>3
商標についての知識が皆無のようだね。

6 名前:デフォルトの名無しさん mailto:sage [2006/11/28(火) 08:52:48 ]
XUL® でいいのか?

7 名前:デフォルトの名無しさん mailto:sage [2006/11/28(火) 16:36:43 ]
2chって™とか ™ って表示されないんだっけ?
♥は出るのにな

8 名前:デフォルトの名無しさん mailto:sage [2006/11/28(火) 16:38:01 ]
お 出るじゃんXUL™

9 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 14:56:41 ]
そもそも>>3も勝手に使ってる件w

10 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 22:59:39 ]
var foo.prototype = {
hoge: function foo_hoge(){
...
}
}
のような書き方をよく目にしますが、foo_hogeにはどういう意味があるのでしょうか?



11 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 23:59:19 ]
foo_hogeでググれ

12 名前:デフォルトの名無しさん mailto:sage [2006/12/03(日) 00:23:28 ]
いや、
foo.prototype = {
hoge: function(){
...
}
};
ではなく、
foo.prototype = {
hoge: function foo_hoge(){
...
}
};
とすることに意味はあるのか、ということを知りたいのです。

13 名前:デフォルトの名無しさん mailto:sage [2006/12/03(日) 02:28:12 ]
デバッグがしやすくなる。
XPConnectに絡んだエラーが出たときとか、
関数名があればそれがエラーコンソールに出てくるから、
それを見ただけで大体の場所がわかる。

14 名前:デフォルトの名無しさん mailto:sage [2006/12/03(日) 04:35:35 ]
>>11
ちょっとワラタ

15 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 01:30:41 ]
>11
思ったより検索結果が少ないことに驚いてるぜ俺。

16 名前:デフォルトの名無しさん [2006/12/06(水) 17:16:32 ]
XUL Tutorialを読んでXPCOMを試しているんですけど、エラーになって困ってます。
TutorialのXPCOMのページにある最初の例
var aFile = Components.classes["@mozilla.org/file/local;1"].createInstance();
if (afile) aFile.queryInterface(Components.interfaces.nsILocalFile);
を試しているんですけど、
Error: uncaught exception: Permission denied to get property UnnamedClass.classes
というエラーがでてしまい、先に進めません。
どうやら Compoments.classes というところでエラーになっているようです。
alert(Components.classes); // これでエラーになる
どなたかアドバイスお願いします。


17 名前:デフォルトの名無しさん [2006/12/06(水) 17:27:14 ]
すいません、ぐぐったら
www.xulplanet.com/tutorials/xulqa/q_pdenyucc.html
そのままありました。
しかし原因はわかりましたが、解決策がいまいちわかりません。
chromeにする、みたいなことがかいてあるんですが。どうするんだろ。

18 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 18:12:11 ]
Mozillaでプログラミング(XUL) その2
pc8.2ch.net/test/read.cgi/tech/1102172958/952-956
952 名前:デフォルトの名無しさん 投稿日:2006/10/22(日) 22:35:33
user_pref("capability.principal.myapp.id","www.example.com/");
user_pref("capability.principal.myapp.granted","UniversalXPConnect");

こんな感じでローカルファイルではなくて外部のURLにXPConnectの特権を与えることはできないのでしょうか?


953 名前:デフォルトの名無しさん 投稿日:2006/10/23(月) 13:39:48
>952
これはどう?
ttp://piro.sakura.ne.jp/latest/blosxom.cgi/webtech/javascript/2006-06-27_unsinged-script.htm

19 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 22:07:45 ]
>>16

developer.mozilla.org/ja/docs/XUL_Tutorial:Manifest_Files

を参考に、マニフェストファイルを作成して、適当なディレクトリを
chrome に登録する。

そこに、置いたファイルが chrome: で始まる URL でアクセスできたら、XPCOM の例は
確認できると思うけど、その前に、

ttp://piro.sakura.ne.jp/xul/tips/x0000-2.html

を読んでおいた方が無用な苦労をしなくてすむかも。

20 名前:17 mailto:sage [2006/12/08(金) 01:13:34 ]
>>18をヒントにいろいろ検索し、以下のようにすることでできるようになりました。
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
ただし、毎回確認ダイアログがでます。署名付きスクリプトにすればいいみたいですが、よくわかりません。
ローカルのxulファイルを実行しているときは、他のローカルファイルにもアクセスできてほしいんですけど、きっとそういうわけにはいかないんでしょうね。

それで、今度はnsILocalFileオブジェクトの使い方がわかりません。XULPlanetのXPCOMリファレンスを参考にしているのですが、エラーになります。
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var aFile = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
aFile.initWithPath('example.txt'); // ここでエラー

エラー内容は次のとおりです。
Error: uncaught exception: [Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)
[nsILocalFile.initWithPath]" nsresult: "0x80520001
(NS_ERROR_FILE_UNRECOGNIZED_PATH)" location: "JS frame :: file://localhost/Users/wada/tmp/xul/tut1.xul :: test1 :: line 218" data: no]

UNRECOGNIZED_PATHだとあるんですけど、どういう意味でしょうか。もちろんexample.txtは存在します。
教えてくんで申し訳ありませんが、アドバイスいただけないでしょうか。




21 名前:17 mailto:sage [2006/12/08(金) 01:15:08 ]
>>19
ああ、新しいレスがあったんですね。すみません。
今から読んでchromeとやらを勉強します。


22 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 01:17:59 ]
>>20
ちゃんとnsILocalFileで検索したのかな?
XULPlanetのインターフェースリファレンスを見ればいいんだけど。

www.xulplanet.com/references/xpcomref/ifaces/nsILocalFile.html#method_initWithPath
Arguments:
filePath: A string which specifies a full file path to a location.

23 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 04:23:32 ]
20>>
22>>
チュートリアルにも加えておきました。

そういや、
developer.mozilla.org/ja/docs/XUL_Tutorial:Templates
にあるような特権の説明、XPCOMのセクションにも加えたほ方が良いのかな?

なんで、テンプレートにあるんだろうと思ったら、
昔はテンプレートの方が XPCOM より前のセクションだったみたいですね。

24 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 21:03:03 ]
XPCOMで遊ぶならMCRでidl定義を見るのもいい方法だ
ttp://lxr.mozilla.org/mozilla/

25 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 21:50:16 ]
というかドキュメントが糞過ぎて見ないと分らない罠。

26 名前:デフォルトの名無しさん mailto:sage [2006/12/09(土) 10:47:09 ]
最終的にはソースを読むことになるんだけどな

27 名前:デフォルトの名無しさん mailto:sage [2006/12/10(日) 16:27:45 ]
そーっすね

28 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 16:44:13 ]
>>1に追加すべき日本語の資料って

XUL Tutorial 日本語版
developer.mozilla.org/ja/docs/XUL_Tutorial
XUL Wiki
wiki.fdiary.net/xul/
XUL Apps > Tips&Technics - outsider reflex (やや古め?)
piro.sakura.ne.jp/xul/tips/

あたりかな?ほかになんかある?

29 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 18:42:29 ]
XULアプリケーション作成入門
www.mozilla.gr.jp/~kazhik/xul/tutorial.html

30 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 18:43:45 ]
連投になってスマソ
Mozilla 資料 - コアアーキテクチャ: XUL
www.mozilla-japan.org/catalog/architecture/xul/



31 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 18:52:01 ]
Code snippets
ttp://developer.mozilla.org/en/docs/Code_snippets

mozillaZineから移してるみたい
ttp://kb.mozillazine.org/Category:Example_code

32 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 19:11:53 ]
便利かもしれない開発ツール

○拡張○
Extension Developer's Extension
ted.mielczarek.org/code/mozilla/extensiondev/
XPXOMViewer
xpcomviewer.mozdev.org/

○Eclipse○
EclipseXUL(XULRunnerアプリの開発向け)
eclipsexul.sourceforge.net/
XulBooster(Firefox用拡張の開発向け)
cms.xulbooster.org/

33 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 19:13:59 ]
ぎゃあ、XPXOMViewerってなんだよ・・・
元のページのタイトルが間違ってんじゃん・・・
正しくはXPCOMViewerってことで

34 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 00:44:13 ]
>>33
言われるまで気づかなかった

35 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 14:18:20 ]
これってXPCOM Component Viewerとは別物なの?

36 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 23:26:03 ]
Component Object Model Component Viewer って変な感じ

37 名前:デフォルトの名無しさん mailto:sage [2006/12/17(日) 21:33:36 ]
地域化(locale)が全く出来ません。
.batファイルでスクリプトを書いてパックしてるんだけど・・・
パック後じゃないと内容は確認できないの?

38 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 23:15:53 ]
chrome.manifestかinstall.rdfが間違ってるんじゃないの?

39 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 23:30:13 ]
デバッグ中はxpiにしなくても良い

40 名前:デフォルトの名無しさん [2006/12/19(火) 21:51:57 ]
じゃぁデバッグ中はchrome.menifestとかcontent.rdfは関係ないの?



41 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 23:00:03 ]
関係ある。chrome.manifestとinstall.rdfは必須。
content.rdfなんてものは捨ててしまえ。

42 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 23:00:34 ]
もっと素朴な疑問
そもそも拡張機能のデバッグってどうやってるの?

43 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 20:15:35 ]
dumpでエラーを監視する

44 名前:デフォルトの名無しさん mailto:fusianasan [2006/12/23(土) 14:25:15 ]
>>41
やってみる

45 名前:デフォルトの名無しさん mailto:fusianasan [2006/12/23(土) 23:20:57 ]
chrome://hoge/content/hoge.jarって、「jar」で必須?
developer.mozilla.org/ja/docs/Building_an_Extension#.E3.83.91.E3.83.83.E3.82.B1.E3.83.BC.E3.82.B8.E5.8C.96
これだとjar圧縮は必要なくてrootディレクトリをzip→.xpiにリネームだけで済むらしい。
みんなどっち?

46 名前:デフォルトの名無しさん mailto:sage [2006/12/23(土) 23:37:50 ]
そもそもいろいろなことに目をつむれば圧縮する必要すらないわけだが。

47 名前:デフォルトの名無しさん mailto:sage [2006/12/23(土) 23:55:36 ]
jarは必須ではない。

48 名前:デフォルトの名無しさん mailto:sage [2006/12/24(日) 02:05:50 ]
>>45
圧縮しなくてもいいが圧縮(無圧縮ね)したほうがパフォーマンスがいい

49 名前:デフォルトの名無しさん mailto:sage [2006/12/24(日) 10:39:30 ]
jarにしない場合、
chromeFiles/content/xxx/
chromeFiles/skin/xxx/
っていうディレクトリ構成が一般的だが、chrome.manifestが正しければ
content/
skin/
でも問題ない。

50 名前:デフォルトの名無しさん mailto:sage [2006/12/24(日) 11:11:51 ]
>>49
その一般的って言うのはどこかで推奨されてる?
Greasemonkeyがそんな構成になってたと思うけど
そうする明確な理由があるなら知りたい。



51 名前:デフォルトの名無しさん mailto:sage [2006/12/24(日) 12:35:18 ]
>>50
chrome.manifestの指定に従ってるだけだから
別にどう作ってもいいんじゃね
拡張ごとにてんでバラバラじゃん
デフォルト値だけはdefaults/preferences/default.jsに決まっているみたいだけど


52 名前:デフォルトの名無しさん [2006/12/26(火) 02:21:49 ]
ファイルのドラッグ&ドロップに反応したいのですが、内部のjsファイルとXPCOM Referenceを見ながら探してもどうすればいいのか分からないのですが…
私ってダメな子なんでしょうか…orz


53 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 19:23:51 ]
XULチュートリアルのドラッグ&ドロップの章を
見ながらやってみるといいと思う


54 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 00:43:50 ]
ドラッグ&ドロップは、チュートリアルには難しいという
ことなのか、最近のものでは外れていますんで、
日本語訳を読みたいのなら MDC ではなく、旧訳の方をどうぞ...

ttp://xul-app.hp.infoseek.co.jp/xultu-janit/dragdrop.html

55 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 11:39:19 ]
実際に使うのは多分これだね
ttp://xul-app.hp.infoseek.co.jp/xultu-janit/dragwrap.html


56 名前:デフォルトの名無しさん [2006/12/27(水) 22:31:39 ]
今までの流れです

XPCOM Reference でDrag and DropのAPI群を見つける
     ↓
これだけだと何のことか分からないのでjsファイルを全文検索
     ↓
nsDragAndDropを発見、さらに検索
     ↓
onDrop属性発見、onDrop="alert('Hello,Drop')"とか書いて試してみる、がなんか動かない
     ↓
ondragover="nsDragAndDrop.dragOver(event,textObserver)"とかやればいいのね、アラ、動かない。
     ↓
直しては試しながら、頓挫

というカンジでしたが>>44>>45あたりのリンクのおかげで解決いたしました。
なんというか、努力不足でした、スイマセン。


57 名前:デフォルトの名無しさん [2006/12/27(水) 22:32:39 ]
> というカンジでしたが>>44>>45あたりのリンク
54、55ですね

58 名前:デフォルトの名無しさん mailto:sage [2006/12/30(土) 00:57:48 ]
chrome://xxx/content/test.jsからchrome://xxx/content/file.txtのファイルを
読みたいのですが、ファイルパスを得るにはどのようにすればよいでしょうか?
nsIDirectoryServiceを使ってProfDからextensionsフォルダ、GUIフォルダと探った
としてもその先がわかりません。

59 名前:デフォルトの名無しさん mailto:sage [2006/12/30(土) 12:27:49 ]
>>58
ttp://piro.sakura.ne.jp/xul/tips/x0021.html
の後半でどうですか?

60 名前:デフォルトの名無しさん mailto:sage [2006/12/30(土) 16:07:47 ]
>>59
まさにそれでした。ありがとう。



61 名前:デフォルトの名無しさん mailto:sage [2007/01/02(火) 06:22:43 ]
nsIStringBundleServiceのcreateBundleと同じような感じで、JavaScriptから
DTDファイルのローカライズされた文字列の一覧を取得することは可能でしょうか?

62 名前:デフォルトの名無しさん [2007/01/08(月) 10:36:01 ]
pc8.2ch.net→pc10.2ch.net
なんか鯖移転したみたいだけど、pc8のほうにはまだdatが残ってるぽい。

63 名前:デフォルトの名無しさん mailto:sage [2007/01/08(月) 10:49:27 ]
imageタグで画像を表示したらなんか引き伸ばされちゃったんですけど。
cssでの指定はどうすればいいですか。

64 名前:デフォルトの名無しさん mailto:sage [2007/01/08(月) 11:26:52 ]
>>63脳みそ腐ってたごめん。解決した。

65 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 01:26:37 ]
flexなbox内に配置した要素のサイズがboxに引きずられて拡大縮小してしまうんだけど、どうすれば防げる?

<vbox flex="1">
<image src="xxx.png"/>
</vbox>

66 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 21:27:31 ]
>>65
developer.mozilla.org/ja/docs/XUL_Tutorial:Element_Positioning

67 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 00:21:43 ]
>>66
さんくす

68 名前:デフォルトの名無しさん [2007/01/29(月) 23:41:17 ]
"@mozilla.org/process/ipc-buffer;1"
nsIIPCBuffer を使いたいのですが、自分で
作るしかないのでしょうか?

69 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 00:51:08 ]
>>68
enigmail に入ってるやつ使えないかな

70 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 12:21:46 ]
>>50
なぜ一般的か、っていうと、mozilla.orgの内部的な慣例ではそうなってるから、だね。
フォルダを一階層余分に付ける直接的な理由は、複数のパッケージを
同一のjarに入れたい場合があるから。

例えば、"example"という名前の拡張を作った場合、
example.jarの構成が、
content/foo/foo.xul
content/foo/foo.js
content/bar/barOverlay.xul
content/bar/barOverlay.js

で、アクセス方法が
chrome://foo/content/foo.xul
chrome://bar/content/barOverlay.xul
のような複合パッケージングがありうることを考えると、
「慣例」としては、一階層余分に付ける方が無難になる。
だって、chrome.manifestを
content foo jar:example.jar!/foo/
content bar jar:example.jar!/bar/
という風に書けるわけだから。

しかし、現実に拡張を作成する場合、そういう複雑なことをするよりは、
むしろjarを2つ作る方が便利だから、この慣例に従うメリットはない。
納得がいかなければ、en-US.jarとかを覗いてみると良くわかると思う。

まとめ
・jarに「しない」場合じゃなくて、jarに「する」場合のための慣例。
 (単に、解凍していない時のファイル構造を見る機会が少ない故の勘違いか)
 install.js時代は、インストールのスクリプトを書くのがすごく大変だったから、
 浅知恵でファイル構成を考えると、すぐインストール不可になっていたのも大きい。
・現状では無意味。



71 名前:デフォルトの名無しさん mailto:sage [2007/02/10(土) 13:32:55 ]
ttp://www.mozilla-japan.org/events/2006/fxdevcon/presentations/1a.pdf
これのScaling and rotationというスライドで紹介されているページの回転とかって
具体的にはどういう技術で可能になるのでしょうか?

72 名前:デフォルトの名無しさん mailto:sage [2007/02/10(土) 13:51:20 ]
cairo

73 名前:デフォルトの名無しさん mailto:sage [2007/02/10(土) 14:39:18 ]
じゃあ今のMinefieldでcairoをつかってTab Effect見たいなことできますか?

74 名前:デフォルトの名無しさん [2007/02/15(木) 16:43:57 ]
ところで
window {
background-color:transparent !important;
}
とやると、とたんに中身が全く表示されなくなるxul要素が結構あるみたいなんだが、これは仕様?バグ?それとも仕様という名のバグ?



75 名前:デフォルトの名無しさん mailto:sage [2007/02/15(木) 19:18:23 ]
>>74
それ 2.0.0.1 のバグじゃなかったっけ?

76 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 20:08:24 ]
OSを作ってください><

77 名前:74 [2007/03/20(火) 17:31:11 ]
>>75
あらら。Firefox2.0.0.2にあげたけど、ダメだったよ…。

78 名前:デフォルトの名無しさん [2007/03/31(土) 07:27:20 ]
>>77

79 名前:デフォルトの名無しさん [2007/03/31(土) 08:02:04 ]
>>77
仕様という名のバグとも言える仕様。
参考
ttps://bugzilla.mozilla.org/show_bug.cgi?id=70798
ttp://blog.goo.ne.jp/install-maido/e/ea4dfea9c04cea114c06f4c51fc891a8
ttp://level.s69.xrea.com/mozilla/index.cgi?id=20061224_API
ttp://maguroban.s41.xrea.com/diary/diary.xcg

まとめ
本来Fx3相当に入れるべき(?)patchを2.0.0.1に迷いながらも入れたので、特定のCSS指定でパフォーマンスの悪化、及び表示が狂うなどの現象が起きる。
このpatch自体は表現の幅を広げるが、告知がきちんと出来ていなかった為に一部のTheme職人がアタフタ。
拡張機能の互換性に関わるAPIの変更はマイナーバージョンでは入れないみたいだけど、Themeは無視ですか?その辺の認識を統一よろ。>開発者

Theme作者界隈ではそこそこの話題になったけどね。
機能として入ったものが引き起こした問題だから、2.0.0.1 - ALLが該当する。
個人的には、2に入れようが3に入れようが、Theme作者でmozilla.orgのアナウンスをこまめにチェックする人以外はどうせ同じ所でハマると思う。
今回はアナウンスがアレだったからね……。

それより俺はwindowの背景をtransparentして何がしたいのか聞きたい。

80 名前:77 [2007/04/01(日) 21:21:14 ]
windowを透明にする
  ↓
背景画像を萌え絵にする

うっせー! なにかもんくあるかー!!



81 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 01:55:19 ]
すいません。質問です。
有るウェブページをみていて、そのwebページのソースコードを取得したいんですが、
何か良い方法は有りますでしょうか?
例えば、有るページをみていてそこに書いてあるMozillaと言う文字を読み込んだ瞬間に
もじらみたいに変える方法を捜しているんですが良く分からないんです。

82 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 01:59:50 ]
Grease Monkey でも使っとけ

83 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 02:06:23 ]
>>82
Grease Monkeyではどのようにすれば取得できるのでしょうか?

84 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 02:19:49 ]
理解できました。
すいません。

85 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 02:44:21 ]
JavaScriptの呼び出しについての質問です。

overlay.xulというXULファイルがあって、
<?xml version="1.0"?>
<overlay id="helloworldOverlay"
xmlns="www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<menupopup id="menu_ToolsPopup">
<menuitem id="helloworldMenuitem"
label="Hello, World!"
insertbefore="sanitizeSeparator"
oncommand="hoge();" />
</menupopup>
</overlay>

Hello, World!というメニューをクリックしたら、
同じcontentディレクトリのファイルhoge.jsの
以下のようなスクリプトを実行したいのですが、
どうすればoncommandで呼び出せるのでしょうか?

function hoge (){
window.alert("hogehoge");
}


86 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 05:33:55 ]
scriptタグでインポート

87 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 06:21:35 ]
>>86
idを使って呼び出すことは出来ないのでしょうか?

88 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 06:32:22 ]
id?
何の話?

89 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 07:42:58 ]
>>87
overlay.xulで<overlay〜の行の次に追加。もちろん、hogehogeはあくまで例だが。

<script type="application/x-javascript" src="chrome://hogehoge/content/hoge.js"/>

idが何を指すかはよく分からんが、もし相対パスでやろうとしてるなら止めとけ。
例えば、それをbrowser.xulにoverlayしてるんなら、
<script type="application/x-javascript" src="hoge.js"/>
という記述は次のように解釈される。(多分。テストはめどいのでしてない)
<script type="application/x-javascript" src="chrome://browser/content/hoge.js"/>
つまり、overlay先(ここではchrome://browser/content/browser.xul)を基準にした相対パスになる可能性があるので、素直に全部書いた方がいいよ。

で、俺も質問していいか?
hack本なんかには「chrome内のscriptではtype="application/x-javascript"にせよ」みたいな事が書いてあるけど何故?
古いバージョン(text/javascriptをサポートしないバージョン)の為だったらchrome.manifest形式のみの拡張とかにはいらんよな……と思ったんだがどうよ?

90 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 08:42:14 ]
>>89
経験上、相対パスでおk



91 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 13:39:10 ]
Firefoxで、ツールバーアイコンとか動的に表示が変わるタイプのアイコンは
chrome://browser/skin/Toolbar.pngみたいな集合体から
-moz-image-regionで切り出す場所を変えて使ってるケースが多いようだけど
これは各アイコンを別ファイルで持っておくより効率がいいんかな

92 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 14:31:01 ]
アイコン画像がメモリ上に読み込まれるのはその要素が表示される
タイミングなので、hoverとかの状態ごとにファイルを分けてると
ボタンに最初にmouseoverした時にファイルの読み込みが発生して
一瞬真っ白なアイコンになってしまうので、その回避と思われ

93 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 15:06:13 ]
なるほどthx

94 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 16:18:36 ]
ファイルの数も抑えられるしファイルを1つ開いただけでエフェクトによる変化を見較べやすいのもあるんじゃないかと思った>画像

95 名前:デフォルトの名無しさん mailto:sage [2007/04/04(水) 19:19:29 ]
キャレットの色とか変える事できますか?
探しているのですがなかなかそれらしい物が見つからないのです

96 名前:デフォルトの名無しさん mailto:sage [2007/04/05(木) 17:13:06 ]
拡張ムズカシイぽ
でもがんばるぽ

97 名前:デフォルトの名無しさん mailto:sage [2007/04/06(金) 08:02:33 ]
defaults/preferences/の設定用JavaScriptの名前ってどうしてる?
俺は"defaults.js"にしてるけど知人は"prefs.js"にしてる。ちなみに俺は"prefs.js"なんてダサいと思うけど知人は"defaults.js"なんt(ry
で他人様の拡張機能ばらしたら(拡張機能名).jsが多いっぽい……。
何らかのガイドラインでもあるの?

98 名前:デフォルトの名無しさん mailto:sage [2007/04/06(金) 10:31:57 ]
>>97
<app install dir>/defaults/pref/*.js で
firefox.js, inspector.js, mailnews.js とかになってるからだろうな。
extensions/ 以下ならどうでもいいんだろうけど、
一応他と区別できる名前の方がいいんでないの?

99 名前:デフォルトの名無しさん mailto:sage [2007/04/06(金) 20:07:30 ]
>>9

100 名前:デフォルトの名無しさん mailto:sage [2007/04/06(金) 20:09:01 ]
>>98
thx.

>>99は俺のミス。すまん。








[ 続きを読む ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<107KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef