На 42 версии перестала работать кнопка, которая раньше открывала окно настроек. Вот её исходники:
Код:
/* ---------------------------------------------------------------------------- Options Button by LouCypher (aka Zoolcar9) Original code is Options Dialog Options extension for Firefox http://loucypher.wordpress.com/projects/extensions/#options-dialog-options ---------------------------------------------------------------------------- */ this.openPrefs();
var brand = document.getElementById("bundle_brand"); var appName = brand.getString("brandShortName"); this.tooltipText = appName + " " + this.label; var appInfo = Components.classes["@mozilla.org/xre/app-info;1"].getService(Components.interfaces.nsIXULAppInfo); var is20 = (appInfo.version >= "2.0") && (appInfo.version != "2.0b1"); this.openPrefs = function(aEvent) { if(aEvent) var paneID = aEvent.target.id; var features = "chrome,titlebar,toolbar,centerscreen,minimizable,resizable"; var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"] .getService(Components.interfaces.nsIWindowMediator); var win = wm.getMostRecentWindow("Browser:Preferences"); if(win) { win.focus(); if(paneID) { var pane = win.document.getElementById(paneID); win.document.documentElement.showPane(pane); } } else openDialog("chrome://browser/content/preferences/preferences.xul", "Preferences", features, paneID); } var cloneCBcontext = { cloneItems: function(aNode, aID, aSeparate) { var menupopup = document.getElementById(aID).cloneNode(true); var menuitems = menupopup.childNodes.length; for(var i = 0; i < menuitems; i++) aNode.appendChild(menupopup.firstChild); if(aSeparate) aNode.appendChild(document.createElement("menuseparator")); }, makeMenu: function(aNode) { var m = aNode.appendChild(document.createElement("menu")); m.setAttribute("label", "Custom Button"); m.setAttribute("oncommand", "event.stopPropagation()"); var mp = m.appendChild(document.createElement("menupopup")); cloneCBcontext.cloneItems(mp, "custombuttons-contextpopup"); aNode.insertBefore(document.createElement("menuseparator"), m); } } function addItem(aNode, aID, aLabel) { mItem = aNode.appendChild(document.createElement("menuitem")); mItem.id = aID; mItem.setAttribute("label", aLabel); } var panes = is20? ["Main", "Tabs", "Content", "Applications", "Privacy", "Security", "Advanced"]: ["General", "Privacy", "Content", "Tabs", "Downloads", "Advanced"]; const popupID = "cbContext-prefsButton"; var test = document.getElementById(popupID); if(test) test.parentNode.removeChild(test); var main = document.getElementById("mainPopupSet"); var cPopup = main.appendChild(document.createElement("popup")); cPopup.id = popupID; cPopup.setAttribute("oncommand", "event.stopPropagation(); document.popupNode.openPrefs(event);") for(var i = 0; i < panes.length; i++) { addItem(cPopup, "pane" + panes[i], panes[i]); } cloneCBcontext.makeMenu(cPopup); this.setAttribute("context", popupID);
Отсутствует
1fesFFFF
Положить просто во вкладку Код без Инициализации.
Лучше спросить у знающих - чем лезть не зная.
Отсутствует
Вот попалась кнопочка :
Отключение-включение WebRTC
custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%3Cname%3EWebRTC%20ON/OFF%3C/name%3E%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJNQTFRFR0dH////lJSUhISER0dHbtlzhoaGh4eHiIiIioqKi4uLjIyMjY2Nj4+PkJCQkZGRkpKSk5OTlJSUl5eXn5+fz8/P1tbW2NjY2tra29vb3Nzc3t7e4ODg4uLi4+Pj5eXl5ubm5+fn6Ojo6enp6+vr7Ozs7e3t8fHx8vLy8/Pz9vb29/f3+fn5+/v7/f39/v7+////DXu3NgAAAAR0Uk5TAACZ5cNwQT4AAACaSURBVBgZBcExTsNAFAXA+Y4tkaQIKS1okOi4/2FSUSBEhSggYLB3HzNVAKmh0jNSt4lMf/kpanSeZvD8jV3GmmbgWhTDaQYcE0mGADw8YewDSGttbfscZQz61iX9fphefke0bWtJ69fp9Gm39pt1XdZta+3m8P6l6jzNeL3D2/qhSh14dEmyhZFcHVwWQBXsswAMIAuAKgDAP60zTjfSoH4UAAAAAElFTkSuQmCC%5D%5D%3E%3C/image%3E%3Cmode%3E0%3C/mode%3E%3Cinitcode%3E%3C%21%5BCDATA%5Bvar%20s%3D%27media.peerconnection.enabled%27%3Bvar%20pref%3DApplication.prefs.get%28s%29%3Bthis.onclick%3Dfunction%28e%29%7Bif%28e.button%3D%3D0%29%7Bpref.value%3D%28pref.value%3D%3Dtrue%29%3Ffalse%3Atrue%3BBrowserReload%28%29%3B%7D%7D%3Bfunction%20toggleImage%28%29%7Bvar%20icon%3Dself.ownerDocument.getAnonymousElementByAttribute%28self%2C%22class%22%2C%22toolbarbutton-icon%22%29%3Bicon.src%3D%28pref.value%3D%3Dtrue%29%3Fself.image%3A%27data%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAI1QTFRF4lpS////lJSUhoaGh4eHiIiIioqKi4uLjIyMjY2NkZGRkpKSk5OTlJSUwUdBz8/P1k9J1tbW2NjY2tra29vb3Nzc3t7e39/f4ODg4uLi4+Pj5eXl5ubm5+fn6Ojo6enp6+vr7Ozs7e3t8fHx8vLy8/Pz9PT09fX19vb29/f3+/v7/Pz8/f39/v7+////frFrRgAAAAN0Uk5TAACZc6XvPgAAAJdJREFUGNNNzrEKwkAURNH71piQKMFSRWLl//9OWsXOLojG7Nsdm0Sc7sDADLaEHbDDDNtIiBKGNmO2XZ8A4AaZIdhiOghPQrOYW4aWoD/vyW0AQO7pyGHqGAoB2R3Z/vPevqwAPHqSUsqli1Wa6imOU4ye6uYx/n5cz8A9PjHDKrjQS5KgAI1U9HFeNwMotZj5x89z4y9fln1GV8ZmHdIAAAAASUVORK5CYII%3D%27%3B%7D%3BtoggleImage%28%29%3BgPrefService.addObserver%28s%2CtoggleImage%2Cfalse%29%3BaddDestructor%28function%28%29%7BgPrefService.removeObserver%28s%2CtoggleImage%2Cfalse%29%7D%29%3B%5D%5D%3E%3C/initcode%3E%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%5D%5D%3E%3C/code%3E%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%3Cattributes/%3E%3C/custombutton%3E
Distance Subordinatio!
Отсутствует
использую дополнение Smart pause for youtube, единственное, что раздражает - невозможность отлючения\включения функционала дополнения посредством вывода соответствующей кнопки на какую либо панель, то есть включать авто паузу и отключать можно лишь в меню дополнений.
прошу помочь с кнопкой, которая включает\выключает автопаузу, при нажатии на неё для данного дополнения. http://puu.sh/lpKZY/4e4c16c481.png
Отсутствует
Ох, точно. Не заметил, так как обычно не пользуюсь данным меню во время просмотра youtube. Спасибо!
Отсутствует
Можно ли сделать, чтобы открывался кукименеджер с куками текущей вкладки.
Кнопка открывает менеджер.
var wm = Components. classes["@mozilla.org/appshell/window-mediator;1"]. getService (Components. interfaces. nsIWindowMediator); var win = wm. getMostRecentWindow ("Browser:Cookies"); if (win) win. focus (); else openDialog ("chrome://browser/content/preferences/cookies.xul", "_blank", "resizable,dialog=yes,centerscreen", null);
Отсутствует
foxboy
var win = Services.wm.getMostRecentWindow("Browser:Cookies"); win && win.close(); var win = openDialog ("chrome://browser/content/preferences/cookies.xul", "_blank", "resizable,dialog=yes,centerscreen", null); win.addEventListener("load", function s(e) { win.removeEventListener("load", s, false); var host = content.location.host, arr = host.split('.'); if ( arr.length > 2 ) host = arr[1] + "." + arr[2]; var filter = win.document.getElementById("filter"); filter.value = host; setTimeout(function() filter.doCommand(), 0); }, false);
Отсутствует
Насчёт кнопки:
Extensions Options Menu
Позволяет перейти к настройкам любого дополнения не открывая about:addons
Можно ли добавить в кнопку следующую функциональность:
1. Добавить возможность создания списка "скрытых" расширений, который бы содержал расширения, которые юзер не хотел бы видеть в меню по ЛКМ.
2. Добавить клик по средней кнопке - СКМ (или длинный клик по левой кнопке - ДЛКМ), который бы открывал бы список "скрытых" расширений
3. Показывать в меню все расширения, в том числе отключённые (другим цветом или как-то по-другому помеченных)
4. Расширить возможности по кликам на меню:
4.1 Длинный левый клик (или по средней кнопке) на менюитем - отключить включенное расширение/включить отключённое расширение.
4.2 По правому клику - добавить менюитем: "Скрыть расширение" для не скрытых расширений или "Раскрыть расширение" для скрытых. Этот менюитем фактически создаёт и управляет списком "скрытых" расширений.
При большом кол-ве расширений предложенная функциональность будет очень удобна юзеру.
Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©
Отсутствует
Для Отключения кэша использую код
/*Initialization Code*/ var c = "browser.cache.disk.enable"; var val = true; this.onclick = function(e) { if ( e.button == 0 ) { custombuttons.setPrefs(c, !custombuttons.getPrefs(c)); } }; function toggleIcon() { pref = Application.prefs.get(c); var icon = self.ownerDocument.getAnonymousElementByAttribute( self, "class", "toolbarbutton-icon"); icon.src = (pref.value == val) ? self.image : 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAABh0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjIyt5EXfQAAAf9JREFUOE990s1LVFEcxvGn2riUMHIYpcFep1KHUnPE8oXSsoG0TVBZjIuobBNEL7OIIaJFBGGLtgPRIkISeiFidBVtok3t+wMi2lUQhk/fc+8dUykHPpwz55zfc8+956zxIUnGb/zC8l9FCwzMq7hsOIx9Q2hDgA+iH93IL6rzgL54P/aoDnIr9iKHZqRXBoSwfUlQty64qAWPI0e/nfHH2L1awGEmjyYheX3wI9kV5Oj3Ml7FrtUChpkcQ6e6XNC831AcDNDv19j/AiZZUGLrJR/QtIfRq4++R2E1cZu2U599XM/dwvwOVXj/EibDR5z1aRbc0XfYdxMvaV8nXtCWcRU3cAXtSGs2BIyQ/NY3k+2GwlDwFE8Sof8qCXtGewpZatIaiY+xR20c35wvMTGFh//wgLFbKERPnnOKmugYBxG+cIey7tO7KD28ykphh4NoVpXCbCiOA0aToxuiPaEJdmJfw/Ulwv/L2B49vcNNcXEcMI4zOIsJ3eeV7Is4h2LS8q19HrkooFAr/hsQQoIj+gSzE3sIec6/D6P0T6ILKU1BNfHtiq3lHjjaQXiNrL46oxm2O+Mt9MNcDxr13htZn5Cn+RNb7zYWtOqnt3JpWnQM8iY00U8xtpm5Rv1wg9ZBgbxzUYYbZm9TmYB6FmtJQNhyPU8tewNrGpSpBfwBp2K7FWnMf0EAAAAASUVORK5CYII='; }; toggleIcon(); gPrefService.addObserver( c, toggleIcon, false ); addDestructor(function() { gPrefService.removeObserver( c, toggleIcon, false ) });
Distance Subordinatio!
Отсутствует
Но после перезагрузки браузера -приходиться каждый раз включать кнопку,может можно как то зафиксировать?
Поместить код во вкладку Инициализация.
/*Initialization Code*/
Отредактировано voqabuhe (08-12-2015 14:16:57)
Отсутствует
voqabuhe
Хитро-не знал!
Респект.
Distance Subordinatio!
Отсутствует
tom911 пишетПодскажите, почему две кнопки создается при добавлении?
А ты при втором запросе на установку кнопки нажми - отмена.
Спасибо, попробую! Уважаемый автор, у вас есть кнопка CB drag and go. Если там возможность сохранения изображения в заданный каталог? Если есть, то что добавить в инициализацию кнопки для этого?
Отредактировано tom911 (09-12-2015 00:24:41)
Отсутствует
У кого нибудь сохраняет эта кнопка? У меня полный молчок. http://forum.mozilla-russia.org/viewtop … 82#p630282
А вообще есть ли такая кнопка чтобы сохраняла страницу, и потом можно было её просмотреть без соединения с интернетом? Кэш у меня отсутствует напрочь, так надо, чтобы без лишних вопросов.
Лучше спросить у знающих - чем лезть не зная.
Отсутствует
У кого нибудь сохраняет эта кнопка? У меня полный молчок. http://forum.mozilla-russia.org/viewtop … 82#p630282
А вообще есть ли такая кнопка чтобы сохраняла страницу, и потом можно было её просмотреть без соединения с интернетом? Кэш у меня отсутствует напрочь, так надо, чтобы без лишних вопросов.
У меня сохраняет скриншот (ФФ-28):
По короткому ЛКМ - начало страницы (независимо от того, какая часть страницы на экране, что плохо), по длинному ЛКМ - всю страницу
Отредактировано difabor (11-12-2015 20:13:46)
Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©
Отсутствует
villa7
Save snapshot to html
Скрин всей страницы штатными средствами.
Отредактировано oleg.sgh (11-12-2015 21:32:48)
Отсутствует
difabor
Я имел ввиду на 42
Тут я ничего сказать не могу, увы
Я боюсь переступать 28 ...
Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©
Отсутствует