Jun 19, 2007

分割ブラウザでフォームの内容とスクロール位置を保持するようにした件

分割ブラウザで、分割した領域を移動したりFirefoxを起動・終了したりした時にフォームの入力内容が失われるのが地味に不便、っていうかそこまで含めて完璧に再現するFx 2デフォルトのセッション復元機能がよくできてるっていう話なんだけど、とにかく、その処理を参考にして分割ブラウザ内のフォームの入力内容やスクロール位置も保存・復元できるようにしてみた。

nsSessionStore.jsではユーザの入力を常時監視してるんだけど、これはクラッシュからの復帰のためのもので、分割ブラウザでは起動時と終了時と分割領域を移動する時にしか情報を保存しないから、そこだけ手抜きしてる。

一カ所、フォームの内容を取得できなくてそこでハマッてしまった。XPCNativeWrapperでラッピングされたHTMLの要素ノードは、valueプロパティを参照しても入力内容を返してくれないのか……知らんかったよ。仕方がないのでちょっと怖いけどwrappedJSObjectを参照するようにしたところ、正常に動くようになった。

エントリを編集します。

wikieditish message: Ready to edit this entry.











拡張機能