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

Будьте в курсе последних изменений в мире Mozilla, следя за нашим микроблогом в Twitter.

№1432618-02-2020 11:27:46

Garalf
Участник
 
Группа: Members
Зарегистрирован: 19-09-2017
Сообщений: 235
UA: Firefox 74.0

Re: Custom Buttons

Dumby
У меня расширение Right Links WE с чем-то конфликтует в профиле и начинает работать только после отключения-включения расширения на about:addons.
Можно ли кодом это сделать автоматически:
при завершении работы FF - выключать расширение,
а при запуске - включать?

Вопрос снят.

Отредактировано Garalf (21-02-2020 20:53:14)

Отсутствует

 

№1432718-02-2020 13:36:23

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

Re: Custom Buttons

Подскажите, пожалуйста.
Вот я открываю новое окно из дополнения (Custom Buttons или любое другое) с помощью Получается нормальное окно и все в нем работает. Я могу любую ссылку открыть в новой вкладке.
Но если я пробую открыть окошко с параметрами
то в этом окошке новую вкладку создать невозможно. Если в контекстном меню ссылки выбрать "Открыть в новой вкладке", то вкладка открывается в родительском окне. Почему нельзя открыть новую вкладку?

Хочу уточнить что у меня ФФ 56

Выделить код

Код:

window.open('https://google.com/search?q=TEST')

Отредактировано toxa (18-02-2020 13:46:32)

Отсутствует

 

№1432818-02-2020 16:55:10

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 210
UA: Firefox 75.0

Re: Custom Buttons

Andrey_Krropotkin, с твойм исправлением в urlbar вставляет, а в формы нет. До этого никуда не вставлялось.

Твоя кнопка норм работает, правда я css тултипов закомментил, думал перенести insertText, но там коды отличаются пока оставлю так, да и нужно ли вообще может старый удалю, вот там в коде BBCode но я им никогда не пользовался как он работает или вообще работал-ли? там надо по ПКМ вставлять было? ладно посмотрю потом код может пойму)..

Отредактировано func4ptch4 (18-02-2020 17:31:39)

Отсутствует

 

№1432918-02-2020 21:02:51

foxboy
Участник
 
Группа: Members
Зарегистрирован: 06-06-2015
Сообщений: 25
UA: Palemoon 24.0

Re: Custom Buttons

Dumby пишет

«Merge Date»custom_buttons-0.0.7.0.0.9-fx-paxmod.xpicustom_buttons-0.0.7.0.0.9-fx-bootstrap.xpi

Как установить в FirefoxPortableESR 60 или 68 с PortableApps

Отсутствует

 

№1433019-02-2020 12:06:48

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

Re: Custom Buttons

Andrey_Krropotkin
Эндрю, как в detail иконку темы увеличить?
6rkwsrvd.png
Этим зафиксировано..

скрытый текст
.card-heading-icon {
  flex-shrink: 0;
  margin-top: 6px;
  margin-inline-end: 14px;
  margin-inline-start: 5px;
  -moz-context-properties: fill;
  fill: currentColor;
  width: 25px;
  height: 25px;
}

Сам пишу такую шнягуЖ
скрытый текст
@-moz-document  url-prefix(chrome://mozapps/content/extensions/aboutaddons.html) {
addon-card[addon-id^="default-theme@mozilla.org"] {
   длина:
   ширина: 
}

Отсутствует

 

№1433119-02-2020 12:08:26

firepox
Участник
 
Группа: Members
Зарегистрирован: 17-11-2011
Сообщений: 344
UA: Firefox 52.0

Re: Custom Buttons

unter_officer пишет



Спасибо!

есть такая кнопка - "Сохранить всю страницу как PNG"

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


Пожалуйста, помогите подправить, чтобы при нажатии сразу сохранялось сюда - C:\Users\Firepox\Desktop
Без всяких диалогов.
Спасибо!

Выделить код

Код:

/*CODE*/
gBrowser.removeAllTabsBut(gBrowser.selectedTab);

Отредактировано firepox (19-02-2020 12:43:58)

Отсутствует

 

№1433219-02-2020 14:36:38

Andrey_Krropotkin
Участник
 
Группа: Members
Зарегистрирован: 11-11-2011
Сообщений: 412
UA: Firefox 73.0

Re: Custom Buttons

solombala у меня так и тем установленных нет
.card-heading-icon{
    width: 40px !important;
    height: 40px !important;
    padding: 0px !important;
}
addon-list[type=custombuttons] .addon-icon {
    width: 24px !important;
    height: 24px !important;
    padding-top: 4px !important;
}

Отредактировано Andrey_Krropotkin (19-02-2020 14:40:51)

На форуме

 

№1433320-02-2020 14:31:43

Garalf
Участник
 
Группа: Members
Зарегистрирован: 19-09-2017
Сообщений: 235
UA: Firefox 74.0

Re: Custom Buttons

del

Отредактировано Garalf (21-02-2020 20:51:51)

Отсутствует

 

№1433420-02-2020 15:34:58

brom113
Участник
 
Группа: Members
Зарегистрирован: 23-03-2011
Сообщений: 24
UA: Firefox 52.0

Re: Custom Buttons

Уважаемые гуру скриптописания, можно ли в этом коде реализовать (добавить) блокировку контекстного меню на странице?

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


сам код позаимствован отсюда

Выделить код

Код:

addEventListener("click", async e => {
    if (e.buttons != 2 || e.button != 0) return;  // открытие - закрытие FindBar по ПКМ+ЛКМ

    var findbar = gFindBar;
    if (findbar) {
        if (!findbar.hidden) return findbar.close();
    } else {
        findbar = await gFindBarPromise;
        await new Promise(resolve => setTimeout(resolve, 0));
    }
    findbar.onFindCommand();
    
}, false, gBrowser.tabpanels || 1);

Отсутствует

 

№1433520-02-2020 20:30:57

shadow_user
Участник
 
Группа: Members
Зарегистрирован: 14-02-2007
Сообщений: 156
UA: Firefox 68.0

Re: Custom Buttons

brom113 пишет

блокировку контекстного меню на странице?

https://forum.mozilla-russia.org/viewto … 71#p428071

Отсутствует

 

№1433620-02-2020 23:02:02

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4806
UA: unknown 0.0

Re: Custom Buttons

firepox пишет

Пожалуйста, помогите подправить, чтобы при нажатии сразу сохранялось сюда - C:\Users\Firepox\Desktop
Без всяких диалогов.
Спасибо!



Выделить код

Код:

// Настройка функций кликов мыши для кнопки ................ 
this.onclick =e=> {     
   
   if ( e.button == 0 ) savePageInPNG();
   
   if ( e.button == 1 ) gShowPopup(this);
   
   if ( e.button == 2 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey ) {
        e.preventDefault();
        savePageToPDF();
        }
};


// Сохраняет страницу как PDF файл через сервис 'pdfmyurl.com' ................
function savePageToPDF() loadURI("http://pdfmyurl.com?url=" + content.location);

 
// Сохранить всю страницу как PNG ................
function savePageInPNG() {
   var canvas = document.createElementNS(xhtmlns, 'canvas');
   canvas.width = content.innerWidth + content.scrollMaxX; 
   canvas.height = content.innerHeight + content.scrollMaxY;
   var context = canvas.getContext("2d");
   ((i = 17)=> {
      try { context.drawWindow(content, 0, 0, canvas.width, canvas.height, "white") }
      catch(e) { canvas.height = canvas.width*i; arguments.callee(--i); };
   })();
   var uri = makeURI(canvas.toDataURL("image/png"));

   var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsIFile);
   file.initWithPath("C:\\Users\\Firepox\\Desktop\\");
   var title = gBrowser.mCurrentTab.label.replace(/[:+.\\\/<>?*|"]+/g, " ").replace(/\s\s+/g, " ");
   var imgName = title + " " + (new Date().toLocaleString("af")).replace(/:/g, "·");
   file.append(imgName + ".png");
   
   var wbp = window.makeWebBrowserPersist();        
   wbp.saveURI(uri, null, null, null, null, null, file, null);
};


// Подсказка для кнопки ................
this.tooltipText = "Л:  Сохранить всю страницу как PNG \nС:  CB Меню \nП:  Сохранить всю страницу как PDF";

Отсутствует

 

№1433721-02-2020 11:33:56

Garalf
Участник
 
Группа: Members
Зарегистрирован: 19-09-2017
Сообщений: 235
UA: Firefox 74.0

Re: Custom Buttons

bunda1
Может быть вы поможете решить проблему?

Отсутствует

 

№1433821-02-2020 20:16:07

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

Re: Custom Buttons

Dumby
Как стили сделать независимыми от Аэро ? Код нужен  может в config ?
https://forum.mozilla-russia.org/viewto … 08#p778408
Мне то и на ... не нужно , но есть народ упоротый с этим аэро , а рихтовать стили гемморно..

Отредактировано solombala (21-02-2020 20:23:40)

Отсутствует

 

№1433921-02-2020 20:34:16

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4806
UA: unknown 0.0

Re: Custom Buttons

Garalf пишет

bunda1
Может быть вы поможете решить проблему?

:/
В инициализацию. Код после старта браузера через 5 сек выключит и включит Right Links WE

Выделить код

Код:

setTimeout(()=> { 
   var promise = AddonManager.getAddonsByTypes(["extension"]);
      promise.then(addons=> {
         addons.forEach(addon=> { 
            if ( addon.name == "Right Links WE" ) {
                 addon.softDisabled = true;
                 setTimeout(()=> addon.softDisabled = false, 2000);
                 }                                        
         });
      });
}, 5000);

Отсутствует

 

№1434021-02-2020 20:49:39

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

Re: Custom Buttons

bunda1, не поможете с моим вопросом: https://forum.mozilla-russia.org/viewto … 18#p776718

Отсутствует

 

№1434121-02-2020 20:51:18

Garalf
Участник
 
Группа: Members
Зарегистрирован: 19-09-2017
Сообщений: 235
UA: Firefox 74.0

Re: Custom Buttons

bunda1
Премного благодарен!

Отсутствует

 

№1434221-02-2020 21:00:29

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4806
UA: unknown 0.0

Re: Custom Buttons

unter_officer пишет

bunda1, не поможете с моим вопросом: https://forum.mozilla-russia.org/viewto … 18#p776718

Даже не знаю как такое можно сделать. Разве только можно отслеживать иконки 1-connection-secure.png2-connection-mixed-passive-loaded.png3-connection-mixed-active-loaded.png. Но ты наверно хочешь их как то скрыть?

Отсутствует

 

№1434321-02-2020 21:30:11

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

Re: Custom Buttons

bunda1
А нельзя код этот  просто на выключение при выходе? Причем, на пару аддонов?

скрытый текст
setTimeout(()=> {
   var promise = AddonManager.getAddonsByTypes(["extension"]);
      promise.then(addons=> {
         addons.forEach(addon=> {
            if ( addon.name == "Right Links WE" ) {
                 addon.softDisabled = true;
                 setTimeout(()=> addon.softDisabled = false, 2000);
                 }                                       
         });
      });
}, 5000);

Отсутствует

 

№1434421-02-2020 22:07:23

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4806
UA: unknown 0.0

Re: Custom Buttons

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


Выделить код

Код:

setTimeout(()=> { 
   var names = ["Tampermonkey", "Right Links WE"]; // названия аддонов для отключения
   
   var promise = AddonManager.getAddonsByTypes(["extension"]);
      promise.then(addons=> {
         addons.forEach(addon=> {
            if (~names.indexOf(addon.name)) addon.softDisabled = true;
         });
      });
}, 5000);

Отсутствует

 

№1434521-02-2020 22:24:19

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

Re: Custom Buttons

bunda1
Хорошо, только timeout , плюс ...Короче , в этот код запихать?

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


Выделить код

Код:

var closer = {
    observe: function(subject, topic, data) {
       if ( data == "shutdown" ){
var file = Services.dirsvc.get('ProfD', Ci.nsIFile);
         file.initWithPath(file.path + "\\memreduct\\sq.vbs");   
file.launch(); 

}
}
};
Services.obs.addObserver(closer, "quit-application", false);

Отсутствует

 

№1434621-02-2020 22:39:27

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4806
UA: unknown 0.0

Re: Custom Buttons

Как раз в этот код запихать пробовал но не работает:
Наверно причина в том что AddonManager.getAddonsByTypes это асинхронный код, то есть он срабатывает позже, когда браузер уже выключается :rolleyes:

Выделить код

Код:

var observer = {
   observe:(subject, topic, data)=> {
      if ( data == "shutdown" )
           AddonManager.getAddonsByTypes(["extension"]).then(addons=> {
              addons.forEach(addon=> { 
                 if (addon.name == "Right Links WE") addon.softDisabled = true;
              });
           }); 
    }
};
Services.obs.addObserver(observer, "quit-application", false);

Отсутствует

 

№1434721-02-2020 23:23:39

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

Re: Custom Buttons

bunda1
Через ID тоже не сработает? Типа:

скрытый текст
var id = "{ae3cc3e4-1091-48d0-91e0-446601bc2e22}";
AddonManager.getAddonByID(id).then(
    addon => addon[
        addon.userDisabled ? "enable" : "disable"
       
    ]({allowSystemAddons: true}),
    Cu.reportError
);

Отсутствует

 

№1434822-02-2020 03:02:36

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

Re: Custom Buttons

bunda1 пишет

Даже не знаю как такое можно сделать. Разве только можно отслеживать иконки 1-connection-secure.png2-connection-mixed-passive-loaded.png3-connection-mixed-active-loaded.png. Но ты наверно хочешь их как то скрыть?

Жаль конечно, но нет, так нет.
А эти иконки у меня и так скрыты.

Отсутствует

 

№1434922-02-2020 07:42:34

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 210
UA: Firefox 75.0

Re: Custom Buttons

А можно перенести кнопку овновления страницы, в адресную строку и добавить такие функций типа Ctrl+ЛКМ, Ctrl+ПКМ, ну и свой функций к ним прикрутить? можно и отдельно кнопку, и еще можно эту chrome://browser/skin/reload-to-stop.svg к кнопке прикрутить? ну чтобы она смогла обработать как фф, хотя все таки лучше интегрировать чем создавать велосипед снова.

скрытый текст
Как сюда добавить иконку, если переключаю к примеру на другую функцию он переключает, и обратно возвращает свою что то смотрел примеры но походу я слишком туп, пробовал : ?  применить...

Хотя нет не надо, передумал еще с иконками возиться потом ... главное функциональность.
но от примера не отказался бы просто для себя.

Выделить код

Код:

  if(e.button==0)BrowserOpenAddonsMgr(); 
  if(e.button==2)History();

Отредактировано func4ptch4 (22-02-2020 09:56:57)

Отсутствует

 

№1435023-02-2020 14:58:10

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

Re: Custom Buttons

VORON пишет

На 54-й лисе была у меня кнопка
Можно для 68го что-то с ней придумать

Выкинули поддержку Expression closures, а так-то, может и будет работать.

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


toxa пишет

Получается нормальное окно и все в нем работает.
Но если я пробую открыть окошко с параметрами

В параметре нехватает фич. Попробуй, для начала, побольше:
"toolbar,location,personalbar,menubar,resizable,scrollbars,width=500,height=500"

foxboy пишет

Как установить в FirefoxPortableESR 60 или 68 с PortableApps

Так же, как и в любой другой. Не думаю, что эти чем-то особенные.
В 60 всё-таки, возможно, лучше устанавливать оверлейную версию.

brom113 пишет

в этом коде реализовать (добавить) блокировку контекстного меню

Вариант

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


bunda1 пишет

Наверно причина в том что AddonManager.getAddonsByTypes это асинхронный код, то есть он срабатывает позже, когда браузер уже выключается

Когда браузер выключается, ведь не требуется выключать собственно сами "расширения",
достаточно просто пометить их в базах как выключенные.

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


func4ptch4 пишет

А можно перенести кнопку овновления страницы, в адресную строку и добавить такие функций типа Ctrl+ЛКМ, Ctrl+ПКМ

Перенести-то можно, но кто её там стилизировать будет?

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


Выделить код

Код:

this._handleClick = () => {
    // очистить кэш ....
    Services.cache2.clear();

    // Удалить Flash куки ....
    var dir = Services.dirsvc.get("Home", Ci.nsIFile);
    ["Application Data", "Macromedia"].forEach(dir.append);
    dir.exists() && dir.remove(true);
    dir.exists() || dir.create(Ci.nsIFile.DIRECTORY_TYPE, parseInt("0777"));

    // Всплывающее сообщение ....
    Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService)
        .showAlertNotification(self.image, self.label, "Очистил кэш и удалил Flash куки");
}

// Всплывающая подсказка у счётчика отображает заполнение дискового кеша ..............
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, ind) {
    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(ind), inf);
}
var zws = ind => "\u200B".repeat(++ind);

var types = Object.keys(data);
var context = Services.loadContextInfo.default;
var ttt = "Л: Очистить кэш и удалить Flash-куки\n" +
    types.map((key, ind) => data[key] + zws(ind)).join("\n");

function visit(type, ind) {
    var storage = Services.cache2[(type[0] == "o" ? "app" : type) + "CacheStorage"](context, null);
    try {storage.asyncVisitStorage({
        onCacheStorageInfo: (a, aConsumption, aCapacity) =>
            setInf(aConsumption, aCapacity, type, ind)
    }, false)} catch(ex) {};
}
self.onmouseenter = () => {
    this.tooltipText = ttt;
    types.forEach(visit);
}

Отсутствует

 

Board footer

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