「新秀の介の日記」でタブの分離機能に関するバグが取り上げられていた。Firefox 3.1 Beta 2で実装されたが、不具合も多かったこの機能。開発総責任者のMike Beltzner氏が、開発目標とそのための挙動を設定し、それを基にAsaf Romano氏が先日パッチを作成するに至った。なお、このパッチは現時点でレビュー前のものであり、今後内容は変更されうる。
まずは、開発目標についてみてみよう。
- タブバー内の並べ替えを邪魔しない
- ブックマークツールバーにタブをドロップしたときはブックマークを作成する
- input領域にタブをドロップしたときはURLをコピーする
- 偶然タブをドラッグしたことでタブが分離されることを防ぐ
これを実現すべく設定された挙動は、次のようなものだ。
- ツールバーにタブをドラッグしたときは分離しない
- タブバー内でタブをドラッグしたときは分離しない
- タブバーから50%以上ドラッグされたときにタブを分離する(コンテンツ領域あるいはウィンドウ外)
- input要素にタブをドラッグしたときは分離しない
実際のパッチでは、以下のようなタブの挙動になっている。
- テキストフィールドにドロップしたときは「ペースト」
- ブラウザウィンドウの外にドロップしたときは分離
- コンテンツ領域にドロップしたときは分離
- Firefox 3でURLを処理していたchrome要素にドロップしたときはFirefox 3と同じ挙動
- タブバーにドロップしたときはFirefox 3と同じ挙動
- ブラウザのchromeで他の部分にドロップしたときは何もしない
このパッチで不具合の大半は解消される見通しだ。ただ、タブの移動中に画面のサムネイルが表示されるが、その改善は今後の課題となる。Safariの長所を取り入れ、サムネイルを適切に変化させることで、ドロップ後の挙動をユーザーに知らせるようにすることが検討されている。
一つ問題なのは、このパッチがどの時点で投入されるのか不明なこと。"blocking-firefox3.1+"のフラグがついているので、Firefox 3.1 Beta 3かRC1のどちらかには必ず入るのだが、RC1になってしまうとアドオンの開発に影響が出そうだ。Beta 3のコードフリーズを1月25日(米国時間)に控えており、これに間に合わせるべくパッチが提出されたとみるべきか。
(09/01/20追記)「新秀の介の日記」経由の追加情報。Beltzner氏がBeta 3にパッチを投入すると決断した。