alert(2+2);
Спасибо за ответ! Только грусто и абыдно за мурзилку... Нифига в ней не робит... Пробовал вообще на голой, только что поставленной 2.49.5 и нифига... Кнопка нажимается и усё... На старых кнопках даже хинты показываются, а действия не запускаются... Самое невероятное, что в аддонс манагер тоже все красиво - есть отдельная категория custom buttons с кнопками, которые абсолютно нормально удаляются там. Отсюда вопрос, а оно вообще на 2.49.х работает? Уж больно ценное приложение и такой жестий обломс...
Отсутствует
skuwakin
Попробуйте эту версию: https://forum.mozilla-russia.org/viewto … 96#p755496 или эту: https://forum.mozilla-russia.org/viewto … 43#p744943
Отредактировано kokoss (04-06-2020 21:43:27)
Win7
Отсутствует
Можно в кнопке "Яркость" заменить (добавить) иконку с цифрами (процентами), соответствующим уровням?
/*Initialization Code*/// Настройка функций кликов мыши для кнопки .......... this.onclick =e=> { // действие при клике ЛКМ .... if ( e.button == 0 ) setStyleForPages( cbu.setPrefs(s, !cbu.getPrefs(s)) ) // действие при клике СКМ .... if ( e.button == 1 ) gShowPopup(this); // действие при клике ПКМ .... if ( e.button == 2 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey ) { e.preventDefault(); menuPopup.showPopup(this, -1, -1, "popup", "bottomleft", "topleft") } }; // Колёсиком мыши на кнопке менять яркость в настройках и стиле .......... this.onwheel =e=>{ var i = cbu.getPrefs(l), i = e.deltaY < 0 ? i + step : i - step; if ( 0 <= i && i <= 99 ) cbu.setPrefs(l, i); setStyleForPages( cbu.setPrefs(s, true) ); }; // Исправить проблему с position для изображений .......... addEventListener("mouseover", e=>{ if ( e.button || e.target.localName !== 'img' ) return; var img = e.target, node = img; if ( getPosition(img) == 'absolute') { img.setAttribute('currentPosition', 'true'); return; }; while( node = node.parentNode ) { if ( getPosition(node) == 'relative' ) break; if ( getPosition(node) == 'absolute') { img.setAttribute('parentPosition', 'true'); break; }; }; function getPosition(node) { try { return getComputedStyle(node, '').position } catch(e) { return "" } }; ; }, false, gBrowser); // Получить настройки кнопки и css код из вкладки Справка .......... var step = 2, s = "CB.darken", help = self.getAttribute('Help'), l = "CB.darken.level"; // Создать настройки кнопки в about:config если они не существует .......... cbu.isPref(l, 28); cbu.isPref(s, false); // Установить нужную иконку кнопки при старте браузера или при изменениях настроек кнопки .......... function toggleImage() { self.ownerDocument.getAnonymousElementByAttribute(self, "class", "toolbarbutton-icon"). src = !cbu.getPrefs(s) ? self.image : "data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBSUlIAPT09ADo6OgI4ODgFNzc3IjY2NjZeXl62WVlZvI6Ojt+QkJDpmZmZ+VNTU7QvLy8NQEBAAE9PTwD///8ATk5OAVNTU1iIiIjGn5+f1Kenp/Cbm5v42tra/9DQ0P/R0dH/6Ojo/+bm5v+zs7P/bm5uz1xcXHBSUlIl////AJWVlb7i4uL/6enp//Hx8f/w8PD/7u7u//f39//t7e3/3d3d//Dw8P/x8fH/7+/v/8fHx/+6urr/cHBwc////wCXl5d719fX7erq6v/m5ub/4ODg//r6+v/19fX/yMjI/7u7u//29vb/5ubm/9zc3P+zs7PmeHh4VFpaWgn///8Ag4ODAISEhBilpaV7+fn5//Hx8f/29vb/9/f3/9/f3//Gxsb/7u7u/9zc3P+ioqL/cHBw7EhISItMTEwP////AIaGhgCHh4cAfn5+FaWlpbTU1NT/3t7e/+zs7P/39/f/z8/P/7Kysv+enp7/o6Oj/5+fn/9OTk6OSEhIIP///wCIiIgAiIiIAHZ2dgJTU1NPiIiI/52dnf+bm5v/qKio/5CQkP+JiYn/mJiY/6+vr/+tra3/Xl5ez0dHR0T///8Ae3t7AIWFhQB5eXkeY2Njio2NjfisrKz/nJyc/5OTk/+VlZX/oKCg/6ysrP+1tbX/qKio/11dXb5HR0cY////AG5ubgBycnIAeHh4AGRkZC99fX34s7Oz/7Ozs/+vr6//r6+v/7Kysv+zs7P/rq6u/5eXl/9VVVV4RkZGM////wA/Pz8Aa2trAHh4eAN2dnY/ZmZmbpeXl/+xsbH/srKy/7Gxsf+vr6//q6ur/6mpqf9ubm7iTExMTEtLSwD///8AKioqAHR0dAB4eHgAdHR0AHFxcUhubm6kj4+P8KioqP+tra3/rKys/5+fn/hzc3PtVFRULExMTB9LS0sC////ABQUFAAaGhoAeHh4AHR0dAB1dXUPbGxsAGpqapBxcXF5eHh40HJycp5hYWGFVFRUMVNTUylMTEwAS0tLAP///wAAAAAAAAAAAHh4eAB0dHQAdHR0AG9vbwZvb28OaGhoBGZmZkVgYGAAXV1dL1dXVwBTU1MATExMAEtLSwD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A//8AAP//AADgAwAAgAAAAIAAAACAAAAAwAAAAOAAAADgAAAA4AAAAPAAAADgAQAA+AAAAPoDAAD8LwAA//8AAA=="; }; toggleImage(); gPrefService.addObserver(s, toggleImage, false); addDestructor(()=> gPrefService.removeObserver(s, toggleImage)); // Переключить css стиль для страницы .......... function setStyleForPages() { var sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService); var css = help.replace(/value/g, cbu.getPrefs(l)/100 ); var uri = makeURI("data:text/css," + encodeURIComponent(css)); try { sss.unregisterSheet(previousUri || uri, 0) } catch(e) {}; previousUri = uri; cbu.getPrefs(s) && sss.loadAndRegisterSheet(uri, 0); }; cbu.getPrefs(s) && setStyleForPages(); // Подсказка для кнопки .......... this.tooltipText = "Л: Переключить яркость страниц \nС: CB Меню \nП: Открыть меню кнопки Save \nКолёсиком мыши на кнопке можно менять яркость страниц";
Отредактировано manuk (05-06-2020 12:03:27)
Отсутствует
Какой код на нажатие здесь?
"Восстановить набор поисковых...."
(async (observers, ind) => { observers = Array.from(observers, obs => obs.wrappedJSObject).filter( obs => obs && "_syncFromShowSearchSuggestionsFirstPref" in obs ); if (observers.length) for(var obs of observers) obs.onRestoreDefaults(); else { for(var engine of await Services.search.getDefaultEngines()) engine.hidden = false, await Services.search.moveEngine(engine, ind++); Services.search.resetToOriginalDefaultEngine(); } })(Services.obs.enumerateObservers("browser-search-engine-modified"), 0);
заменить
function toggleImage() { var [img, lab] = document.getAnonymousNodes(self); var darken = img.hidden = Services.prefs.getBoolPref(s); lab.style.display = darken ? "-moz-box" : "none"; darken && lab.setAttribute("value", ("0" + Services.prefs.getIntPref(l)).slice(-2)); }
Отредактировано Dumby (05-06-2020 14:41:16)
Отсутствует
Dumby
Это код замечательный в /*Initialization Code*/ не будет тормозить? Может в рестарт ?
Последнее...В 77 пароли заделал от 76 . Короче, passwordmgr - passwordManager.js и т.д Но в passwordManager.js это не работает и иконки 32 так и остаются
return PlacesUtils.urlWithSizeRef(window, "page-icon:" + signon.origin, 16);
Кстати, я могу теперь в однопроцессе смотреть сертификаты и куки !
Отредактировано solombala (05-06-2020 16:00:13)
Отсутствует
... Кстати, я могу теперь в однопроцессе смотреть сертификаты и куки !
Отредактировано solombala (Сегодня 16:00:13)
уже захотелось 77 попробовать ...
Win 10х64
Отсутствует
skuwakin
Попробуйте эту версию: https://forum.mozilla-russia.org/viewto … 96#p755496 или эту: https://forum.mozilla-russia.org/viewto … 43#p744943
Огромное спасибо! Подписанный из первой ссылки заработал!
Отсутствует
в /*Initialization Code*/ не будет тормозить? Может в рестарт ?
Зависит от задачи, описание которой не предоставлено.
(действительно, зачем объяснять свой замысел, правда же?)
Код исходит из предположения, что будет использоваться по клику.
Короче, passwordmgr - passwordManager.js и т.д
Что «и т.д»? chrome://global/skin/passwordmgr.css обратно на место положил?
А то, судя по скрину, что-то не похоже.
ЧЯДНТ?
Нужен URL получившейся кнопки, я же не телепат.
Отсутствует
Dumby
Ясен пень положил. И еще есть папка passwordmgr , в ней passwordManager.xhtml и passwordManager.js
В этом js есть return PlacesUtils.urlWithSizeRef(window, "page-icon:" + signon.origin, 16); Вот только иконки не всегда 16 , прет и 32 и 48 ...
Пришлось так: return PlacesUtils.urlWithSizeRef(window, "page-icon:" ); Теперь просто из скина дефолтная иконка появляется...В 76 норм , там четко иконки из закладок(16х16)
Отсутствует
Кстати, я могу теперь в однопроцессе смотреть сертификаты и куки !
Расскажи, как ты это сделал?
«The Truth Is Out There»
Отсутствует
Отсутствует
solombala, спасибо.
«The Truth Is Out There»
Отсутствует
Вот только иконки не всегда 16 , прет и 32 и 48
16 может просто не быть, это же не значит, что она должна отображаться не 16.
Странно, если и во вкладке с адресом chrome://global/skin/passwordmgr.css
css-код виден, то тогда не знаю.
Может попробуй в userChrome.css добавить
@-moz-document url(chrome://passwordmgr/content/passwordManager.xhtml) { treechildren::-moz-tree-image(siteCol) { width: 16px !important; height: 16px !important; margin-inline-end: 5px !important; } }
Отсутствует
Dumby
Код сработал...Потом полез в скин , а passwordmgr.css был выкинут ...От я будала...
Опять эта шняга в about:addons .... aboutaddons.js - все перерыл вроде это повтыкал e.preventDefault(); , один черт иногда вылазит..
Вроде сделал , не выскакивает...А, что в 77 в адресе зависает #identity-icon-label - аддоны, в смысле ...Вкладки закрыл, а фигня торчит Firefox/addons
Да, эти три точки в кнопках (.more-options-button) вверх поднять?
Отредактировано solombala (06-06-2020 12:49:04)
Отсутствует
Имеется пробная кнопка:
----------------------------------------------------------------------
var loader = Components.classes[ "@mozilla.org/moz/jssubscript-loader;1" ].getService( Components.interfaces.mozIJSSubScriptLoader );
loader.loadSubScript("file:///D:/temp/list.js");
var alertsService = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService);
var image = "no"
var title = foo();
var notification = array.join("\r\n");
alertsService.showAlertNotification(image, title, notification);
----------------------------------------------------------------------
использующая импорт внешнего js-кода
list.js (кодировка ср1251):
----------------------------------------
var EXPORTED_SYMBOLS = ["foo", "array"];
function foo() { return "Привет мир"; }
array = ["Знание сила","Вместе победим"]
----------------------------------------
При нажатии выдает символы Window-1252 (ISO-8859-1)
как можно добиться корректного (Window-1251) вывода?
Отредактировано ruslaw (07-06-2020 23:24:40)
Отсутствует
Да, эти три точки в кнопках (.more-options-button) вверх поднять?
А что, так разве не работает?
addon-card[addon-id^="custombutton://buttons/"] button.more-options-button { margin-top: -10px !important; }
Сохраняйте всё в UTF-8.
На Firefox 52 это не поможет. Всё равно в loadSubScript()
третьим аргументом придётся указывать charset ("windows-1251" или "utf-8").
esr52 mozIJSSubScriptLoader.idl
Отсутствует
Dumby
А что, так разве не работает?
Благодао! Вроде так и делал, так да не так. .. intl.accept_languages - в 77 на проксях проосто не того...Языка нет, но сервер проверочный гонит на отличие языка...
Нашел скрипт , что на прокси использует searchregion , выкинул и до фени...А вот как локаль не ru , тогда все норм...Достаточно выкинуть update.locale из omni.ja ...
Что за поганку завернули c локалью ? Mожет код какой замастырить? Выбросил update.locale , intl.locale.requested - ru , до черта...
Отредактировано solombala (08-06-2020 00:57:18)
Отсутствует