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

В мире Mozilla происходит много интересных событий. Но вам не нужно постоянно посещать новостные сайты, чтобы быть в курсе всех изменений. Зайдите на ленту новостей Mozilla Россия.

Сustom Buttons » Custom Buttons » 17-04-2024 01:08:19

Подскажите последнюю рабочую версию кнопки - вставка спец. символов
[spoiler][code](this.type != "menu" && (this.type = "menu") && !this.hasAttribute("is")) || (popup => {
    var columns = [
        ' \u0027 " ‘ ’ ‚ ; “ ” „ “ ” ` // ',
        ' /* */ ( ) { } [ ] « » ‹ › ¦ ',
        ' … ≈ ≠ × ± — № => → # • ° ¤ ',
        ' Ⅰ Ⅱ Ⅲ Ⅳ Ⅴ Ⅵ Ⅶ Ⅷ Ⅸ Ⅹ    ',
        ' \uD83E\uDD8A \uD83D\uDE0E § & \u0027 \u002Fn \u002Fb \u002F @ ✓ ✗ ¬  '
    ];
    var css = //0&&
    `
        #${_id} menuitem > .menu-text {
            font-size: 18px;
            font-family: Consolas, Rockwell, Verdana;
            text-align: center;
            -moz-appearance: none;
            margin: 0;
            padding: 0 14px;
        }
        #${_id} menuitem > :not(.menu-text) {
            display: none;
        }
        #${_id} menugroup,
        #${_id} > menupopup > arrowscrollbox {
            background-color: menu;
        }
    `.replace(/;/g, " !important;");

    var inserter = {
        get docShe

Сustom Buttons » Custom Buttons » 16-04-2024 16:21:39

Dumby подскажи где ошибка[spoiler][code]//Вызвать окно поиска по текущему сайту по правому клику на search-go-button....................................................................................................
(bar => {

   if (!bar) return;

   var searchbar = window.document.getElementById("searchbar");
          if (!searchbar)
            return;
        var btn = searchbar.querySelector(".search-go-button") ||
                    window.document.getAnonymousElementByAttribute(searchbar, "class", "search-go-button");
                
        btn.setAttribute("hidden", "false");            

var UpdateExt = function(event) {

var Sel="javascript: var getSel=function(w){ var s,d=w.document; if(d.selection){ var r=d.selection.createRange(); s=r?r.text:''} else {s=d.getSelection().toString(); if(!s){var e,t=d.getElementsByTagName('textarea'),u=d.getElementsByTagName('input'),i=t.length; while(e=(i>0)?t[--i]:u[-i--]) try{ if(e.offsetHeight>0&&(s=e.value.substring(e.selectionStart,e.selectionEnd)))b

Сustom Buttons » Custom Buttons » 30-09-2023 10:31:36

Dumby спасибо все работает

Сustom Buttons » Custom Buttons » 26-09-2023 22:03:08

Может кто подправить[spoiler][code]// Сплывающая подсказка у кнопки ....
(function() {
    var title = self.label + ":\n\n";
    var data = {
        memory: "Memory Cache:  ",
        disk: "Disk Cache:  ",
        offline: "Offline Cache:  "
    };
    function getSize(size) {
        if (!size) return size === 0 ? "0" : "?";
        for(var count = -1; size >= 1024; size /= 1024, count++);
        return size.toFixed(2).replace(/0+$/, "").replace(/\.$/, "") + " " + ("KMGT"[count] || "") + "B";
    }
    function setInf(tot, max, type, i) {
        var inf = getSize(tot) + " / " + getSize(max);
        var key = "browser.cache." + type + ".enable";
        if (!Services.prefs.getBoolPref(key)) inf += " (disabled)";
        self.tooltipText = self.tooltipText.replace(zws(i), inf);
    }
 
var zws = ind => "\u200B".repeat(++ind);
    var types = Object.keys(data);
 
var ttt = title + types.map((key, i) => data[key] + zws(i)).join("\n");

   
  // var context = Cu.import("", {}).Ser

Сustom Buttons » Custom Buttons » 07-09-2023 22:48:25

Dumby на 117 опять сломался DOM Inspector. скажи пожалуйста у тебя на эту версию есть рабочий вариант?

CSS-стили » Настройка внешнего вида Firefox в userChrome.css » 07-09-2023 22:13:00

Еще раз порошу уделить мне внимания и ответить на мой вопрос разбирающихся в этом вопросе. есть стиль для иконок в контекстном меню
[spoiler][code]@-moz-document    url("chrome://browser/content/browser.xhtml"),
        url("chrome://browser/content/places/places.xhtml"),
        url("chrome://browser/content/places/historySidebar.xhtml"),
        url("chrome://browser/content/places/bookmarksSidebar.xhtml"),
        url("chrome://browser/content/syncedtabs/sidebar.xhtml") {

*|*:root {
    --v-menu-icons-margin-start: 0px; /* отступ слева для иконок, для Linux 0px */
}

menu:not(.menu-iconic)::before, menuitem:not(.menuitem-iconic)::before {
    width: 16px;
    height: 16px;
    display: -moz-inline-box;
    margin-inline-start: var(--v-menu-icons-margin-start);
    margin-inline-end: calc(1 * (var(--v-menu-icons-margin-start) + 10px));
    position: relative;
    background-color: transparent;
    background-position: center;
    background-size: 16px;
    background-repeat: no-repeat;
}
menu#fill-login::befo

CSS-стили » Настройка внешнего вида Firefox в userChrome.css » 03-09-2023 16:09:39

Может кто подсказать в этом стиле иконки накладываются на текст пунктов контекстного меню
[spoiler][code]@-moz-document    url("chrome://browser/content/browser.xhtml"),
        url("chrome://browser/content/places/places.xhtml"),
        url("chrome://browser/content/places/historySidebar.xhtml"),
        url("chrome://browser/content/places/bookmarksSidebar.xhtml"),
        url("chrome://browser/content/syncedtabs/sidebar.xhtml") {

*|*:root {
    --v-menu-icons-margin-start: 5px; /* отступ слева для иконок, для Linux 0px */
}

menu:not(.menu-iconic)::before, menuitem:not(.menuitem-iconic)::before {
    width: 16px;
    height: 16px;
    display: -moz-inline-box;
    margin-inline-start: var(--v-menu-icons-margin-start);
    margin-inline-end: calc(-1 * (var(--v-menu-icons-margin-start) + 16px));
    position: relative;
    background-color: transparent;
    background-position: center;
    background-size: 16px;
    background-repeat: no-repeat;
}
menu#fill-login::before {
    content: "" !important;
    back

Сustom Buttons » Custom Buttons » 29-08-2023 22:54:29

Dumby Я прочитал про Services.jsm, но не пойму чем заменить в этой кнопке "global", так как она завязана на "storage"
[spoiler][code]// https://forum.mozilla-russia.org/viewtopic.php?id=56040
// http://infocatcher.ucoz.net/js/cb/cbEditorToggleOnTop.js
// https://github.com/Infocatcher/Custom_Buttons/tree/master/CB_Editor_Toggle_on_Top

// Custom Buttons Editor: Toggle on Top button for Custom Buttons
// (code for "initialization" section)

// (c) Infocatcher 2012-2015
// version 0.1.11 - 2015-06-04

// Hotkey: Ctrl+T

const watcherId = "customButtonsToggleOnTop_" + this.id;
var {Components} = window; // Prevent garbage collection in Firefox 3.6 and older
var storage = (function() {
    if(!("Services" in window)) // Firefox 3.6 and older
        return Application.storage;
    // Simple replacement for Application.storage
    // See https://bugzilla.mozilla.org/show_bug.cgi?id=1090880
    //var global = Components.utils.getGlobalForObject(Services);
    // Ensure, that we have g

Сustom Buttons » Custom Buttons » 03-08-2023 10:12:52

Farby так все работает спасибо

Сustom Buttons » Custom Buttons » 02-08-2023 21:34:25

Перешел на 116, в кнопке [spoiler][code]/*Initialization Code*/
({
    title: "Консоль браузера",
  url: "chrome://devtools/content/webconsole/index.html",

    icon: "chrome://devtools/skin/images/tool-webconsole.svg",
    init() {
        var trg = document.getElementById("browser");
        trg && addEventListener("DOMContentLoaded", this, false, trg);
        var id = "viewBrowserConsoleSidebar";

        var menuitem = this.element("menuitem", {
            type: "checkbox",
            label: this.title,
            id: "menu_browserConsoleSidebar",
            oncommand: `SidebarUI.toggle("${id}");`
        }, document.getElementById("viewSidebarMenu"));

        var btn = this.element("toolbarbutton", {
            type: "checkbox",
            label: this.title,
            id: "sidebar-switcher-browserConsole",
            oncommand: `SidebarUI.show("${id}");`,
            class: "subviewbutton subviewbutton-iconic"
        });
        document.querySelector(
            'toolbarbutton[id^="sidebar-switcher-"] + toolbarseparator'
        ).before(btn);

        SidebarUI.sidebars.set(id, {
            url: this.url,
            buttonId: btn.id,
           

Сustom Buttons » Custom Buttons » 26-07-2023 08:02:40

_zt я везде заменял, иначе не работало

Сustom Buttons » Custom Buttons » 26-07-2023 01:04:14

manuk нет, каждая вкладка отдельный процесс

Сustom Buttons » Custom Buttons » 25-07-2023 23:32:04

manuk посмотри пост https://forum.mozilla-russia.org/viewtopic.php?pid=804278#p804278 и все поймешь и на сотке заработает. На старших версиях - заменить loadURI на fixupAndLoadURIString, а ты обратно поменяй местами

Сustom Buttons » Custom Buttons » 25-07-2023 21:19:55

manuk все работает перезагрузи браузер

Сustom Buttons » Custom Buttons » 25-07-2023 12:58:31

manuk как вариант[spoiler][code]
var button = this;
const imgFalse="data:image/x-icon;base64,AAABAAEAEhIAAAEAIACABQAAFgAAACgAAAASAAAAJAAAAAEAIAAAAAAAWAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAASw8NZZYdGuubHhv/mh4b/poeG/+aHhv/mh4b/5oeG/+aHhv/mh4b/5oeG/+aHhv/mh4b/pseG/+WHRrrSw8NZQAAAABODw1oqSEd/58fG/6eHxv/nh8b/54fG/+eHxv/nh8b/54fG/+dHxv/nh8b/54fG/+eHxv/nh8b/54fG/+fHxv+qSEd/04PDWeeHhvjpB8c/6EfHP2iHxz/oh8c/6IfHP+iHxv/oh8b/6UgHf+lIB3/ox8c/6IfG/+iHxz/oh8c/6IfHP+hHxz9pB8c/54eG+OnIBz9ph8c/6cfHP+nHxz/px8c/6YfHP+pIB3/qSMg/50dGv+cHBn/pyIf/6ohHf+mHxz/px8c/6cfHP+nHxz/ph8c/6cgHP2rIBz+qyAc/6sgHP+rIBz/qiAc/68iHv+iHhr/cwMC/2sCAv9rAwP/bQEA/5obGP+vIh7/qiAc/6sgHP+rIBz/qyAc/6sgHP6vIBz/ryAc/68gHP+uIBz/syId/50bGP9pAAD/oGFg/+LMzP/kz8//p2xr/2gBAP+hHBn/tCMe/64gHP+vIBz/ryAc/68gHP+zIRz/syEc/7IhHP+1Ih3/qR8b/2cAAP+yfn3///////v8/P/7+/v//////7uMjP9rAAD/rB8a/7YjHf+yIRz/syEc/7MhHP+4IR3/uCEd/7chHf+/JiL/hwYE/51fX///////9fLy/6xPTf+iQ0L/7+np//////+2h4f/dwQD/7YiHv+3IR3/uCEd/7ghHf+8Ih3/vCId/7siHf/BJSD/hAkH/9jBwf//////mUlI/5MHA/9r

Сustom Buttons » Custom Buttons » 15-07-2023 08:40:19

b0ttle обыкновенный скрипт вместо CSS, конечно можно, посмотрите  в той ветке, там примеров много, а я не силен в этом
там еще один вариант сделали, добавили иконки перед счетчиками [spoiler][code](function() {

    if (!window.gBrowser) return;
   
    setTimeout(function() {
        setFunction();
    },50);

    function setFunction() {

        const css =`
            .countClass1::before {
                content: "";
                background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMjHxIGmVAAABoElEQVQ4T42SS0sCURTH77plyz5AX6WGHlhYBC5qHbQIgiCIICJaRLQJgiINpJDCcjLMCHtJ2SY3UmQPoyISc0bzMZMGt3vO3HmZgQf+3DvD+f3u3MMQqNSl6zh14aINhfUiZK3k2QD9UU7tKUcw1WLYFujlmFm6oFoKaSkGMZVCgFbyfvqd26aq7MO1riBx1G8K/oHVrJeq0iaFXo6ZFT/o0wT1YAYBrGQ8uEIvx8y6DjlRgCCH8VQLXE6v4gq9J1vdzRzVKib2GgLjkzkMYPF9CZO9HUVBTOyRGTPEcUKifgdOHGELVHidp/nnWZpPTeM+HR9EgSKL9NzvUDh

Сustom Buttons » Custom Buttons » 08-07-2023 22:53:37

На немецком сайте обновили - Показать количество закладок в папках.
Изменения- количество закладок переместили в крайний правый ряд. Теперь можно эти цифры выделять различным цветом [spoiler][code]//------------- Показать количество закладок в папках ..........................................................................................................

(function() {

    if (!window.gBrowser)
        return;
   
    setTimeout(function() {
        setFunction();
    },50);

    function setFunction() {

        const css =`
            .countClass::after {
                content: attr(data-value);
                color: green;
                padding-right: 7px;
            }
        `;

        const sss = Cc['@mozilla.org/content/style-sheet-service;1'].getService(Ci.nsIStyleSheetService);
        const uri = Services.io.newURI('data:text/css,' + encodeURIComponent(css));
        sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);

        let bmbMenu = document.getElementById('b

Сustom Buttons » Custom Buttons » 07-07-2023 13:12:19

Dumby еще вопрос есть кнопка [spoiler][code]// Показывать количество открытых табов , от 10.05.2019. ................................
(function () { 

   self.onclick = function(e) { 
      if ( e.button == 0 ) return PanelUI.showSubView('allTabsMenu-allTabsView', this);
   };

   // Стиль для счётчика и меню ....
   var uri = makeURI('data:text/css,'+ encodeURIComponent('\
            %button% { -moz-appearance: none !important; border: 0 !important; margin-right: -4px !important; }\
            %button% {color: #4800FF !important;}\
            %button% .toolbarbutton-icon {width: -0px !important;}\
            %button% .toolbarbutton-text {\
      display: flex !important; margin-left: -8px !important; color: #4800FF !important; font-weight: bold !important;\
   }\
      %button% {\
      flex-direction: row !important;\
   }\
   '.replace(/%button%/g, "#" + _id) ));
   const sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService);
   sss.

Сustom Buttons » Custom Buttons » 07-07-2023 12:42:17

Dumby все работает, спасибо

Сustom Buttons » Custom Buttons » 07-07-2023 10:45:00

Dumby спасибо, еще вопрос, посмотришь Инспектор DOM под 115

Сustom Buttons » Custom Buttons » 04-07-2023 19:33:46

vending_machine у меня такой код [spoiler][code]// Двойным левым кликом на папке закладок добавлять закладку в папку закладок, от 06.06.2019. .............................................................
addEventListener("dblclick", async e => {
    if (e.button) return;
    var trg = e.target, node = trg._placesNode || trg._placesView?._resultNode;
    if (!node || !PlacesUtils.nodeIsFolder(node)) return;

    var parentGuid = PlacesUtils.getConcreteItemGuid(node);
    try {
        await PlacesTransactions.NewBookmark({
            //index: 0,
            parentGuid,
            url: gBrowser.currentURI.spec,
            title: gBrowser.selectedTab.label.substr(3, 50)
        }).transact();

        var msg = `Добавил в папку ${
            PlacesUtils.bookmarks.getLocalizedTitle({guid: parentGuid, title: node.title})
        }:`;
        var popupIconURL = gBrowser.selectedTab.image || "chrome://global/skin/icons/Portrait.png"
    }
    catch(ex) {
        msg = "ERROR! " + ex.message;
        popupIconURL = "chrome://global/skin/icons/warning.svg";
    }
    var n = PopupNotifications.s

Сustom Buttons » Custom Buttons » 04-07-2023 19:07:08

в 115 перестала работать кнопка Undo Close Tab[spoiler]// http://infocatcher.ucoz.net/js/cb/undoCloseTabs.js
// https://forum.mozilla-russia.org/viewtopic.php?id=56267
// https://github.com/Infocatcher/Custom_Buttons/tree/master/Undo_Close_Tabs

// Undo Close Tabs button for Custom Buttons
// (code for "initialization" section)

// (c) Infocatcher 2009-2021
// version 0.3.3.3 - 2021-09-04

var options = {
    menuTemplate: [
        "closedWindows",
        "separator",
        "restoreClosedWindows",
        "clearClosedWindows",
        "separator",
        "closedTabs",
        "separator",
        "restoreClosedTabs",
        "clearClosedTabs",
        "separator",
        "clearAll",
        "separator",
        "restoreLastSession",
        "separator",
        "buttonMenu"
    ],
    showInTabContextMenu: false,
    /*
    menuTemplateTabContext: [ // like menuTemplate
        "closedTabs",
        "separator",
        "restoreClosedTabs",
        "clearClosedTabs"
    ],
    */

Board footer

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