「userChrome.js」カテゴリーアーカイブ

Firefox 31で移動できないボタン(進む・戻る・リロード)をブックマークボタンの左に持ってくるだけ.uc.js

fx31

Firefox 31でもこの配置にしたかっただけなんや……。
テーマによってはロケーションバーと進む・戻るが一体化してるようなのがあるのでuserChrome.cssなんかで修正が必要かもしれません。
リロードボタンもたぶんズレます。

ダウンロード: move_back_and_forward_button.uc.js

// ==UserScript==
// @name           Move back & forward button
// @description    進む・戻る・リロードボタンをブックマークボタンの左に持ってくるだけ
// @version        1.0
// @author         oflow
// @compatibility  Firefox 31
// @namespace      http://oflow.me/archives/1216
// ==/UserScript==

(function() {
    Components.utils.import('resource:///modules/CustomizableUI.jsm');
    var id = 'bookmarks-menu-button',
        buttonIds = ['back-button', 'forward-button', 'urlbar-reload-button', 'urlbar-stop-button'];

    // ブックマークボタンをナビゲーションバーの先頭に移動させとく
    var ids = CustomizableUI.getWidgetIdsInArea(CustomizableUI.AREA_NAVBAR);
    if (ids.indexOf(id) == -1) {
        CustomizableUI.addWidgetToArea(id, CustomizableUI.AREA_NAVBAR, -1);
    }

    var before = document.getElementById(id);
    buttonIds.forEach(function(buttonId) {
        var button = document.getElementById(buttonId);
        before.parentNode.insertBefore(button, before);
    });
})();

Firefoxのキャッシュを1発で消す.uc.js

ucjs_clear_cache

キャッシュを削除してどうのこうのって殆ど使わないんだけど「最近の履歴を消去」から「キャッシュ」にチェック入れて消すってのが面倒臭すぎるのでツールメニューに追加することにした。

キャッシュのクリアは

0: STORE_ANYWHERE (すべて)
1: STORE_IN_MEMORY (メモリキャッシュ)
2: STORE_ON_DISK (ディスクキャッシュ)
3: STORE_ON_DISK_AS_FILE (今は使われてない)
4: STORE_OFFLINE (オフラインキャッシュ)

のどれか指定(nsICache | MDN)。やっぱり面倒臭いので全て削除にしている。

ダウンロード: clear_all_cache.uc.js

(function() {
    if (document.getElementById('menu_ClearStoreAnywhere')) return;
    var menuitem = document.createElement('menuitem');
    menuitem.setAttribute('id', 'menu_ClearStoreAnywhere');
    menuitem.setAttribute('label', 'u30adu30e3u30c3u30b7u30e5u3092u6d88u53bb');
    menuitem.addEventListener('command', function() {
        var cs = Cc["@mozilla.org/network/cache-service;1"].getService(Ci.nsICacheService);
        cs.evictEntries(Ci.nsICache.STORE_ANYWHERE);
    }, false);
    var menuTools = document.getElementById('menu_ToolsPopup');
    if (!menuTools) return;
    menuTools.appendChild(menuitem);
})();