Secure Login Rebooted
作った。
リポジトリは Github に置いてある。
Fork 版とも異なりフルスクラッチ。
とりあえず現状では最低限のログイン機能は動く。
内部的には、UI側のコードとページコンテンツのDOMにさわるコードを別にしている。e10s は凍結になったけれども、そっちの方が色々と安全だろうという結論。今のところは nsIObserver でやりとりしてる。
また、gBrowser.addTabsProgressListener()
を使うことで、各タブの読み込み時に、それぞれ独立してログイン情報の探索を行うようにしている。本家および Fork 版では、nsIWebProgressListener を使っているので、「現在選択しているタブ」が変わるごとにログイン情報を再探索するのだけど、それに対して Rebooted の実装では、探索回数が減るという利点がある。WeakMap に