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

Общайтесь со знакомыми и друзьями в нашем сообществе в Facebook.

№965112-02-2021 06:27:10

rubel
Участник
 
Группа: Members
Откуда: г.Самара
Зарегистрирован: 10-05-2005
Сообщений: 455
UA: Firefox 79.0

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

xrun1
А как вы прикрутили иконки в контекстном меню? Вот здесь.

Поделитесь, плиз.:)

Отсутствует

 

№965212-02-2021 09:55:47

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 784
UA: Firefox 85.0

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

rubel
Это мы втроём мутили Vitaliy V., Dumby и Ваш покорный слуга.)) Изначальные ссылки на мучение есть в стиле. Стиль для ucf (в смысле моих путей), замените на свои, если нужно. Я после тех ссылок ещё добавлял иконки и пункты.
https://www.upload.ee/files/12872394/icons-in-menu.zip.html
P.S. В папке icons несколько лишних иконок, у меня используются в других местах. Думаю, это не принципиально, вычищать лень.

Отредактировано xrun1 (12-02-2021 10:00:21)

Отсутствует

 

№965312-02-2021 23:19:35

ALEX_45_ORP
Участник
 
Группа: Members
Зарегистрирован: 18-01-2018
Сообщений: 113
UA: Firefox 85.0

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

подскажите, плз, можно ли кодом userChrome.css уменьшить высоту панелей меню, навигации и вкладок в 85?

Отредактировано ALEX_45_ORP (12-02-2021 23:20:29)


Reality leaves a lot to the imagination

Отсутствует

 

№965412-02-2021 23:49:50

harryk
Участник
 
Группа: Members
Зарегистрирован: 23-12-2019
Сообщений: 303
UA: Firefox 68.0

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

ALEX_45_ORP пишет

вкладок в 85?

Персонализация -> Значки -> Компактные
Или нужно еще меньше?

Отсутствует

 

№965513-02-2021 01:06:18

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 2922
UA: Firefox 85.0

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

xrun1 пишет

Это мы втроём мутили Vitaliy V., Dumby и Ваш покорный слуга.)) Изначальные ссылки на мучение есть в стиле. Стиль для ucf (в смысле моих путей), замените на свои, если нужно. Я после тех ссылок ещё добавлял иконки и пункты.
https://www.upload.ee/files/12872394/icons-in-menu.zip.html

Спасибо, интересно получилось. А в Панели меню, чего не домутили?

Отсутствует

 

№965613-02-2021 02:40:10

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

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

xrun1
custom_script_win.js

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

Выделить код

Код:

// Очистить панель адреса или поиска прокруткой колёсиком мыши на панели
        (this.clearsearchurlbar = {
            init(that) {
                for (let el of (this.urlsearcbar = document.querySelectorAll("#urlbar,#searchbar")))
                    el.addEventListener("wheel", this);
                that.unloadlisteners.push("clearsearchurlbar");
            },
            handleEvent(e) {
                e.target.value = "";
            },
            destructor() {
                for (let el of this.urlsearcbar)
                    el.removeEventListener("wheel", this);
            },
        }).init(this);

        // Автоматически открывать папки закладок на панели закладок
        (this.placesmenudndhandler = {
            delay: 350,
            init(that) {
                var PlacesToolbar = this.PlacesToolbar = document.querySelector("#PlacesToolbar");
                if (!PlacesToolbar) return;
                PlacesToolbar.addEventListener("mouseover", this);
                this.timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
                that.unloadlisteners.push("placesmenudndhandler");
            },
            isButtonMenu(node) {
                if (node.localName == "toolbarbutton" &&
                    node.getAttribute("type") == "menu" &&
                    node.menupopup?.hasAttribute("placespopup"))
                    return true;
                return false;
            },
            isOpen(popup) {
                if (popup.state === "open")
                    return true;
                return false;
            },
            handleEvent(event, target = event.target, popup) {
                if (!this.isButtonMenu(target) || this.isOpen(popup = target.menupopup))
                    return;
                this.timer.cancel();
                this.timer.initWithCallback(() => {
                    if (this.curpopup && this.isOpen(this.curpopup))
                        this.curpopup.hidePopup();
                    this.curpopup = popup;
                    popup.openPopup();
                }, this.delay, Ci.nsITimer.TYPE_ONE_SHOT);
                target.addEventListener("mouseleave", () => {
                    this.timer.cancel();
                }, { once: true });
            },
            destructor() {
                this.PlacesToolbar.removeEventListener("mouseover", this);
            },
        }).init(this);

        // Пункт для контекстного меню адресной строки, подставляющий модификаторы поиска
        (this.searchmodifiers = {
            init(that) {
                var urlbar = this.urlbar = document.querySelector("#urlbar");
                if (!urlbar) return;
                urlbar.addEventListener("popupshowing", this);
                that.unloadlisteners.push("searchmodifiers");
            },
            handleEvent(e) {
                if (e.originalTarget != this.popup) return;
                this.urlbar.removeEventListener("popupshowing", this);
                this.urlbar = null;
                this.append("menuseparator", this.popup);
                var menu = this.append("menu", this.popup, {label: "Вставить ^ * + % ~ # @"});
                var popup = this.append("menupopup", menu, {oncommand: "insert(event);"});
                popup.addEventListener("popupshowing", this, { once: true });
                this.handleEvent = e => {
                    var df = document.createDocumentFragment();
                    for(var label of [
                        "^ История",
                        "* Закладки",
                        "+ Страницы с метками",
                        "% Текущие открытые вкладки",
                        "~ Набранные",
                        "# Названия",
                        "@ Веб-адреса (URLs)"
                    ])
                        this.append("menuitem", df, {label});
                    popup.append(df);
                    var ed = gURLBar.inputField.editor
                        .QueryInterface(Ci.nsIEditor || Ci.nsIPlaintextEditor);
                    popup.insert = e => {
                        var str = e.target.label[0] + " ";
                        var val = gURLBar.inputField.value;
                        if (val && !val.endsWith(" ")) str = " " + str;
                        ed.endOfDocument();
                        ed.insertText(str);
                    };
                };
            },
            get popup() {
                delete this.popup;
                return this.popup = gURLBar.inputField.parentNode.menupopup;
            },
            append(name, parent, attrs) {
                var elm = document.createXULElement(name);
                if (attrs) for(var a in attrs) elm.setAttribute(a, attrs[a]);
                parent.append(elm);
                return elm;
            },
            destructor() {
                this.urlbar?.removeEventListener("popupshowing", this);
            },
        }).init(this);

        // Добавить подменю "Поиск изображения в" в контекстном меню изображений
        (this.searchimagecontextmenu = {
            handleEvent(e) {
                var array = [
                    ['Google', 'https://www.google.lv/favicon.ico', 'https://www.google.com/searchbyimage?&image_url='],
                    ['Яндекс', 'https://yastatic.net/morda-logo/i/favicon_islands.ico', 'https://yandex.ru/images/search?rpt=imageview&url='],
                    ['Bing', 'https://www.bing.com/s/a/bing_p.ico', 'https://www.bing.com/images/search?view=detailv2&iss=sbi&form=SBIHMP&sbisrc=UrlPaste&q=imgurl:'],
                    ['Tineye', 'https://tineye.com/favicon.ico', 'https://tineye.com/search?pluginver=bookmark_1.0&url='],
                ];
                var menu = document.createXULElement("menu");
                menu.setAttribute("label", "Поиск изображения в ...");
                menu.setAttribute("class", "menu-iconic");
                menu.setAttribute("image", array[0][1]);
                menu.setAttribute("onclick", "_searcclick(event);");
                menu._searcclick = function(e) {
                    if (e.target != this) return;
                    gBrowser.selectedTab = gBrowser.addTrustedTab(this._searcharg[2] + encodeURIComponent(gContextMenu.imageURL), { index: gBrowser.selectedTab._tPos + 1 } );
                    this.parentNode.hidePopup();
                }
                menu._searcharg = array[0];
                var menuPopup = document.createXULElement("menupopup");
                menu.append(menuPopup);
                array.forEach(m=> {
                    var mItem = document.createXULElement("menuitem");
                    mItem.setAttribute("label", m[0]);
                    mItem.setAttribute("image", m[1]);
                    mItem.setAttribute("class", "menuitem-iconic");
                    mItem.setAttribute("oncommand", "gBrowser.selectedTab = gBrowser.addTrustedTab(_searcharg[2] + encodeURIComponent(gContextMenu.imageURL), { index: gBrowser.selectedTab._tPos + 1 } );");
                    mItem._searcharg = m;
                    menuPopup.append(mItem);
                });
                var mItem = document.createXULElement("menuitem");
                mItem.setAttribute("label", 'Искать во всех поисковиках');
                mItem.setAttribute("oncommand", "_searcharg.forEach(m => { gBrowser.selectedTab = gBrowser.addTrustedTab(m[2] + encodeURIComponent(gContextMenu.imageURL), { index: gBrowser.selectedTab._tPos + 1 } );});");
                mItem._searcharg = array;
                menuPopup.append(mItem);
                this.contextMenu.querySelector("#context-copyimage-contents")?.before(menu);
                (this.handleEvent = e => {
                    menu.hidden = !gContextMenu?.imageURL;
                })(e);
            },
            init(that) {
                var contextMenu = this.contextMenu = document.querySelector("#contentAreaContextMenu");
                if (!contextMenu) return;
                contextMenu.addEventListener("popupshowing", this);
                that.unloadlisteners.push("searchimagecontextmenu");
            },
            destructor() {
                this.contextMenu.removeEventListener("popupshowing", this);
            },
        }).init(this);

Отредактировано Vitaliy V. (13-02-2021 02:41:30)

Отсутствует

 

№965713-02-2021 05:27:44

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 2922
UA: Firefox 85.0

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

Vitaliy V.
А можете ещё добавить очистку поиска в боковой панели и окна звёздочки.

Отсутствует

 

№965813-02-2021 06:51:35

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 784
UA: Firefox 85.0

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

А как сжать на 1-2 пикселя расстояние между кнопками в боковой панели? Пробовал по аналогии с этим стилем https://forum.mozilla-russia.org/viewtopic.php?pid=775867#p775867
Получается слишком узко...

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

Выделить код

Код:

/* Сжать доп.панели https://forum.mozilla-russia.org/viewtopic.php?pid=775867#p775867 */
#add-additional-top-bar,
#add-additional-bottom-bar {
    --toolbarbutton-outer-padding: 2px !important; /* было 0px */
    --toolbarbutton-inner-padding: 2px !important;
    min-height: 20px !important;
}
#add-additional-bottom-closebutton {
    padding: 0 !important;
}
#add-additional-vertical-bar {
    --toolbarbutton-outer-padding: 2px !important; /* было 0px */
    --toolbarbutton-inner-padding: 2px !important;
    min-width: 20px !important;
}
:-moz-any(#add-additional-top-bar,#add-additional-bottom-bar,#add-additional-vertical-bar) .toolbarbutton-badge {
    margin-inline-end: calc(-1 * (var(--toolbarbutton-outer-padding) + var(--toolbarbutton-inner-padding))) !important;
}

Добавлено 13-02-2021 07:13:42

voqabuhe пишет

А в Панели меню, чего не домутили?

Я не пользуюсь, про других не знаю. Сделать не сложно, иконки почти все есть. Как получить ID меню здесь https://forum.mozilla-russia.org/viewtopic.php?pid=758758#p758758
Vitaliy V.
Спасибо, отлично работает!

Отредактировано xrun1 (13-02-2021 07:13:42)

Отсутствует

 

№965913-02-2021 10:03:23

ALEX_45_ORP
Участник
 
Группа: Members
Зарегистрирован: 18-01-2018
Сообщений: 113
UA: Firefox 85.0

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

harryk пишет
ALEX_45_ORP пишет

вкладок в 85?

Персонализация -> Значки -> Компактные
Или нужно еще меньше?

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


Reality leaves a lot to the imagination

Отсутствует

 

№966013-02-2021 11:45:40

harryk
Участник
 
Группа: Members
Зарегистрирован: 23-12-2019
Сообщений: 303
UA: Firefox 68.0

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

Как убрать синюю полосу сверху активной вкладки?

Отредактировано harryk (13-02-2021 13:01:06)

Отсутствует

 

№966113-02-2021 13:42:15

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

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

harryk пишет

Как убрать синюю полосу сверху активной вкладки?

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

Отсутствует

 

№966213-02-2021 14:18:25

harryk
Участник
 
Группа: Members
Зарегистрирован: 23-12-2019
Сообщений: 303
UA: Firefox 68.0

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

sandro79
А другие варианты есть? Это ломает отображение табов в аддоне Session Boss

Отсутствует

 

№966313-02-2021 14:28:58

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

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

harryk пишет

А другие варианты есть?

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

Выделить код

Код:

.tab-line[selected=true] {
  height: 0px !important;
}

Отредактировано sandro79 (13-02-2021 14:33:49)

Отсутствует

 

№966413-02-2021 14:38:23

harryk
Участник
 
Группа: Members
Зарегистрирован: 23-12-2019
Сообщений: 303
UA: Firefox 68.0

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

sandro79
При первом варианте табов в сохраненной сессии воообще нет, а при втором все табы накладываются друг на друга в одной строке, а как бы должны быть каждый в своей строке.
Может как-то можно не прятать зту полоску, а перекрасить в тот же цвет, что и активная вкладка?

Отсутствует

 

№966513-02-2021 14:45:38

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

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

harryk пишет

Может как-то можно не прятать зту полоску, а перекрасить в тот же цвет, что и активная вкладка?

Да, можно перекрасить.


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

Выделить код

Код:

.tabbrowser-tab[selected] .tab-line {
    background-color: var(--classic_squared_tabs_active_tab) !important;
}

Отредактировано sandro79 (13-02-2021 15:17:07)

Отсутствует

 

№966613-02-2021 14:54:42

harryk
Участник
 
Группа: Members
Зарегистрирован: 23-12-2019
Сообщений: 303
UA: Firefox 68.0

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

sandro79
Да, спасибо. То, что нужно

Отсутствует

 

№966713-02-2021 17:11:50

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

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

voqabuhe пишет

А можете ещё добавить очистку поиска в боковой панели и окна звёздочки.

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

Выделить код

Код:

(this.clearsearchurlbar = {
            init(that) {
                for (let el of (this.urlsearcbar = document.querySelectorAll("#urlbar,#searchbar,#sidebar")))
                    el.addEventListener("wheel", this);
                (document.querySelector("#editBookmarkPanelTemplate")?.content.querySelector("#editBookmarkPanelRows")
                || document.querySelector("#editBookmarkPanelRows"))
                ?.setAttribute("onwheel", "if (event.target.value && event.target.localName === 'input') event.target.value = '';");
                that.unloadlisteners.push("clearsearchurlbar");
            },
            handleEvent(e, target = e.target) {
                if (target.value) {
                    if ("_clearSearch" in target)
                        target._clearSearch();
                    else if (target.localName === "input")
                        target.value = "";
                }
            },
            destructor() {
                for (let el of this.urlsearcbar)
                    el.removeEventListener("wheel", this);
            },
        }).init(this);

xrun1 пишет

Получается слишком узко...

--toolbarbutton-inner-padding не пробовали прибавить?

ALEX_45_ORP пишет

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

не знаю насчет сборки попробуйте это
https://forum.mozilla-russia.org/viewto … 77#p786677

Отредактировано Vitaliy V. (13-02-2021 17:27:55)

Отсутствует

 

№966813-02-2021 17:24:20

ALEX_45_ORP
Участник
 
Группа: Members
Зарегистрирован: 18-01-2018
Сообщений: 113
UA: Firefox 85.0

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

Vitaliy V. пишет

не знаю насчет сборки попробуйте это
https://forum.mozilla-russia.org/viewto … 77#p786677

спс, теперь подгоню по своим потребностям.


Reality leaves a lot to the imagination

Отсутствует

 

№966913-02-2021 17:51:16

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 2922
UA: Firefox 85.0

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

Vitaliy V., спасибо. А как в custom_script_win.js скрипты отдельным файлом подключать?

Отредактировано voqabuhe (13-02-2021 19:45:24)

Отсутствует

 

№967013-02-2021 18:46:29

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 784
UA: Firefox 85.0

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

voqabuhe
Второй спойлер https://forum.mozilla-russia.org/viewtopic.php?pid=776177#p776177

Отсутствует

 

№967113-02-2021 19:44:38

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 2922
UA: Firefox 85.0

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

xrun1 пишет

Второй спойлер https://forum.mozilla-russia.org/viewtopic.php?pid=776177#p776177

Спасибо.

Отсутствует

 

№967213-02-2021 19:54:22

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

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

voqabuhe пишет

А как в custom_script_win.js скрипты отдельным файлом подключать?

Смотря какие скрипты, если такие как в постах №9656 №9667
то тут надо загружать в объект ucf_custom_script_win а не в window как по ссылке xrun1
И вопрос нужно ли загружать скрипты в сидебар? Для custom_script_all_win.js делал подобные загрузчики можно использовать их
но лучше сделать специально для custom_script_win.js, если нужно?

Отсутствует

 

№967313-02-2021 20:18:25

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 2922
UA: Firefox 85.0

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

Vitaliy V. пишет

Смотря какие скрипты, если такие как в постах №9656 №9667
то тут надо загружать в объект ucf_custom_script_win а не в window как по ссылке xrun1

Ну да, в данном случае, как в постах №9656 №9667. ucf_custom_script_win - это где, такого у меня вообще нет? А почему нельзя как по ссылке xrun1, работает же?

И вопрос нужно ли загружать скрипты в сидебар?

Ну наверное нужно, очистка колесом есть же в боковой панели закладок.

но лучше сделать специально для custom_script_win.js, если нужно?

Ну хорошо бы было, мне удобнее когда скрипты отдельными файлами.

Отредактировано voqabuhe (13-02-2021 20:19:31)

Отсутствует

 

№967414-02-2021 00:39:02

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

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

voqabuhe пишет

ucf_custom_script_win - это где, такого у меня вообще нет?

в самом начале var ucf_custom_script_win = { и почти до конца файла }; :)

voqabuhe пишет

А почему нельзя как по ссылке xrun1, работает же?

там может сработать один код но до следующего не дойдёт из-за ошибки потому что он работает не так где ожидалось, в window нет unloadlisteners

voqabuhe пишет

очистка колесом есть же в боковой панели закладок.

да нет для этого не нужно, я имел ввиду др. скрипты
но добавил в закомментированном виде блок, если потребуется там указано где активировать

voqabuhe пишет

мне удобнее когда скрипты отдельными файлами.

добавил пару примеров в блок Загрузка скриптов для browser.xhtml
можете создать например ucf_user_script.js с подобными кодами как в №9656, №9667, в них следует использовать this
loadscript("ucf_user_script.js", this);
добавил ещё для примера скрипт тоже с this Sidebar Tabs
loadscript("ucf_SidebarTabs.js", this) && this.unloadlisteners.push("sidebar_tabs");
с др. скриптами используйте win если этот скрипт должен грузится в window и не зависим...
Да и не обязательно скрипт должен лежать в одной папке с custom_script_win.js
можно в др. папке например user_scripts, но относительно custom_scripts
loadscript("user_scripts/ucf_user_script.js", this);

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

Выделить код

Код:

(() => {
            var loadscript = (relpath, obj) => {
                try {
                    Services.scriptloader.loadSubScript(`chrome://user_chrome_files/content/custom_scripts/${relpath}`, obj, "UTF-8");
                    return true;
                } catch(e) { }
                return false;
            },
            load_scripts_by_url = {
                browser: win => {
                    //>>>>>>>>>>| Этот блок требуется для боковой панели и др., очистите строку ниже если он нужен |>>>>>>>>>>
                    /*
                    var box = document.querySelector("#browser") || window;
                    var listener = e => {
                        var doc = e.target || ({});
                        load_scripts_by_url[doc.documentURI]?.(doc.defaultView);
                    };
                    box.addEventListener("pageshow", listener);
                    this.loadscriptswinandsidebar = {
                        destructor() {
                            box.removeEventListener("pageshow", listener);
                        }
                    };
                    this.unloadlisteners.push("loadscriptswinandsidebar");
                    /* <<<<<<<<<<<<<<<<<<<< */
                    setTimeout(() => {
                    //>>>>>>>>>>| Загрузка скриптов для browser.xhtml |>>>>>>>>>>
                    loadscript("ucf_user_script.js", this);
                    loadscript("ucf_SidebarTabs.js", this) && this.unloadlisteners.push("sidebar_tabs");

                    //<<<<<<<<<<<<<<<<<<<<
                    }, 0);
                },
                //>>>>>>>>>>| Загрузка скриптов для др. документов |>>>>>>>>>>
                "chrome://browser/content/places/bookmarksSidebar.xhtml": win => {
                    // боковая панель закладок

                },
                "chrome://browser/content/places/historySidebar.xhtml": win => {
                   // боковая панель истории

                },
                //<<<<<<<<<<<<<<<<<<<<
            };
            load_scripts_by_url.browser(window);
        })();

Отредактировано Vitaliy V. (14-02-2021 00:41:47)

Отсутствует

 

№967514-02-2021 13:48:19

b0ttle
Участник
 
Группа: Members
Зарегистрирован: 22-10-2020
Сообщений: 19
UA: Firefox 85.0

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

Здравствуйте, можно такое проделать но с файлом user_chrome_files/user_chrome.manifest

Отсутствует

 

Board footer

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