RimoをOpera Widgetで(失敗)

RimoをGoogleデスクトップのサイドバーで - mizuno_takaakiの日記
を見ていて、やたら簡単にGoogle Gadgetを作っているのに感銘を受けて
動画サービス「Rimo」終了のお知らせを見るOpera Widgetも2秒で作ってやんよ!
と思って作ってみた。結論から言うとできなかったんだけども。

iframeを使う方法

以下の2つファイルを作成する。
index.html

<!DOCTYPE html>
<html>
  <head>
    <title>Rimo</title>
  </head>
  <body style="background-color:white">
    <iframe src="http://rimo.tv/" name="rimo" width="100%" height="100%" />
  </body>
</html>

config.xml

<?xml version="1.0"?>
<widget>
  <widgetname>Rimo Widget</widgetname>
  <width>300</width>
  <height>300</height>
</widget>

2つのファイルをzipで圧縮して、
出来たファイルをWidgetの設定画面にドラッグアンドドロップする。
すると

JavaScriptが無効になっているか、 ご利用のFlashプレーヤーのバージョンが低い可能性があります。
最新のFlashプレーヤーをダウンロード

と表示されて、なぜか音だけ流れるWidgetができた。


エラーコンソールを見ると

みたいなエラーが出ていた。


さすがはブラウザ。
セキュリティには厳しい。

XMLHttpRequestを使う方法

Widgetのロード時にRimoのページをXMLHttpRequestで読み込んで
document.writeで全部書き出してやればできると考えてやってみた。
コードは割愛。


結果的にはscriptタグに書かれている

/javascripts/swfobject.js

をローカルから探そうとするので失敗。
document.writeする前に

http://rimo.tv/javascripts/swfobject.js

置換する処理を入れても
やっぱりローカルから探そうとするので失敗。


最後にswfobject.jsもXMLHttpRequestで読み込んで
読み込んだRimoのソースに埋め込んでやった。
エラーメッセージはひとつも出なかったが、
再生が始まらずRimoを見ることはできなかった。

まとめ

2秒どころか2時間かかってもできなかったけど
Opera Widgetの勉強になったからいいか…。
誰かスーパーハカーの人作って下さい><


(19:43) 追記
ちなみにこんな方法もあります。
http://d.hatena.ne.jp/moonstones/20070216/1171623537
上下のスペースがもったいないので
Widgetにしようと思ったわけです。


(21:33) 追記
ブラウザのサイドバーで Google ガジェットを活用する - WebOS Goodies
こんな記事を見つけたので
パネルの上半分にRimoを表示して
下半分にRemember The Milkのタスクリストを表示してみた。
無駄なスペースが減ってなかなかいい感じ。