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

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

№1452624-03-2020 10:39:56

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

Re: Custom Buttons

Dumby пишет
egorsemenov06 пишет

Можно эту кнопку адаптировать для user_chrome_files



ОГРОМНОЕ Спасибо!!!

Выделить код

Код:

try {((label, ...args) => CustomizableUI.createWidget({
    label,
    localized: false,
    tooltiptext: label,
    id: "gtBookmarklet",
    onCommand: e => e.view.gBrowser.loadURI(...args),
    onCreated: btn => btn.image = "data:image/png;base64,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"
}))(
    "Google переводчик",
    `javascript:{var d, b, o, v, p; b = (d = document).body; o = d.createElement('script'); o.setAttribute('src', 'https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit'); o.setAttribute('type', 'text/javascript'); b.appendChild(o); v = b.insertBefore(d.createElement('div'), b.firstChild); v.id = 'google_translate_element'; v.style.display = 'none'; p = d.createElement('script'); p.text = 'function googleTranslateElementInit(){new google.translate.TranslateElement({pageLanguage:""},"google_translate_element");}'; p.setAttribute('type', 'text/javascript'); b.appendChild(p)};void(0);`,
    {triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal()}
)} catch(ex) {Cu.reportError(ex);}

Отсутствует

 

№1452724-03-2020 22:40:54

toxa
Участник
 
Группа: Members
Зарегистрирован: 11-04-2012
Сообщений: 229
UA: Firefox 56.0

Re: Custom Buttons

Как можно написать объявление функций в секции Код или Справка или Помощь, а вызывать эти функции в Инициализации?

Просто чтобы не загромождать секцию Инициализация кодом.

Отсутствует

 

№1452825-03-2020 20:29:30

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4316
UA: Firefox 56.0

Re: Custom Buttons

toxa
На пробу.
Код:
Инициализация:
И с определением дополнительных методов.
Код:
Инициализация:


Выделить код

Код:

if(!event.target && !this.disabled) // Button's hotkey pressed
    alert("Hotkey for " + (this.name || this.id));
else
    alert("Command from <Code>");

Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№14529Вчера 13:58:39

solombala
Участник
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 422
UA: Firefox 74.0

Re: Custom Buttons

Dumby
Вопрос в новых версиях где hul убрали , с новыми portable32.dll  сдохла кнопка "видео в плеер" , из буфера работает , а просто клик - нет...
Запихал эту новую  portable32.dll в FF 66 - кнопка работает...Заманали...
Это новая portable32.dl не дает убить мультирежим... Это MOZ_FORCE_DISABLE_E10S=1 не катит...

Отредактировано solombala (Сегодня 11:08:01)

Отсутствует

 

№14530Вчера 17:24:40

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

Re: Custom Buttons

У меня опять отвалилась кнопка "Пункт для контекстного меню адресной строки, подставляющий модификаторы поиска"
Упс... Спойлеры не работают, preview сообщения тоже...


Выделить код

Код:

// Пункт для контекстного меню адресной строки, подставляющий модификаторы поиска
// Отсюда https://forum.mozilla-russia.org/viewtopic.php?pid=771818#p771818
(bar => addEventListener("popupshowing", {
    handleEvent(e) {
        if (e.originalTarget != this.popup) return;
        removeEventListener("popupshowing", this, false, bar);

        var sep = this.append("menuseparator", this.popup);
        var menu = this.append("menu", this.popup, {label: "Вставить ^ * + % ~ # @"});
        var popup = this.append("menupopup", menu, {oncommand: "insert(event);"});
        addDestructor(() => sep.remove(menu.remove()));

        this.handleEvent = e => {
            removeEventListener("popupshowing", this, false, popup);
            var df = document.createDocumentFragment();
            for(var label of [
                "^ История",
                "* Закладки",
                "+ Страницы с метками",
                "% Текущие открытые вкладки",
                "~ Набранные",
                "# Названия",
                "@ Веб-адреса (URLs)"
            ])
                this.append("menuitem", df, {label});
            popup.append(df);

            var ed = gURLBar.inputField.editor
                .QueryInterface(Ci.nsIPlaintextEditor);

            popup.insert = e => {
                gURLBar.inputField.focus(); // Код: очистка адресной строки, начало
                gURLBar.inputField.editor.selectAll();
                goDoCommand("cmd_delete");
                gURLBar.view.close();       // Код: очистка адресной строки, конец
                var str = e.target.label[0] + " ";
                var val = gURLBar.inputField.value;
                if (val && !val.endsWith(" ")) str = " " + str;
                ed.endOfDocument();
                ed.insertText(str);
            }
        }
        addEventListener("popupshowing", this, false, popup);
    },
    get popup() {
        delete this.popup;
        return this.popup = gURLBar.inputField.parentNode.menupopup;
    },
    append(name, parent, attrs) {
        var elm = document.createElementNS(xulns, name);
        if (attrs) for(var a in attrs) elm.setAttribute(a, attrs[a]);
        return parent.appendChild(elm);
    }
}, false, bar || 1))(document.getElementById("urlbar"));

Отредактировано xrun1 (Вчера 17:26:08)

Отсутствует

 

№14531Сегодня 02:01:37

toxa
Участник
 
Группа: Members
Зарегистрирован: 11-04-2012
Сообщений: 229
UA: Firefox 56.0

Re: Custom Buttons

Infocatcher
Спасибо за код!
Как-то получается, что я целиком ваш код вижу только при цитировании. А при обычном просмотре только несколько первых строчек.

Отсутствует

 

Board footer

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