「キャッシュを消す」メニューを追加する (Firefox 34, HTTP cache v2).uc.xul

clear-cache-v2

動作確認

2014年8月ぐらいにHTTP cache v1 API disabledとなってたようで、以前書いたキャッシュを消すスクリプトだとFirefox 32以降の HTTP cache v2 API (cache2フォルダに保存されてるやつ)に対応できてなかったので作り直しました。

.uc.jsじゃなくて.uc.xulになってますが document.createElement(‘menuitem’) とか書いてるのが面倒臭くなっただけです。

基本機能はツールメニューに「キャッシュを消去」を追加するだけです。

Firefox ESR 31でもabout:configでHTTP cache v2を使うようにすればいけます。

ダウンロード : clear-all-cache-v2.uc.xul
GitHub : clear-all-cache-v2.uc.xul

<script type="application/x-javascript"><![CDATA[
var ucjsCacheClear = function() {
    var cacheSS = Cc["@mozilla.org/netwerk/cache-storage-service;1"].getService(Ci.nsICacheStorageService);
    try {
        cacheSS.clear();
    } catch (e) {
    }
    // Vimperator
    var liberator = document.getElementById("liberator-message");
    if (liberator) {
        liberator.value = 'キャッシュ消去';
    }
}
]]></script>
<menupopup id="menu_ToolsPopup">
    <menuitem id="menu_ToolsCacheClear"
              label="キャッシュを消去"
              accesskey="c"
              oncommand="ucjsCacheClear()"/>
</menupopup>

コメントを残す

メールアドレスが公開されることはありません。