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

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

№1397613-12-2019 13:59:57

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 1019
UA: Firefox 52.0

Re: Custom Buttons

solombala пишет:

ПКМ -  на prev Tab - не пашет ( это я па правый переделал  , но сам код не трогал)

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

Выделить код

Код:

                toolbarbutton_0.addEventListener("click", function(event) {
                    var gtBrowser = window.gBrowser;
                    if (event.button == 2) {
                        event.preventDefault();
                        event.stopPropagation();
                        var old = gtBrowser.selectedTab;
                        var tabs = filterTabs(old.parentNode);
                        var last  = 0;
                        var prevTab = null;
                        tabs.forEach((tab)=> {
                            let s = +tab.getAttribute("flipselectedID");
                            if (s && s > last && old != tab) {
                                prevTab = tab;
                                last = s;
                            }
                        });
                        if (prevTab !== null) 
                        gtBrowser.selectedTab = prevTab;
                    } else if (event.button == 1) {
                        gtBrowser.removeAllTabsBut(gtBrowser.selectedTab);
                    } else if (event.button == 0) {
                        gtBrowser.removeTab(gtBrowser.selectedTab);
                    }
                }, false);

Отсутствует

 

№1397713-12-2019 14:31:03

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

Re: Custom Buttons

Dumby
Круто , очень ! Нема речи!

Отсутствует

 

№13978Вчера 16:22:49

unter_officer
Участник
 
Группа: Members
Откуда: Санкт-Петербург
Зарегистрирован: 27-03-2011
Сообщений: 156
UA: Firefox 52.0

Re: Custom Buttons

Есть кнопка Proxy. В ней есть функция:

Выделить код

Код:

// Функция открывает настройки прокси в окне ...................  
function openConnections() {
   self.win && self.win.close();
   self.win = openDialog("chrome://browser/content/preferences/connection.xul", "Proxy", "centerscreen");
   
   // добавить атрибут "prefwindow"
   self.win.addEventListener("load", function f(e) {
       this.removeEventListener("load", f, true); 
       e.target.documentElement.setAttribute("type", "prefwindow");
   }, true);

   // закрыть настройки прокси по клику на странице 
   gBrowser.addEventListener("click", function c() {
      this.removeEventListener("click", c);
      try { self.win.close() } catch(e) {}; 
   }, true);
};

В целом функция работает нормально - открывает настройки прокси в окне, но при этом в консоли появляется ошибка: TypeError: window.opener.gSubDialog is undefined
Поскольку всё работает, ошибка особо не напрягает, но всё же, возможно ли это поправить под [firefox] 68 ESR?

Отсутствует

 

№13979Вчера 16:57:42

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

Re: Custom Buttons

Dumby
Что с мульти в 71? Код config.js  ? В портабл в ini это MOZ_FORCE_DISABLE_E10S=1
Раньше обходилось  config.js и кнопкой   cbu.setPrefs(s, cbu.getPrefs(s) == true ? false : true);
Теперь наглухо только  MOZ_FORCE_DISABLE_E10S .... " Проблема небольшая с раскрытием подробностей в about:addons (кнопки СВ - редактирование) и аддоны тоже..
Шняга  вылазит ..Типа, не может протокол обработать ...
https://forum.mozilla-russia.org/viewto … 94#p775894

Отредактировано solombala (Вчера 17:29:03)

Отсутствует

 

№13980Вчера 20:17:29

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 1019
UA: Firefox 52.0

Re: Custom Buttons

unter_officer пишет:

поправить под [firefox] 68 ESR

Может так

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

Выделить код

Код:

function openConnections() {
    var url = "chrome://browser/content/preferences/connection.xul";
    var win = [...Services.wm.getEnumerator(null)].find(w => w.location == url);
    if (win) return win.focus();

    win = openDialog(url, "Proxy", "centerscreen");
    win.opener = {gSubDialog: {_dialogs: [{
        _frame: {get contentDocument() {
            var args = ["click", win.close.bind(win), true];
            var unload = () => gBrowser.removeEventListener(...args);
            gBrowser.addEventListener(...args);
            win.addEventListener("unload", unload, {once: true});

            delete this.contentDocument;
            return this.contentDocument = win.document;
        }},
        resizeVertically: () => win.sizeToContent()
    }]}};
}


solombala пишет:

Раньше обходилось  config.js и кнопкой

Это похерили ещё в 70. Я пробовал тогда раскопать,
и мне показалось, что вот здесь расклад запрашивается
для решения, запускать ли socket-процесс, а будучи запрошенным,
всё, поздно уже что-то в config.js переставлять.
Но, разумеется, это гадание на кофейной гуще, факт лишь в том,
что работать перестало, и с этим ничего не поделаешь.

solombala пишет:

Шняга  вылазит

Да, у меня воспроизводится, если отключить многопроцессность,
и кликать по названию аддона.
Как любителю правки omni.ja, могу предложить попробовать
добавить e.preventDefault(); в aboutaddons.js, вот сюда

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

Выделить код

Код:

        default:
          // Handle a click on the card itself.
          if (
            !this.expanded &&
            (e.target === this.addonNameEl || !e.target.closest("a"))
          ) {
            e.preventDefault(); // <= ДОБАВИТЬ
            loadViewFn(`detail/${this.addon.id}`, e);
          } else if (

Отсутствует

 

№13981Вчера 20:31:57

unter_officer
Участник
 
Группа: Members
Откуда: Санкт-Петербург
Зарегистрирован: 27-03-2011
Сообщений: 156
UA: Firefox 52.0

Re: Custom Buttons

Dumby пишет:

Может так

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

Выделить код

Код:

function openConnections() {
    var url = "chrome://browser/content/preferences/connection.xul";
    var win = [...Services.wm.getEnumerator(null)].find(w => w.location == url);
    if (win) return win.focus();

    win = openDialog(url, "Proxy", "centerscreen");
    win.opener = {gSubDialog: {_dialogs: [{
        _frame: {get contentDocument() {
            var args = ["click", win.close.bind(win), true];
            var unload = () => gBrowser.removeEventListener(...args);
            gBrowser.addEventListener(...args);
            win.addEventListener("unload", unload, {once: true});

            delete this.contentDocument;
            return this.contentDocument = win.document;
        }},
        resizeVertically: () => win.sizeToContent()
    }]}};
}


То, что надо! Спасибо!

Отсутствует

 

№13982Вчера 21:10:35

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

Re: Custom Buttons

Dumby
На аддонах вроде перестало вылазить...А на кнопках  СВ - также...Может там рихтануть?

Отсутствует

 

№13983Вчера 21:18:56

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 1019
UA: Firefox 52.0

Re: Custom Buttons

solombala пишет:

А на кнопках  СВ - также...Может там рихтануть?

Да, точно, в CB тоже e.preventDefault() надо дописать.
Я добавлю в addons-html.js, спасибо.

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

Выделить код

Код:

    click(e) {
        if (this.cbAddonList && !e.button && !e.target.matches(this.ignoreClickSelectors)) {
            var addon = a(e);
            if (addon) e.stopPropagation(), e.preventDefault(), e.detail == 1 && this.editButton(addon);
        }
    },

Отсутствует

 

№13984Вчера 21:31:03

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

Re: Custom Buttons

Dumby
Курвье  маjка ! Три дня мудохался , пока мульти определил... Благо есть такие врачи ...Хвала, брате! Чува тебе Бог!

browser.tabs.remote.autostart - true // На СВ - влияет , только true !

Отредактировано solombala (Вчера 22:10:50)

Отсутствует

 

Board footer

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