大学の演習でTraceMonkeyについて調べていた。
Nanojitを改造できたらいいなと思ったが、とりあえず思いつくような最適化はあらかたやられていた…。
3月にあると思われるCPU実験(こことかid:suztomoのエントリとかを参照)の発表会をUstしたいなーとか動画をニコニコにうpしたいなーとか思っていたのだが、12/12よりニコニコ動画でユーザー生放送ができるようになるらしいので、Ustじゃなくてニコニコでやろうかなーと思っている。
とりあえずは、プレミアム会員にならないといけないな。
FlashPlayer10はV4L2に対応しているので、Linuxでも容易に放送ができるようになっているはずだ。
テスト放送に使えるいい題材ないかな。夏に「アリの巣を24時間監視するUst」を地下(大学の学生演習室)から放送する話が半ばジョークであったのでやってみるか。
やばい、これは神だ。
今までもMozilla ActiveX Controlを使えば、Webブラウザを作成することはできたわけですが、Gecko固有の機能はいじれないので大いに不満の残るものでした。
GeckoFXを使うとActiveXを経由することなく.NETでGeckoエンジンを扱うことができます。
http://code.google.com/p/geckofx/
Skybound.Gecko.dllを参照設定の後、using Skybound.Gecko;して、
Xpcom.Initialize(xulrunnerPath);
GeckoWebBrowser browser = new GeckoWebBrowser();
browser.Parent = どっかのコントロール;
browser.Dock = DockStyle.Fill;
browser.Navigate("http://www.w3.org/");
これだけでOK。
ここまで簡単にGeckoを組み込めるのには感動(まあDelphi版GeckoSDKもかなり簡単なんですが)。
というわけでC#ラブな人はちょっといじってみてはいかが?
以下サンプル。テーマが有効なときはこれは起こらない。
DrawFrameControlを呼び出すところの些細な間違いを直すのと、スクロールバーの内側のチェック模様の部分を描画(GeckoでいうnsNativeThemeWin::DrawCheckedRect)するために多少手直しが必要。そんなに手間じゃないけど。
最近個人的に注目してるReactOSだと/dll/win32/user32/controls/scrollbar.cのIntDrawScrollInteriorあたりか
まったく関係ないですが渋谷で猿が出たらしいですね。
GeckoFXを使ってありがとうございます。
ちょっと日本語話しますからもし質問があったら教えてください。GeckoFXのフォーラムは英語ばかりですけど、私に私信を送ったら日本語で返事してみます。(名前:Skybound_Andrew)