« Stack Stock Books の携帯アプリが凄い。 | メイン | Hello Worldを例にした、USWidgetの作成方法 »

GreasemonkeyをWidget化するGreasemonkey

以前、こんなものを書きました。
その後、粛々と開発を続けやっと公開できるレベルまで達する事ができました。
user scriptで作成したwidgetを管理するGreasemonkeyなので、USWManagerという名前にしました。
はてなブックマークコメントを表示するwidgetも改良し名称も変更しました。
USWManagerはuser scriptで書かれたwidgetにwindow機能を提供します。
どのようなものか、youbuteとニコニコ動画に動画をupしましたのでご覧下さい。
機能一覧
widgetをドラッグして位置を変更する事ができます。
タイトルバーをダブルクリックする事でwidgetをたたむ事ができます。
タイトルバー右のボタンをクリックしてwidgetを閉じる事ができます。
タイトルバー左のボタンをクリックしてwidgetの設定を変更する事ができます。
widgetの設定には、現段階でwidgetの固定方法があります。
widgetの固定方法は、ブラウザの表示領域のどの角を基準にしてwidget位置を固定するかを選択できます。
widgetをたたむ時、表示されたままになるタイトルバーの位置はwidgetの固定方法に依存します。
ブラウザのウィンドウやタブ間でwidgetの位置を同期します。
setting widgetでDockの表示位置を変更できます。
Dockに表示されているアイコンをクリックすることで、widgetの表示/非表示を切り替える事ができます。
Greasemonkeyのメニューからユーザスクリプトコマンドを実行し、USWMの設定をリセットできます。
拡張の方向性
内部的にイベント処理を独立させています。settingにイベントを選択する機能をつける方向性が考えられます。たとえば、widgetを閉じる時にDockにしまうようなアニメーションを追加してしまうとか...。
同期処理のON/OFF切替機能を追加した方が良いかもしれません。同期処理は比較的重い処理になってしまったらしく、ブラウザのメモリ使用量が跳ね上がる場合がありました。
あとがき
正直、完成までの道のりは当初考えていたより非常に困難なものでした。
今はフルマラソンを走りきった気持ちです。
「できた!!」というよりも「終わった!!」という開放感の方が強いですね。
8割完成してからが非常に辛かったです。
2008/06/07:追記
Hello Worldを例にしたwidgetの書き方を書きました。

トラックバック

このエントリーのトラックバックURL:
http://www.kanasansoft.com/cgi/mt/mt-tb.cgi/134

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

Google