basyura's blog

あしたになったらほんきだす。

Firefox でピン留めされたタブの判定

ピン留めれたタブは「×」(閉じるボタン)が出ないから "簡単には" 閉じられないって理解でいいんだろうか。
「閉じたくない」「ブラウザを起動するときには表示してほしい」からピン留めするんだろうけど、keysnail でガシガシ閉じちゃうので勢い余ってピン留めされたタブまで閉じてしまう。
ちらっと JSReference で検索したら「ピン留めされているかどうか」の判定があっさり見つかったので追加してみた。

pinned Requires Gecko 2.0
Type: boolean
This attribute is set to true if the tab has been pinned (that is, if it's an app tab). The tabbrowser element's pinTab and unpinTab methods handle pinning and unpinning tabs.

pinned

_keysnail.js

key.setGlobalKey('C-w', function (ev) {
    setTimeout(function () {
        var tab = getBrowser().selectedTab;
        if (!tab.pinned) {
          getBrowser().removeTab(tab);
        }
      } , 100);
  }, 'タブ / ウィンドウを閉じる');

なぜ setTimeout を使っているのかが思い出せない・・・・。確か、Firefox がフリーズするからクッションを入れたんだったと思う。Firefox 2 か 3 の時に入れたものなので今はもういらないのかも。

ピン留めしたいのが「Remember The Milk」

メモリと CPU 使用量のトラウマでタブを何個も開いてるのが嫌で嫌で仕方がなく、用がすんだら「C-w」でスパスパと消していく。「C-w」を連打したその先に Remember The Milk が現れ、タスクを思い出すことができるというライフハックを思いついたのであった。