Mac上で火狐のタブセッションの終了時保存と起動時読み込みが出来ない

地味に意味が分からなかった問題なのでメモ
そうだよ。必要に迫られてMac買ったよ。操作性違いすぎて操作しにくいよ
特にUI周り。

さて問題のポイント

・火狐でおなじみのタブセッション起動時保存&終了時保存をしたい
・まずは火狐を開いて、適当なタブを開いておく
左側の終了ボタンで火狐を終了する
・そして起動。出てきた火狐はさっきのセッションを読んでいない
・セッションマネージャーがあるなら、みてみると分かるがそもそもセッションは作られていない

で、こんな内容を見つけた
http://forum.mozilla.gr.jp/cbbs.cgi?mode=al2&namber=40118&rev=&&KLOG=254

Mac では、ウィンドウ左上の赤いボタンでFirefoxを閉じた際に、Firefox が完全には終了せず、プロセスが残る仕様になっているようです。

動きみてるとまるっきりそうなんだが、MSの回し者としてはどーしてもメニューバーの閉じるボタンはプロセスの終了だと洗脳されているのだ。うん
あれだな。もう少しこの文を書くのが早かったら強 い ら れ て い る ん だ !!なんてドヤ顔で書けた

セッションヒストリーを保持しているプロファイルフォルダに有るsessionstore.js を観察してみると問題の状況がわかるのですが、session はプロセスが完全に終了する際(三角マークが消える際)に保存されるようです。そうすると、次の様な状況が発生します。

1.) 赤いボタンを押してウィンドウを閉じた後、三角マークの有る状態のまま、もういちどDockのFirefoxアイコンをクリックしてFirefoxを表示する(プロセスが残っているので起動ではない)と、Firefoxを起動したわけではないので、保存されているセッションが再現しません。

2.) 赤いボタンを押してウィンドウを閉じた後、DockからFirefox の終了を選択してプロセスを終了させると、プロセスを終了した時点では既にウィンドウは消えているので、空のセッション(タブは一つも無い)という情報が保存されてしまい、次回Firefox起動時には、タブの一つも無い真っ白なウィンドウが表示されてしまいます。

つまりだ
基本的に左上の閉じるボタンは使うものじゃないってこと
おとなしくバーから終了を選択するかCommand+qのショトカ使えと。

やーこのCommandって一が押しにくいんですが...