Полезная информация

Mozilla Россия — свежие версии программ Mozilla, а также масса полезной информации по каждому продукту.

№830122-04-2020 15:47:31

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 76.0

Re: Настройка внешнего вида Firefox в userChrome.css

egorsemenov06
то что обещал в custom_script.js

скрытый текст

Выделить код

Код:

try {
    ((img, preventClearThumbs) => {
        CustomizableUI.createWidget({
            id: "bt-clear-history",
            label: "Очистить историю",
            tooltiptext: "Очистить историю",
            defaultArea: CustomizableUI.AREA_NAVBAR,
            onCreated: function(bt) {
                bt.image = img;
            },
            onCommand: function(event) {
                var win = event.target.ownerDocument.defaultView;
                (preventClearThumbs || (g => {
                    var key = "onClearHistory", obs = g.PageThumbsHistoryObserver, func = obs[key];
                    return preventClearThumbs = () => obs[key] = () => obs[key] = func;
                })(Cu.import("resource://gre/modules/PageThumbs.jsm", {})))();
                win.PlacesUtils.history.clear();
                var closedTabCount = win.SessionStore.getClosedTabCount(win);
                while(closedTabCount--)
                    win.SessionStore.forgetClosedTab(win, 0);
                var alertsService = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService);
                alertsService.showAlertNotification(img, "История Очищена!", "", false);
                win.setTimeout(()=> alertsService.closeAlert(), 2000);
            }
        });
    })("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH5AQWDCgXFmePvgAABJ1JREFUWMO9l2tsFFUUx/93ZnZnd7ul2+2bR2VBEAVEUhoowSp+KMQIRatBxQgRDMEEjB8wJlUJ8YOPGDFqRECi1apAgNgIvvAByqNiG4iGSKGmtrvSdvva9+zO3HuPHxRTEdrShT3fJnPPPb/5z5z/PcMwKF6smI0qX2kFmFIKTdlfVrfPwnUOZfCFT0oYnV2bkn5/nQhH7296YCkyCtAa7EX/QOhbYSR0Ho3WEonsokwCfBjogiFFgySERSw6TSaNh79aXs0yBtBiCbSlrHYBaiYpVRGPP2mZpitjAADw0vmOVK/JtwGQIhGfKi2z+qcVSzIHEJKEhOCHLKJWklLl8fgaZnA9YwAAcDQcC5uSDgIgmTQWgKjyWM3izAHsDPTIoGnWEZAibtl4JLzRDlXPGAAACKKzppSNACCMxJ3SNOcfqKrKHMCh7pBpCPkRAEmWZROJ+MZxuU4bAByruQc/r7gPjcvTN6ohe/z1m0oLZmVnnVYZG8ts9ojNmz/H5nZ3E8kKknItQDuhaZ+Xf9JA11wBALAE60tK2guAyLLGAPQuTxonUt1dB5L+9nutgYHt4PzGIzU1uC4AC+fMYuR0HgbAAYLV012ZuhC4RcRjGgkBHgmP5bHYNrdquq8pwKlHaljTg0tnQND2XJdrBxizAQBJCdAgtYnAY6HK7HLnempZr40G4LJJPBIt4injGA+HxpAQV/p6CMWucO6yIjb+NnqeYPZR+7odysStRJSmAqELfm7298krFrcrXF9c0jv1qQnOaWUsx6EZDlj9r1ASS3n746yw0J4eAJcyKYn+vGxGvh4pWOeL3lqdlV+YZ+nKxT6SRg74wPssqVZ3nVjJtjxTkYYCBBOM/ReAManM8oR9G0q1KTORq9vk/1tYxDywBurB1U0bHivzWL9uwLzpnqv3gbWlRWx5Sf6bqlNbxbJUheXayT3XG/aV2Qqy3UIbdkBgNgmbt4Up+nMgHBLCiFStOojvTgZHbkQHX164aPpMzx6HEzaXk+wOh1A1ha7O4xSdQ/OcZ4q9nqDtYiR71236JvLOrrPDAzTvvj3r5knZPzp0ZXb6fmsHFD0hmb7vt99Dj85c8unwRvRDU0/CSIq9AGTaAGQCIursDASOnmxuHflZcLx+/sTyGbnNqsK86TKYljx36mx4waI1x3siBo3Mik1L+uMJvj9tAQipji7jha27W3sHFwcAdajE7v4klc/wdhZ47Q8xxvRRFuddPcnXPv4i8PaWDzr4pfeHBGjtSGDiOEdwSqnb43Zp84Z7Zf/agaSYEAgJSZGe/tR7dQ3+zbVvnDOueh64GHtenV10d2Vxg8uhzh3JektoF84HUHumpb2p8fRA25b6P+JXWquOZEN/ZzTuG+8+PqHYeZemsvzLgJMkMhlj/xxukgupfK/q3i9XP3vCHGrvEQEEghYaTwd7fePdh0sKnZPsGhsHMPb3nADOGNTOPuzjnHfE4ryp+Uzo6Sc2N332Vv0vIp6k0Y9kl4av2IY7yvNyVi67YU5JgXNyypQxLqWVl2OfTMx1bnXtka+lJNnmTxntQYtwnYMNeoBR/z/+Bdn0Q21KgEksAAAAAElFTkSuQmCC", null);
} catch(e) {}

egorsemenov06 пишет

Открыть в другом брузере

async_run_applications https://github.com/VitaliyVstyle/Vitali … xperiments
запуск приложений с аргументами, если нужно открыть текущую страницу
в аргументы добавляем %OpenCurrentURI
если ссылку из буфера то %OpenClipboardURI
ну и любые другие аргументы для конкретного приложения можно использовать

Отсутствует

 

№830222-04-2020 17:50:20

egorsemenov06
Участник
 
Группа: Members
Зарегистрирован: 12-06-2018
Сообщений: 246
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет

egorsemenov06

egorsemenov06 пишет

Открыть в другом брузере

async_run_applications https://github.com/VitaliyVstyle/Vitali … xperiments
запуск приложений с аргументами, если нужно открыть текущую страницу
в аргументы добавляем %OpenCurrentURI
если ссылку из буфера то %OpenClipboardURI
ну и любые другие аргументы для конкретного приложения можно использовать

Спасибо большое!!!
И еще вопрос можно?Как прикрутить иконки к приложениям в async_run_applications

Отредактировано egorsemenov06 (22-04-2020 19:19:08)

Отсутствует

 

№830323-04-2020 14:22:24

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 76.0

Re: Настройка внешнего вида Firefox в userChrome.css

egorsemenov06 пишет

Как прикрутить иконки к приложениям в async_run_applications

Разве что стилем, в расширении это не предусмотрено, то как сделано в вашей кнопке
подходит только для [windows]...

скрытый текст

Выделить код

Код:

#u-external-application menuitem::before {
    width: 16px !important;
    height: 16px !important;
    display: -moz-box !important;
    margin-inline-start: 5px !important;/* отступ слева для иконок, для linux 0px */
    margin-inline-end: -21px !important;/* для linux -16px */
    position: relative !important;
    background-color: transparent !important;
    background-position: center !important;
    background-size: 16px !important;
    background-repeat: no-repeat !important;
}
/* далее пример */

#u-external-application menuitem[label="Открыть в Firefox"]::before {
    content: "" !important;
    background-image: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' height='16' width='16' viewBox='0 0 48 48'><g><path d='M 2.438,0 C 1.087,0 0,1.088 0,2.438 V 45.56 C 0,46.91 1.087,48 2.438,48 H 45.56 C 46.91,48 48,46.91 48,45.56 V 2.438 C 48,1.088 46.91,0 45.56,0 Z' style='fill:rgb(146,69,101);fill-opacity:1;' /><path style='opacity:0.25;fill:rgb(0,0,0);' d='M 24,3 11.1,45 14.1,48 H 45.58 C 46.93,48 48,46.9 48,45.53 V 22.2 L 45,19.2 39,18 Z'/><path style='fill:rgb(255,255,255);' d='M 45,19.05 C 45.09,19.34 36.05,30.02 35.96,30.3 35.86,30.57 37.21,44.81 36.97,45 36.76,45.15 24.28,39.43 24,39.43 23.73,39.43 11.25,45.16 11.03,45 10.79,44.81 12.11,30.57 12.02,30.3 11.94,30.02 2.911,19.34 3.001,19.05 3.087,18.77 16.37,15.69 16.6,15.53 16.82,15.35 23.72,3 24,3 24.28,3 31.18,15.35 31.4,15.53 31.63,15.69 44.88,18.75 45,19.05' /></g></svg>") !important;
}

верхнее правило повторять не надо, только пример изменяя [label="Открыть в Firefox"]
и иконку

Отредактировано Vitaliy V. (23-04-2020 14:25:45)

Отсутствует

 

№830423-04-2020 15:15:18

egorsemenov06
Участник
 
Группа: Members
Зарегистрирован: 12-06-2018
Сообщений: 246
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет
egorsemenov06 пишет

Как прикрутить иконки к приложениям в async_run_applications

Разве что стилем, в расширении это не предусмотрено, то как сделано в вашей кнопке
подходит только для [windows]...

скрытый текст

Выделить код

Код:

#u-external-application menuitem::before {
    width: 16px !important;
    height: 16px !important;
    display: -moz-box !important;
    margin-inline-start: 5px !important;/* отступ слева для иконок, для linux 0px */
    margin-inline-end: -21px !important;/* для linux -16px */
    position: relative !important;
    background-color: transparent !important;
    background-position: center !important;
    background-size: 16px !important;
    background-repeat: no-repeat !important;
}
/* далее пример */

#u-external-application menuitem[label="Открыть в Firefox"]::before {
    content: "" !important;
    background-image: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' height='16' width='16' viewBox='0 0 48 48'><g><path d='M 2.438,0 C 1.087,0 0,1.088 0,2.438 V 45.56 C 0,46.91 1.087,48 2.438,48 H 45.56 C 46.91,48 48,46.91 48,45.56 V 2.438 C 48,1.088 46.91,0 45.56,0 Z' style='fill:rgb(146,69,101);fill-opacity:1;' /><path style='opacity:0.25;fill:rgb(0,0,0);' d='M 24,3 11.1,45 14.1,48 H 45.58 C 46.93,48 48,46.9 48,45.53 V 22.2 L 45,19.2 39,18 Z'/><path style='fill:rgb(255,255,255);' d='M 45,19.05 C 45.09,19.34 36.05,30.02 35.96,30.3 35.86,30.57 37.21,44.81 36.97,45 36.76,45.15 24.28,39.43 24,39.43 23.73,39.43 11.25,45.16 11.03,45 10.79,44.81 12.11,30.57 12.02,30.3 11.94,30.02 2.911,19.34 3.001,19.05 3.087,18.77 16.37,15.69 16.6,15.53 16.82,15.35 23.72,3 24,3 24.28,3 31.18,15.35 31.4,15.53 31.63,15.69 44.88,18.75 45,19.05' /></g></svg>") !important;
}

верхнее правило повторять не надо, только пример изменяя [label="Открыть в Firefox"]
и иконку

я сделал вот так .в файле parent.js дописал две строчки

скрытый текст

Выделить код

Код:

readFile.application_strings.forEach((item) => {
            let menuItem = doc.createElementNS(ns_xul, "menuitem");
            menuItem.setAttribute("label", item[0]);
	    menuItem.setAttribute("class","menuitem-iconic");
	    menuItem.setAttribute("image","moz-icon://file://"+item[1]);
            menuItem.application = item[1];
            menuItem.argum = item[2];
            menuItem.addEventListener("command", async_run_applications.runExternalApplication, false);
            aMenu.insertBefore(menuItem, sep);
        });
    },

Спасибо что не оставили без ответа
я знаю что Вас уже достал со своими просьбами но можно Вас попросить пожалуйста переделать для user_chrome_files кусок кода из кнопки Прокси
добавление прокси в контекстном меню

скрытый текст

Выделить код

Код:

// Создаем меню для добавление прокси в контекстном меню выделенного текста на странице ...................
var contextMenu = document.getElementById("contentAreaContextMenu");
var menuitem = document.createElementNS(xulns,"menuitem");
menuitem.setAttribute("label", "Добавить прокси");
menuitem.setAttribute("class", "menuitem-iconic");
menuitem.setAttribute("image", self.image);
menuitem.onclick =()=> addNewProxy(menuitem);
contextMenu.appendChild(menuitem); // как последний пункт меню
addDestructor(() => menuitem.remove());
addEventListener("popupshowing", () => {
    menuitem.hidden = !cbu.getPrefs("CB.Proxy.inContextMenu") || !gContextMenu.isContentSelected; // !gContextMenu.isTextSelected;
}, false, contextMenu);


// добавление прокси ...................
function addNewProxy(menuitem) {
    var sel = gBrowser.contentDocument
        ? gBrowser.contentDocument.defaultView.getSelection().toString() // Pale Moon  
        : gContextMenu.selectionInfo.fullText; // Firefox

    sel = sel.replace(/^\s+|\s+$/g, ""); // удалить пробелы, слева и справа от строки
    sel = sel.replace(/\s+/g, ":");      // заменить пробелы внутри строки

    // если только порт ...
    if (sel.length < 6 && isFinite(sel)) { 
        var lab = 'порт';
        cbu.setPrefs("network.proxy.http_port", +sel);                    
    }

    // если только адрес ...
    if (sel.length > 5 && !/:/.test(sel) && sel.split(".").length == 4) {
        var lab = 'адрес';
        cbu.setPrefs("network.proxy.http", convertFromUnicode("UTF-8", sel));  
    }

    // если адрес и порт ...    
    if (sel.length > 5 && /:/.test(sel) && sel.split(":").length == 2 && sel.split(".").length == 4) {
        var lab = 'адрес и порт';
        var arr = sel.split(":"), IP = arr[0], port = arr[1];
        cbu.setPrefs("network.proxy.http_port", +port);
        cbu.setPrefs("network.proxy.http", convertFromUnicode("UTF-8", IP));
    }

    // всплывающая подсказка рядом с выделенным текстом ...
    var mainPopupSet = document.getElementById('mainPopupSet');
    var tooltip = mainPopupSet.appendChild(document.createElementNS(xulns,"tooltip"));
    tooltip.style.cssText = "color: red !important; font-weight: bold !important; font-size: 14px !important; -moz-box-orient: horizontal; text-align: center;";

    var image = tooltip.appendChild(document.createElementNS(xulns, "image"));
    image.setAttribute("src", self.image);

    var label = tooltip.appendChild(document.createElementNS(xulns, "label"));
    label.setAttribute("value", "Установлен " + lab + " прокси: " + sel);

    tooltip.openPopup(menuitem.parentNode, "before_start");
    setTimeout(() => mainPopupSet.removeChild(tooltip), 3000);
};


// Конвертировать текст в юникод .............  
function convertFromUnicode(charset, str) {
    var converter = Cc["@mozilla.org/intl/scriptableunicodeconverter"].createInstance(Ci.nsIScriptableUnicodeConverter);
    converter.charset = charset;
    str = converter.ConvertFromUnicode(str);
    return str + converter.Finish();
}

Отредактировано egorsemenov06 (23-04-2020 17:03:48)

Отсутствует

 

№830523-04-2020 21:27:32

_zt
Участник
 
Группа: Members
Зарегистрирован: 10-11-2014
Сообщений: 872
UA: Firefox 68.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V.
А вы в свое расширение аргумент для открытия выделенного текста добавить можете? Что бы выделенный текст передавать во внешнюю программу.
   
А то с этим туго у расширений.
   
Есть несколько с установкой внешних модулей, например run-with, external-application и еще видел похожие.
Есть передача текста из редактируемых полей и даже с возвратом модифицированного текста textern. Что само по себе удивительно.
Есть передача ссылок или URL-а вкладки и таких расширений как грязи open in, open with.
   
А вот простой передачи выделенного текста с аргументами, без внешних модулей, не видел.

Отредактировано _zt (23-04-2020 21:29:35)


Fx 91 esr

Отсутствует

 

№830624-04-2020 00:34:02

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 76.0

Re: Настройка внешнего вида Firefox в userChrome.css

egorsemenov06 пишет

Прокси
добавление прокси в контекстном меню

скрытый текст

Выделить код

Код:

(this.contextproxy = {
            img: "data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' height='16' width='16' viewBox='0 0 48 48'><g><rect x='0' y='0' width='48' height='48' rx='3' ry='3' style='fill:rgb(209, 8, 3);'/><path style='opacity:0.25;fill:black;' d='M 16.8,17.6 23.1,23.9 8,26 6.4,32.2 11.4,37.2 3.7,44.8 6.9,48 45,48 C 46.7,48 48,46.7 48,45 V 20 L 31.4,3.4'/><path style='fill:white;' d='M 17.4,3 C 16.7,3 16.2,3.82 16.2,4.91 V 15.9 C 16.2,17 16.7,17.8 17.4,17.8 H 30.6 C 31.3,17.8 31.8,17 31.8,15.9 V 4.91 C 31.8,3.82 31.3,3 30.6,3 H 17.4 M 22.4,20.5 V 23.7 H 6.41 V 32.2 H 9.35 V 28.2 H 22.4 V 32.4 H 25.5 V 28.2 H 38.5 V 32.4 H 41.5 V 23.7 H 25.5 V 20.5 H 22.4 M 4.23,35.1 C 3.55,35.1 3,35.9 3,37.1 V 43 C 3,44.1 3.55,45 4.23,45 H 12.1 C 12.8,45 13.3,44.1 13.3,43 V 37.1 C 13.3,35.9 12.8,35.1 12.1,35.1 H 4.23 M 19.9,35.1 C 19.2,35.1 18.7,35.9 18.7,37.1 V 43 C 18.7,44.1 19.2,45 19.9,45 H 27.8 C 28.5,45 29,44.1 29,43 V 37.1 C 29,35.9 28.5,35.1 27.8,35.1 H 19.9 M 35.9,35.1 C 35.2,35.1 34.7,35.9 34.7,37.1 V 43 C 34.7,44.1 35.2,45 35.9,45 H 43.7 C 44.4,45 45,44.1 45,43 V 37.1 C 45,35.9 44.4,35.1 43.7,35.1 H 35.9' /></g></svg>",
            init(that) {
                var contextMenu = this.contextMenu = document.querySelector("#contentAreaContextMenu");
                if (!contextMenu)
                    return;
                contextMenu.addEventListener("popupshowing", this);
                that.unloadlisteners.push("contextproxy");
            },
            destructor() {
                this.contextMenu.removeEventListener("popupshowing", this);
                this.contextMenu.removeEventListener("popuphiding", this);
            },
            handleEvent(e) {
                if (e.target != this.contextMenu || !gContextMenu.isContentSelected) return;
                var menuitem = document.createXULElement("menuitem");
                menuitem.setAttribute("label", "Добавить прокси");
                menuitem.className = "menuitem-iconic";
                menuitem.setAttribute("image", this.img);
                menuitem.onclick = this.addNewProxy.bind(this);
                (this.contextMenu.querySelector("menuseparator#context-sep-selectall") || this.contextMenu.lastElementChild).after(menuitem);
                this.popupshowing = evt => {
                    if (evt.target != this.contextMenu) return;
                    menuitem.hidden = !gContextMenu.isContentSelected;
                };
                this.popuphiding = evt => {
                    if (evt.target != this.contextMenu) return;
                    menuitem.hidden = true;
                };
                this.contextMenu.addEventListener("popuphiding", this);
                this.handleEvent = e => {
                    this[e.type](e);
                };
            },
            addNewProxy(e) {
                var sel = gContextMenu.selectionInfo.fullText;
                sel = sel.trim().replace(/\s+/g, ":");
                var prefs = Services.prefs, lab;
                if (sel.length < 6 && isFinite(sel)) {
                    lab = "порт", sel = +sel;
                    prefs.setIntPref("network.proxy.http_port", sel);
                    prefs.setIntPref("network.proxy.ssl_port", sel);
                    prefs.setIntPref("network.proxy.ftp_port", sel);
                    prefs.setIntPref("network.proxy.socks_port", sel);
                } else if (sel.length > 5 && !(/:/.test(sel)) && sel.split(".").length == 4) {
                    lab = "адрес";
                    prefs.setStringPref("network.proxy.http", sel);
                    prefs.setStringPref("network.proxy.ssl", sel);
                    prefs.setStringPref("network.proxy.ftp", sel);
                    prefs.setStringPref("network.proxy.socks", sel);
                } else if (sel.length > 5 && /:/.test(sel) && sel.split(":").length == 2 && sel.split(".").length == 4) {
                    lab = "адрес и порт";
                    var arr = sel.split(":"), IP = arr[0], port = +arr[1];
                    prefs.setIntPref("network.proxy.http_port", port);
                    prefs.setStringPref("network.proxy.http", IP);
                    prefs.setIntPref("network.proxy.ssl_port", port);
                    prefs.setStringPref("network.proxy.ssl", IP);
                    prefs.setIntPref("network.proxy.ftp_port", port);
                    prefs.setStringPref("network.proxy.ftp", IP);
                    prefs.setIntPref("network.proxy.socks_port", port);
                    prefs.setStringPref("network.proxy.socks", IP);
                } else
                   return;
                if (prefs.getIntPref("network.proxy.type") != 1)
                   prefs.setIntPref("network.proxy.type", 1);
                var mainPopupSet = document.querySelector("#mainPopupSet");
                var tooltip = document.createXULElement("tooltip");
                tooltip.style.cssText = "font-size: 1.2em !important; -moz-box-orient: horizontal; text-align: center; pointer-events: none; -moz-box-align: center !important;";
                tooltip.label = " Установлен " + lab + " прокси: " + sel;
                var image = document.createXULElement("image");
                image.setAttribute("src", this.img);
                tooltip.firstElementChild.before(image);
                mainPopupSet.append(tooltip);
                tooltip.openPopup(e.target.parentNode, "before_start");
                setTimeout(() => tooltip.remove(), 3000);
            }
        }).init(this);

Отредактировано Vitaliy V. (03-06-2021 14:23:46)

Отсутствует

 

№830724-04-2020 01:16:13

egorsemenov06
Участник
 
Группа: Members
Зарегистрирован: 12-06-2018
Сообщений: 246
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V.
Огромнейшее СПАСИБО Вам!!!!!

Отсутствует

 

№830824-04-2020 02:54:26

_zt
Участник
 
Группа: Members
Зарегистрирован: 10-11-2014
Сообщений: 872
UA: Firefox 68.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V.
Для поисковика Everything. Если помните, вы мне делали биндинг, но 78 грядет и биндинг отвалится. Да и просто текст в блокнот отправлять можно было бы. Но главное поиск.


Fx 91 esr

Отсутствует

 

№830924-04-2020 20:05:27

egorsemenov06
Участник
 
Группа: Members
Зарегистрирован: 12-06-2018
Сообщений: 246
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. не подскажите что надо добавить из этой кнопки

скрытый текст

Выделить код

Код:

/*Initialization Code*/

// ====================================================================================
// Memory Monitor ................................
// https://forum.mozilla-russia.org/viewtopic.php?id=52237
// ====================================================================================
var idbut=this.id;
var urlbar = document.getElementById("page-action-buttons");
var button = document.getElementById(idbut);
urlbar.insertBefore(button, urlbar.lastChild);

var style = custombutton.buttonGetHelp(self).replace(/id/g, _id);
var uri = makeURI('data:text/css,'+ encodeURIComponent(style));
var sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService);
sss.loadAndRegisterSheet(uri, 0);     
 
// Подсказка кнопки ................................
this.tooltipText = "Л: Очистка Кеш";  

                  
// Настройка функций кликов мыши для кнопки ................................
this.onclick = function(e) {
     e.target.setAttribute("context", "event.stopPropagation()");      
     if ( e.button == 0) {
      
          // очистить кэш ....
          try {

              Services.cache.evictEntries(Ci.nsICache.STORE_ON_DISK);
              }
          catch(e) { Services.cache2.clear() }
    

          // Всплывающее сообщение ....
          var alertService = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService);
          alertService.showAlertNotification('chrome://global/skin/icons/cpd_OK.png', 'СООБЩЕНИЕ', 'Очистил кеш');
          setTimeout(function() { alertService.closeAlert() }, 2000);   
          }
         
};

         
// Показывать потребление памяти на текущей кнопке
(function () { 
   self.timer = setInterval(function() {
   var memory = getMemory();
   self.label = getMemory()
     
       if ( memory < 520 ) return;
  }, 200 );
 
// Получить всю занимаемую оперативную память в MB ....
   function getMemory() {           
      var reporterManager = Cc["@mozilla.org/memory-reporter-manager;1"].getService(Ci.nsIMemoryReporterManager);
      try {
          var e = reporterManager.enumerateReporters();
          while ( e.hasMoreElements() ) {
                  var mr = e.getNext().QueryInterface(Ci.nsIMemoryReporter);
                  self[mr.path] = mr;
                  }
          var memory = self["resident"].amount;
          }
      catch(e) { var memory = reporterManager.resident; } // FF26 - Nightly
     
      return ( Math.round( memory/1048576 ) );
   };     

// Стиль добавляет текст на кнопку ....
   var uri = makeURI('data:text/css,'+ encodeURIComponent('\
   %button% .toolbarbutton-icon {\
     display: none !important;\
   }\
   %button% .toolbarbutton-text {\
     display: -moz-box !important;\
   }\
   %button% {\
     -moz-box-orient: horizontal !important;\
   }\
   '.replace(/%button%/g, "#" + _id) ));
   const sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService);
   sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
   
// Удалять счётчик памяти и другие изменения ....
  addDestructor(function() {
      try { window.clearTimeout( self.timer ) } catch(e) {};
   });
})();


в эту
скрытый текст

Выделить код

Код:

try {
    ((img, preventClearThumbs) => {
        CustomizableUI.createWidget({
            id: "bt-clear-history",
            label: "Очистить историю",
            tooltiptext: "Очистить историю",
            defaultArea: CustomizableUI.AREA_NAVBAR,
            onCreated: function(bt) {
                bt.image = img;
            },
            onCommand: function(event) {
                var win = event.target.ownerDocument.defaultView;
                (preventClearThumbs || (g => {
                    var key = "onClearHistory", obs = g.PageThumbsHistoryObserver, func = obs[key];
                    return preventClearThumbs = () => obs[key] = () => obs[key] = func;
                })(Cu.import("resource://gre/modules/PageThumbs.jsm", {})))();
                win.PlacesUtils.history.clear();
                var closedTabCount = win.SessionStore.getClosedTabCount(win);
                while(closedTabCount--)
                    win.SessionStore.forgetClosedTab(win, 0);
                var alertsService = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService);
                alertsService.showAlertNotification(img, "История Очищена!", "", false);
                win.setTimeout(()=> alertsService.closeAlert(), 2000);
            }
        });
    })("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH5AQWDCgXFmePvgAABJ1JREFUWMO9l2tsFFUUx/93ZnZnd7ul2+2bR2VBEAVEUhoowSp+KMQIRatBxQgRDMEEjB8wJlUJ8YOPGDFqRECi1apAgNgIvvAByqNiG4iGSKGmtrvSdvva9+zO3HuPHxRTEdrShT3fJnPPPb/5z5z/PcMwKF6smI0qX2kFmFIKTdlfVrfPwnUOZfCFT0oYnV2bkn5/nQhH7296YCkyCtAa7EX/QOhbYSR0Ho3WEonsokwCfBjogiFFgySERSw6TSaNh79aXs0yBtBiCbSlrHYBaiYpVRGPP2mZpitjAADw0vmOVK/JtwGQIhGfKi2z+qcVSzIHEJKEhOCHLKJWklLl8fgaZnA9YwAAcDQcC5uSDgIgmTQWgKjyWM3izAHsDPTIoGnWEZAibtl4JLzRDlXPGAAACKKzppSNACCMxJ3SNOcfqKrKHMCh7pBpCPkRAEmWZROJ+MZxuU4bAByruQc/r7gPjcvTN6ohe/z1m0oLZmVnnVYZG8ts9ojNmz/H5nZ3E8kKknItQDuhaZ+Xf9JA11wBALAE60tK2guAyLLGAPQuTxonUt1dB5L+9nutgYHt4PzGIzU1uC4AC+fMYuR0HgbAAYLV012ZuhC4RcRjGgkBHgmP5bHYNrdquq8pwKlHaljTg0tnQND2XJdrBxizAQBJCdAgtYnAY6HK7HLnempZr40G4LJJPBIt4injGA+HxpAQV/p6CMWucO6yIjb+NnqeYPZR+7odysStRJSmAqELfm7298krFrcrXF9c0jv1qQnOaWUsx6EZDlj9r1ASS3n746yw0J4eAJcyKYn+vGxGvh4pWOeL3lqdlV+YZ+nKxT6SRg74wPssqVZ3nVjJtjxTkYYCBBOM/ReAManM8oR9G0q1KTORq9vk/1tYxDywBurB1U0bHivzWL9uwLzpnqv3gbWlRWx5Sf6bqlNbxbJUheXayT3XG/aV2Qqy3UIbdkBgNgmbt4Up+nMgHBLCiFStOojvTgZHbkQHX164aPpMzx6HEzaXk+wOh1A1ha7O4xSdQ/OcZ4q9nqDtYiR71236JvLOrrPDAzTvvj3r5knZPzp0ZXb6fmsHFD0hmb7vt99Dj85c8unwRvRDU0/CSIq9AGTaAGQCIursDASOnmxuHflZcLx+/sTyGbnNqsK86TKYljx36mx4waI1x3siBo3Mik1L+uMJvj9tAQipji7jha27W3sHFwcAdajE7v4klc/wdhZ47Q8xxvRRFuddPcnXPv4i8PaWDzr4pfeHBGjtSGDiOEdwSqnb43Zp84Z7Zf/agaSYEAgJSZGe/tR7dQ3+zbVvnDOueh64GHtenV10d2Vxg8uhzh3JektoF84HUHumpb2p8fRA25b6P+JXWquOZEN/ZzTuG+8+PqHYeZemsvzLgJMkMhlj/xxukgupfK/q3i9XP3vCHGrvEQEEghYaTwd7fePdh0sKnZPsGhsHMPb3nADOGNTOPuzjnHfE4ryp+Uzo6Sc2N332Vv0vIp6k0Y9kl4av2IY7yvNyVi67YU5JgXNyypQxLqWVl2OfTMx1bnXtka+lJNnmTxntQYtwnYMNeoBR/z/+Bdn0Q21KgEksAAAAAElFTkSuQmCC", null);
} catch(e) {}


чтобы чистился еще и кеш

Отсутствует

 

№831024-04-2020 21:09:05

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 76.0

Re: Настройка внешнего вида Firefox в userChrome.css

egorsemenov06
ну там вроде как комментарий есть // очистить кэш ....

или вот так вдруг ещё чего надумаете чистить

скрытый текст

Выделить код

Код:

var itemsToClear = [
        "cookies",
        "history",
        "formdata",
        "sessions",
        "cache",
        "downloads",
        "offlineApps",
        "pluginData",
        "siteSettings",
];
var range = win.Sanitizer.getClearRange(4);
win.Sanitizer.sanitize(itemsToClear, {
        ignoreTimespan: !range,
        range,
});


удалите что не нужно из массива
и 4 замените на
0 - всё
1 - за час
2 - за 2часа
3 - за 4 часа
4 - за сегодня

Отредактировано Vitaliy V. (24-04-2020 21:37:54)

Отсутствует

 

№831124-04-2020 22:33:13

egorsemenov06
Участник
 
Группа: Members
Зарегистрирован: 12-06-2018
Сообщений: 246
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет

egorsemenov06
ну там вроде как комментарий есть // очистить кэш ....

Я наверно не так  спросил .можно ли в кнопку что Вы сделали добавить очистку кеша

скрытый текст

Выделить код

Код:

try {
    ((img, preventClearThumbs) => {
        CustomizableUI.createWidget({
            id: "bt-clear-history",
            label: "Очистить историю",
            tooltiptext: "Очистить историю",
            defaultArea: CustomizableUI.AREA_NAVBAR,
            onCreated: function(bt) {
                bt.image = img;
            },
            onCommand: function(event) {
                var win = event.target.ownerDocument.defaultView;
                (preventClearThumbs || (g => {
                    var key = "onClearHistory", obs = g.PageThumbsHistoryObserver, func = obs[key];
                    return preventClearThumbs = () => obs[key] = () => obs[key] = func;
                })(Cu.import("resource://gre/modules/PageThumbs.jsm", {})))();
                win.PlacesUtils.history.clear();
                var closedTabCount = win.SessionStore.getClosedTabCount(win);
                while(closedTabCount--)
                    win.SessionStore.forgetClosedTab(win, 0);
                var alertsService = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService);
                alertsService.showAlertNotification(img, "История Очищена!", "", false);
                win.setTimeout(()=> alertsService.closeAlert(), 2000);
            }
        });
    })("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH5AQWDCgXFmePvgAABJ1JREFUWMO9l2tsFFUUx/93ZnZnd7ul2+2bR2VBEAVEUhoowSp+KMQIRatBxQgRDMEEjB8wJlUJ8YOPGDFqRECi1apAgNgIvvAByqNiG4iGSKGmtrvSdvva9+zO3HuPHxRTEdrShT3fJnPPPb/5z5z/PcMwKF6smI0qX2kFmFIKTdlfVrfPwnUOZfCFT0oYnV2bkn5/nQhH7296YCkyCtAa7EX/QOhbYSR0Ho3WEonsokwCfBjogiFFgySERSw6TSaNh79aXs0yBtBiCbSlrHYBaiYpVRGPP2mZpitjAADw0vmOVK/JtwGQIhGfKi2z+qcVSzIHEJKEhOCHLKJWklLl8fgaZnA9YwAAcDQcC5uSDgIgmTQWgKjyWM3izAHsDPTIoGnWEZAibtl4JLzRDlXPGAAACKKzppSNACCMxJ3SNOcfqKrKHMCh7pBpCPkRAEmWZROJ+MZxuU4bAByruQc/r7gPjcvTN6ohe/z1m0oLZmVnnVYZG8ts9ojNmz/H5nZ3E8kKknItQDuhaZ+Xf9JA11wBALAE60tK2guAyLLGAPQuTxonUt1dB5L+9nutgYHt4PzGIzU1uC4AC+fMYuR0HgbAAYLV012ZuhC4RcRjGgkBHgmP5bHYNrdquq8pwKlHaljTg0tnQND2XJdrBxizAQBJCdAgtYnAY6HK7HLnempZr40G4LJJPBIt4injGA+HxpAQV/p6CMWucO6yIjb+NnqeYPZR+7odysStRJSmAqELfm7298krFrcrXF9c0jv1qQnOaWUsx6EZDlj9r1ASS3n746yw0J4eAJcyKYn+vGxGvh4pWOeL3lqdlV+YZ+nKxT6SRg74wPssqVZ3nVjJtjxTkYYCBBOM/ReAManM8oR9G0q1KTORq9vk/1tYxDywBurB1U0bHivzWL9uwLzpnqv3gbWlRWx5Sf6bqlNbxbJUheXayT3XG/aV2Qqy3UIbdkBgNgmbt4Up+nMgHBLCiFStOojvTgZHbkQHX164aPpMzx6HEzaXk+wOh1A1ha7O4xSdQ/OcZ4q9nqDtYiR71236JvLOrrPDAzTvvj3r5knZPzp0ZXb6fmsHFD0hmb7vt99Dj85c8unwRvRDU0/CSIq9AGTaAGQCIursDASOnmxuHflZcLx+/sTyGbnNqsK86TKYljx36mx4waI1x3siBo3Mik1L+uMJvj9tAQipji7jha27W3sHFwcAdajE7v4klc/wdhZ47Q8xxvRRFuddPcnXPv4i8PaWDzr4pfeHBGjtSGDiOEdwSqnb43Zp84Z7Zf/agaSYEAgJSZGe/tR7dQ3+zbVvnDOueh64GHtenV10d2Vxg8uhzh3JektoF84HUHumpb2p8fRA25b6P+JXWquOZEN/ZzTuG+8+PqHYeZemsvzLgJMkMhlj/xxukgupfK/q3i9XP3vCHGrvEQEEghYaTwd7fePdh0sKnZPsGhsHMPb3nADOGNTOPuzjnHfE4ryp+Uzo6Sc2N332Vv0vIp6k0Y9kl4av2IY7yvNyVi67YU5JgXNyypQxLqWVl2OfTMx1bnXtka+lJNnmTxntQYtwnYMNeoBR/z/+Bdn0Q21KgEksAAAAAElFTkSuQmCC", null);
} catch(e) {}try {
    ((img, preventClearThumbs) => {
        CustomizableUI.createWidget({
            id: "bt-clear-history",
            label: "Очистить историю",
            tooltiptext: "Очистить историю",
            defaultArea: CustomizableUI.AREA_NAVBAR,
            onCreated: function(bt) {
                bt.image = img;
            },
            onCommand: function(event) {
                var win = event.target.ownerDocument.defaultView;
                (preventClearThumbs || (g => {
                    var key = "onClearHistory", obs = g.PageThumbsHistoryObserver, func = obs[key];
                    return preventClearThumbs = () => obs[key] = () => obs[key] = func;
                })(Cu.import("resource://gre/modules/PageThumbs.jsm", {})))();
                win.PlacesUtils.history.clear();
                var closedTabCount = win.SessionStore.getClosedTabCount(win);
                while(closedTabCount--)
                    win.SessionStore.forgetClosedTab(win, 0);
                var alertsService = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService);
                alertsService.showAlertNotification(img, "История Очищена!", "", false);
                win.setTimeout(()=> alertsService.closeAlert(), 2000);
            }
        });
    })("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH5AQWDCgXFmePvgAABJ1JREFUWMO9l2tsFFUUx/93ZnZnd7ul2+2bR2VBEAVEUhoowSp+KMQIRatBxQgRDMEEjB8wJlUJ8YOPGDFqRECi1apAgNgIvvAByqNiG4iGSKGmtrvSdvva9+zO3HuPHxRTEdrShT3fJnPPPb/5z5z/PcMwKF6smI0qX2kFmFIKTdlfVrfPwnUOZfCFT0oYnV2bkn5/nQhH7296YCkyCtAa7EX/QOhbYSR0Ho3WEonsokwCfBjogiFFgySERSw6TSaNh79aXs0yBtBiCbSlrHYBaiYpVRGPP2mZpitjAADw0vmOVK/JtwGQIhGfKi2z+qcVSzIHEJKEhOCHLKJWklLl8fgaZnA9YwAAcDQcC5uSDgIgmTQWgKjyWM3izAHsDPTIoGnWEZAibtl4JLzRDlXPGAAACKKzppSNACCMxJ3SNOcfqKrKHMCh7pBpCPkRAEmWZROJ+MZxuU4bAByruQc/r7gPjcvTN6ohe/z1m0oLZmVnnVYZG8ts9ojNmz/H5nZ3E8kKknItQDuhaZ+Xf9JA11wBALAE60tK2guAyLLGAPQuTxonUt1dB5L+9nutgYHt4PzGIzU1uC4AC+fMYuR0HgbAAYLV012ZuhC4RcRjGgkBHgmP5bHYNrdquq8pwKlHaljTg0tnQND2XJdrBxizAQBJCdAgtYnAY6HK7HLnempZr40G4LJJPBIt4injGA+HxpAQV/p6CMWucO6yIjb+NnqeYPZR+7odysStRJSmAqELfm7298krFrcrXF9c0jv1qQnOaWUsx6EZDlj9r1ASS3n746yw0J4eAJcyKYn+vGxGvh4pWOeL3lqdlV+YZ+nKxT6SRg74wPssqVZ3nVjJtjxTkYYCBBOM/ReAManM8oR9G0q1KTORq9vk/1tYxDywBurB1U0bHivzWL9uwLzpnqv3gbWlRWx5Sf6bqlNbxbJUheXayT3XG/aV2Qqy3UIbdkBgNgmbt4Up+nMgHBLCiFStOojvTgZHbkQHX164aPpMzx6HEzaXk+wOh1A1ha7O4xSdQ/OcZ4q9nqDtYiR71236JvLOrrPDAzTvvj3r5knZPzp0ZXb6fmsHFD0hmb7vt99Dj85c8unwRvRDU0/CSIq9AGTaAGQCIursDASOnmxuHflZcLx+/sTyGbnNqsK86TKYljx36mx4waI1x3siBo3Mik1L+uMJvj9tAQipji7jha27W3sHFwcAdajE7v4klc/wdhZ47Q8xxvRRFuddPcnXPv4i8PaWDzr4pfeHBGjtSGDiOEdwSqnb43Zp84Z7Zf/agaSYEAgJSZGe/tR7dQ3+zbVvnDOueh64GHtenV10d2Vxg8uhzh3JektoF84HUHumpb2p8fRA25b6P+JXWquOZEN/ZzTuG+8+PqHYeZemsvzLgJMkMhlj/xxukgupfK/q3i9XP3vCHGrvEQEEghYaTwd7fePdh0sKnZPsGhsHMPb3nADOGNTOPuzjnHfE4ryp+Uzo6Sc2N332Vv0vIp6k0Y9kl4av2IY7yvNyVi67YU5JgXNyypQxLqWVl2OfTMx1bnXtka+lJNnmTxntQYtwnYMNeoBR/z/+Bdn0Q21KgEksAAAAAElFTkSuQmCC", null);
} catch(e) {}

Отсутствует

 

№831224-04-2020 23:31:42

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 76.0

Re: Настройка внешнего вида Firefox в userChrome.css

egorsemenov06
Ну так я и дал код чтобы добавить туда...
Ну да ладно можно и лишнее убрать оттуда

скрытый текст

Выделить код

Код:

try {
    ((img, preventClearThumbs) => {
        CustomizableUI.createWidget({
            id: "bt-clear-history",
            label: "Очистить историю",
            tooltiptext: "Очистить историю",
            defaultArea: CustomizableUI.AREA_NAVBAR,
            onCreated: function(bt) {
                bt.image = img;
            },
            onCommand: function(event) {
                var win = event.target.ownerDocument.defaultView;
                (preventClearThumbs || (g => {
                    var key = "onClearHistory", obs = g.PageThumbsHistoryObserver, func = obs[key];
                    return preventClearThumbs = () => obs[key] = () => obs[key] = func;
                })(Cu.import("resource://gre/modules/PageThumbs.jsm", {})))();
                var itemsToClear = [
                    "history",
                    "cache",
                ];
                var range = win.Sanitizer.getClearRange(0);
                win.Sanitizer.sanitize(itemsToClear, {
                    ignoreTimespan: !range,
                    range,
                }).then(() => {
                    var alertsService = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService);
                    alertsService.showAlertNotification(img, "История Очищена!", "", false);
                    win.setTimeout(()=> alertsService.closeAlert(), 2000);
                });
            }
        });
    })("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH5AQWDCgXFmePvgAABJ1JREFUWMO9l2tsFFUUx/93ZnZnd7ul2+2bR2VBEAVEUhoowSp+KMQIRatBxQgRDMEEjB8wJlUJ8YOPGDFqRECi1apAgNgIvvAByqNiG4iGSKGmtrvSdvva9+zO3HuPHxRTEdrShT3fJnPPPb/5z5z/PcMwKF6smI0qX2kFmFIKTdlfVrfPwnUOZfCFT0oYnV2bkn5/nQhH7296YCkyCtAa7EX/QOhbYSR0Ho3WEonsokwCfBjogiFFgySERSw6TSaNh79aXs0yBtBiCbSlrHYBaiYpVRGPP2mZpitjAADw0vmOVK/JtwGQIhGfKi2z+qcVSzIHEJKEhOCHLKJWklLl8fgaZnA9YwAAcDQcC5uSDgIgmTQWgKjyWM3izAHsDPTIoGnWEZAibtl4JLzRDlXPGAAACKKzppSNACCMxJ3SNOcfqKrKHMCh7pBpCPkRAEmWZROJ+MZxuU4bAByruQc/r7gPjcvTN6ohe/z1m0oLZmVnnVYZG8ts9ojNmz/H5nZ3E8kKknItQDuhaZ+Xf9JA11wBALAE60tK2guAyLLGAPQuTxonUt1dB5L+9nutgYHt4PzGIzU1uC4AC+fMYuR0HgbAAYLV012ZuhC4RcRjGgkBHgmP5bHYNrdquq8pwKlHaljTg0tnQND2XJdrBxizAQBJCdAgtYnAY6HK7HLnempZr40G4LJJPBIt4injGA+HxpAQV/p6CMWucO6yIjb+NnqeYPZR+7odysStRJSmAqELfm7298krFrcrXF9c0jv1qQnOaWUsx6EZDlj9r1ASS3n746yw0J4eAJcyKYn+vGxGvh4pWOeL3lqdlV+YZ+nKxT6SRg74wPssqVZ3nVjJtjxTkYYCBBOM/ReAManM8oR9G0q1KTORq9vk/1tYxDywBurB1U0bHivzWL9uwLzpnqv3gbWlRWx5Sf6bqlNbxbJUheXayT3XG/aV2Qqy3UIbdkBgNgmbt4Up+nMgHBLCiFStOojvTgZHbkQHX164aPpMzx6HEzaXk+wOh1A1ha7O4xSdQ/OcZ4q9nqDtYiR71236JvLOrrPDAzTvvj3r5knZPzp0ZXb6fmsHFD0hmb7vt99Dj85c8unwRvRDU0/CSIq9AGTaAGQCIursDASOnmxuHflZcLx+/sTyGbnNqsK86TKYljx36mx4waI1x3siBo3Mik1L+uMJvj9tAQipji7jha27W3sHFwcAdajE7v4klc/wdhZ47Q8xxvRRFuddPcnXPv4i8PaWDzr4pfeHBGjtSGDiOEdwSqnb43Zp84Z7Zf/agaSYEAgJSZGe/tR7dQ3+zbVvnDOueh64GHtenV10d2Vxg8uhzh3JektoF84HUHumpb2p8fRA25b6P+JXWquOZEN/ZzTuG+8+PqHYeZemsvzLgJMkMhlj/xxukgupfK/q3i9XP3vCHGrvEQEEghYaTwd7fePdh0sKnZPsGhsHMPb3nADOGNTOPuzjnHfE4ryp+Uzo6Sc2N332Vv0vIp6k0Y9kl4av2IY7yvNyVi67YU5JgXNyypQxLqWVl2OfTMx1bnXtka+lJNnmTxntQYtwnYMNeoBR/z/+Bdn0Q21KgEksAAAAAElFTkSuQmCC", null);
} catch(e) {}

Отсутствует

 

№831324-04-2020 23:48:46

egorsemenov06
Участник
 
Группа: Members
Зарегистрирован: 12-06-2018
Сообщений: 246
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет

egorsemenov06
Ну так я и дал код чтобы добавить туда...
Ну да ладно можно и лишнее убрать оттуда

скрытый текст

Выделить код

Код:

try {
    ((img, preventClearThumbs) => {
        CustomizableUI.createWidget({
            id: "bt-clear-history",
            label: "Очистить историю",
            tooltiptext: "Очистить историю",
            defaultArea: CustomizableUI.AREA_NAVBAR,
            onCreated: function(bt) {
                bt.image = img;
            },
            onCommand: function(event) {
                var win = event.target.ownerDocument.defaultView;
                (preventClearThumbs || (g => {
                    var key = "onClearHistory", obs = g.PageThumbsHistoryObserver, func = obs[key];
                    return preventClearThumbs = () => obs[key] = () => obs[key] = func;
                })(Cu.import("resource://gre/modules/PageThumbs.jsm", {})))();
                var itemsToClear = [
                    "history",
                    "cache",
                ];
                var range = win.Sanitizer.getClearRange(0);
                win.Sanitizer.sanitize(itemsToClear, {
                    ignoreTimespan: !range,
                    range,
                }).then(() => {
                    var alertsService = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService);
                    alertsService.showAlertNotification(img, "История Очищена!", "", false);
                    win.setTimeout(()=> alertsService.closeAlert(), 2000);
                });
            }
        });
    })("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH5AQWDCgXFmePvgAABJ1JREFUWMO9l2tsFFUUx/93ZnZnd7ul2+2bR2VBEAVEUhoowSp+KMQIRatBxQgRDMEEjB8wJlUJ8YOPGDFqRECi1apAgNgIvvAByqNiG4iGSKGmtrvSdvva9+zO3HuPHxRTEdrShT3fJnPPPb/5z5z/PcMwKF6smI0qX2kFmFIKTdlfVrfPwnUOZfCFT0oYnV2bkn5/nQhH7296YCkyCtAa7EX/QOhbYSR0Ho3WEonsokwCfBjogiFFgySERSw6TSaNh79aXs0yBtBiCbSlrHYBaiYpVRGPP2mZpitjAADw0vmOVK/JtwGQIhGfKi2z+qcVSzIHEJKEhOCHLKJWklLl8fgaZnA9YwAAcDQcC5uSDgIgmTQWgKjyWM3izAHsDPTIoGnWEZAibtl4JLzRDlXPGAAACKKzppSNACCMxJ3SNOcfqKrKHMCh7pBpCPkRAEmWZROJ+MZxuU4bAByruQc/r7gPjcvTN6ohe/z1m0oLZmVnnVYZG8ts9ojNmz/H5nZ3E8kKknItQDuhaZ+Xf9JA11wBALAE60tK2guAyLLGAPQuTxonUt1dB5L+9nutgYHt4PzGIzU1uC4AC+fMYuR0HgbAAYLV012ZuhC4RcRjGgkBHgmP5bHYNrdquq8pwKlHaljTg0tnQND2XJdrBxizAQBJCdAgtYnAY6HK7HLnempZr40G4LJJPBIt4injGA+HxpAQV/p6CMWucO6yIjb+NnqeYPZR+7odysStRJSmAqELfm7298krFrcrXF9c0jv1qQnOaWUsx6EZDlj9r1ASS3n746yw0J4eAJcyKYn+vGxGvh4pWOeL3lqdlV+YZ+nKxT6SRg74wPssqVZ3nVjJtjxTkYYCBBOM/ReAManM8oR9G0q1KTORq9vk/1tYxDywBurB1U0bHivzWL9uwLzpnqv3gbWlRWx5Sf6bqlNbxbJUheXayT3XG/aV2Qqy3UIbdkBgNgmbt4Up+nMgHBLCiFStOojvTgZHbkQHX164aPpMzx6HEzaXk+wOh1A1ha7O4xSdQ/OcZ4q9nqDtYiR71236JvLOrrPDAzTvvj3r5knZPzp0ZXb6fmsHFD0hmb7vt99Dj85c8unwRvRDU0/CSIq9AGTaAGQCIursDASOnmxuHflZcLx+/sTyGbnNqsK86TKYljx36mx4waI1x3siBo3Mik1L+uMJvj9tAQipji7jha27W3sHFwcAdajE7v4klc/wdhZ47Q8xxvRRFuddPcnXPv4i8PaWDzr4pfeHBGjtSGDiOEdwSqnb43Zp84Z7Zf/agaSYEAgJSZGe/tR7dQ3+zbVvnDOueh64GHtenV10d2Vxg8uhzh3JektoF84HUHumpb2p8fRA25b6P+JXWquOZEN/ZzTuG+8+PqHYeZemsvzLgJMkMhlj/xxukgupfK/q3i9XP3vCHGrvEQEEghYaTwd7fePdh0sKnZPsGhsHMPb3nADOGNTOPuzjnHfE4ryp+Uzo6Sc2N332Vv0vIp6k0Y9kl4av2IY7yvNyVi67YU5JgXNyypQxLqWVl2OfTMx1bnXtka+lJNnmTxntQYtwnYMNeoBR/z/+Bdn0Q21KgEksAAAAAElFTkSuQmCC", null);
} catch(e) {}

Большое Спасибо!!!

Отсутствует

 

№831425-04-2020 07:43:48

glok
Участник
 
Группа: Members
Зарегистрирован: 31-03-2015
Сообщений: 44
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

Здравствуйте.
Win7 64. FF 75(64). Classic CSS tweaks for Firefox Quantum v3.0.8
Проблема, что с  Classic CSS не могу выделить данные из адресной строки, нету графического отображения выделения ( не выделяется синим цветов, выделенный текст).
Удалял папку chrome, проблема исчезает.
Если поставить курсор на адресную строку, нажать ctrl+A + ctrl+C, то в буфер обмена текст копируется, но то что текст выделился, отображения нет.
В чём может быть проблема?
https://yadi.sk/d/fP4I4SLOrZnMZw файл userChrome.css .

Отсутствует

 

№831525-04-2020 14:55:35

eksman
Участник
 
Группа: Members
Зарегистрирован: 24-07-2015
Сообщений: 63
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

Привет. Подскажите, пожалуйста, как увеличить высоту navbar'a и всех его элементов?

Если просто задать  #nav-bar {height: 55px !important;} то это только увеличивает сам высоту, а нужно еще и чтобы все элементы (иконки, адресная строка, текст и т.п) увеличивались.

И кто знает, есть ли способ для последних версий ff сделать так, чтобы панель закладок показывалась только для новой вкладки (как в хроме)? Все способы из гугла перестали работать после обновы firefox(

Отредактировано eksman (25-04-2020 14:57:03)

Отсутствует

 

№831625-04-2020 16:17:43

sandro79
Участник
 
Группа: Members
Откуда: Ставрополье
Зарегистрирован: 15-11-2017
Сообщений: 1499
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

glok пишет: Если поставить курсор на адресную строку, нажать ctrl+A + ctrl+C, то в буфер обмена текст копируется, но то что текст выделился, отображения нет.

Доброго здравия товарищи!
Скачал ваш userChrome.css, закинул взамен userChrome.css, только что скачанного свежего архива Classic CSS tweaks for Firefox Quantum v3.0.8, и такой проблемы не увидел. Ну разве что я неправильно вас понял.
А не проще ли, копировать в буфер обмена без манипуляций с ctrl+A + ctrl+C, добавив через ПКМ в адресную строку значок "Копировать ссылку".

скрытый текст
d9f238abba7b.png

eksman пишет: как увеличить высоту navbar'a и всех его элементов?

Может выбрать мобильные значки.

eksman пишет: чтобы панель закладок показывалась только для новой вкладки (как в хроме)?

После удаления поддержки биндингов, такого способа с userChrome.css не существует, скриптов тоже пока не попадалось. Разве что можете попробовать, не совсем то конечно, стиль от Aris-а

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Отредактировано sandro79 (25-04-2020 16:25:37)

Отсутствует

 

№831725-04-2020 16:50:38

eksman
Участник
 
Группа: Members
Зарегистрирован: 24-07-2015
Сообщений: 63
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

Может выбрать мобильные значки.

Да, знаю про это. Но не то, что именно мне нужно. Там еще и tabbar затрагивается, да и в целом не то.

Мне надо бы именно navbar увеличить, но чтобы было красиво, иконки нормально смотрелись и т.п
Я пробовал играться с

скрытый текст
#nav-bar .toolbarbutton-icon
{
width: 30px !important;
height: 30px !important;
max-width: 30px !important;
max-height: 30px !important;
}
Но на этом все...

стиль от Aris-а

Лучше чем ничего, авось пригодится, спасибо.

Отсутствует

 

№831825-04-2020 18:19:13

kokoss
Участник
 
Группа: Members
Зарегистрирован: 15-02-2018
Сообщений: 1090
UA: Firefox 52.0

Re: Настройка внешнего вида Firefox в userChrome.css

eksman пишет

Мне надо бы именно navbar увеличить, но чтобы было красиво, иконки нормально смотрелись

Попробуйте так:

скрытый текст

Выделить код

Код:

/* Большие значки на панели навигации */
 toolbar .toolbarbutton-1 > .toolbarbutton-icon,
toolbar .toolbarbutton-1 > .toolbarbutton-badge-stack {
    padding: calc(var(--toolbarbutton-inner-padding) - 2px) !important;
}
toolbar .toolbarbutton-1 > .toolbarbutton-badge-stack > .toolbarbutton-icon {
    width: 20px !important;
    height: 20px !important;
}

/* Зум панели навигации */
#nav-bar .toolbarbutton-1 {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
}

Отредактировано kokoss (25-04-2020 18:19:46)


Win7

Отсутствует

 

№831925-04-2020 21:01:11

eksman
Участник
 
Группа: Members
Зарегистрирован: 24-07-2015
Сообщений: 63
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

kokoss
Огромное спасибо, то что нужно. Имеется некоторая размытость, но это и понятно почему так (по другому видимо не сделать) :beer:

Отсутствует

 

№832025-04-2020 21:47:56

kokoss
Участник
 
Группа: Members
Зарегистрирован: 15-02-2018
Сообщений: 1090
UA: Firefox 52.0

Re: Настройка внешнего вида Firefox в userChrome.css

eksman пишет

Имеется некоторая размытость, но это и понятно почему так (по другому видимо не сделать

Размытость чего? Если иконок, то у меня в [firefox] 75 не размыто!

Отредактировано kokoss (25-04-2020 21:48:39)


Win7

Отсутствует

 

№832125-04-2020 22:36:06

_zt
Участник
 
Группа: Members
Зарегистрирован: 10-11-2014
Сообщений: 872
UA: Firefox 68.0

Re: Настройка внешнего вида Firefox в userChrome.css

eksman
Вы в персонализации большие значки включали? Попробуйте изменить размер там.


Fx 91 esr

Отсутствует

 

№832225-04-2020 23:34:15

eksman
Участник
 
Группа: Members
Зарегистрирован: 24-07-2015
Сообщений: 63
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

kokoss пишет
eksman пишет

Имеется некоторая размытость, но это и понятно почему так (по другому видимо не сделать

Размытость чего? Если иконок, то у меня в [firefox] 75 не размыто!

Да, иконки расширений слега размыты. Ну это не страшно.

_zt пишет

eksman
Вы в персонализации большие значки включали? Попробуйте изменить размер там.

ага, включал, не то :( Мне больше размер нужен :) Но уже вопрос решили выше.

Отсутствует

 

№832326-04-2020 05:41:24

glok
Участник
 
Группа: Members
Зарегистрирован: 31-03-2015
Сообщений: 44
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

sandro79 пишет

А не проще ли, копировать в буфер обмена без манипуляций с ctrl+A + ctrl+C, добавив через ПКМ в адресную строку значок "Копировать ссылку".

Не всегда всю ссылку целиком надо копировать, а только какую нибудь часть, а я не вижу, что я выделяю.

Отсутствует

 

№832428-04-2020 11:41:43

RadeD
Участник
 
Группа: Members
Зарегистрирован: 20-04-2020
Сообщений: 3
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

glok
Там 3.0.9 вышла, попробуйте ее. Там, судя по треду в багрепортах, как раз что то с выделением правили

Отсутствует

 

№832501-05-2020 14:52:10

glok
Участник
 
Группа: Members
Зарегистрирован: 31-03-2015
Сообщений: 44
UA: Firefox 75.0

Re: Настройка внешнего вида Firefox в userChrome.css

RadeD пишет

Там 3.0.9 вышла, попробуйте ее. Там, судя по треду в багрепортах, как раз что то с выделением правили

Скачал 3.11. Проблема осталась.
Хотя, поставил чистый css, ничего не менял, текст выделяется.
Стоит подправить userchrome, сразу появляется проблема.
Вот этот параметр ломает.  @import "./css/tabs/tabs_below_navigation_toolbar_fx74.css"; /**/

Отредактировано glok (01-05-2020 14:59:28)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]