Добрый день. Есть код ,приведённый ниже, работает исправно, но не работает на SSD. Работает на 3 ноутбуках с HDD а на SSD нет. Сборка везде одна FF71 , Win7 , все FF лежат на диск С , все пути к открываемым папкам одинаковые и не работает, код пытается запустить "Выбор программы для открытия этого файла", а надо просто открыть папку, по прописанному пути.
/*Initialization Code*/ this.onclick =e=> { e.button == 0 && runApp(); // ЛКМ }; function runApp() { var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsIFile); file.initWithPath( getPath() ); file.launch(); }; function getPath() { try { return Services.prefs.getComplexValue(s, Ci.nsIPrefLocalizedString).data; } catch(e) { return "C:\\Мои документы\\"; }; };
P.S. Такой же эффект, если эта же FF71 запускается с usb Флешки . Почему не любит "камни" не пойму.
Отредактировано Duche (18-08-2020 17:52:55)
Отсутствует
Dumby
А вы универсальную кнопочку не делали для включения/выключения любого расширения, например, по uuid. C иконкой (а если с двумя, по статусу, то вообще шикарно будет), что бы еще и в ucf работала.
Хотел примеры привести, да и так понятно, что некоторые аддоны легче включить жмякнув по кнопке, чем лезть в меню, да и тех что иногда требуется отключить, а авторами это не предусмотрено (нет значка), не мало.
Если не делали, то большая просьба сделать, как время будет.
Отсутствует
Dumby
У Vitaliy V. была кнопка в боковой панели закладок Открыть все папки, Закрыть все папки. Но биндинг больше не работает, а очень не хватает этой удобной кнопочки в FF79 . Может поможете с этой кнопкой для user_chrome_files или для Custom Buttons.
Отсутствует
rubel
Там была ещё одна не-кнопка, а ПКМ. Когда ищешь в закладках, можно было по ПКМ перейти в папку. Я как-то спрашивал Виталия, он ответил - будет настроение, посмотрю. Наверное, этот вопрос лучше адресовать Виталию.
Отсутствует
Question
https://github.com/Infocatcher/Custom_Buttons/tree/master/Toggle_Restartless_Add-ons
https://forum.mozilla-russia.org/viewtopic.php?pid=780415#p780415
У меня https://forum.mozilla-russia.org/viewtopic.php?pid=776221#p776221, не о том речь.
https://forum.mozilla-russia.org/viewtopic.php?pid=776221#p776221
Не смог прикрутить к ucf.
https://github.com/dartraiden/Linkification/raw/master/linkification.user.js
Вы к тому как ваши ссылки смотреть? ) Иначе я ничего полезного там не увидел.
Отредактировано _zt (26-08-2020 18:19:06)
Отсутствует
А вы универсальную кнопочку не делали для включения/выключения любого расширения, например, по uuid. C иконкой (а если с двумя, по статусу, то вообще шикарно будет), что бы еще и в ucf работала.
Хотел примеры привести, да и так понятно, что некоторые аддоны легче включить жмякнув по кнопке, чем лезть в меню, да и тех что иногда требуется отключить, а авторами это не предусмотрено (нет значка), не мало.
Если не делали, то большая просьба сделать, как время будет.
Ну, предусмотренное авторами отключение, это, наверно, не то же самое, что выключить сам аддон.
А выключатель аддона с иконкой да, вроде пытался сочинить для CB, не знаю нормально ли работает, но могу
попробовать какую-нибудь диспетчерскую шапку добавить, типа как бы код — генератор переключающих виджетов.
Статусов, вообще-то, больше двух. Важный статус — «не установлено/удалено», плюс ещё парочка неважных.
Вобщем, задумано так: иконка берётся из статуса рядом с id'шником, если нет — из статуса defaultImages,
если и там нет, тогда стандартная лисья extension.svg, покрашенная, соответственно статусу, цветом из colors.
Специальный код, чтоб сохранять состояние в(ы)ключенности Firefox Screenshots, не предусмотрен (надеюсь не надо).
try {(async (id, func, g) => ChromeUtils.getClassName(this) == "Sandbox" && !func(id).initialize(CustomizableUI) || (g = Cu.getGlobalForObject(Cu)) && (await (g[id] || (g[id] = new Promise(async resolve => resolve((await ChromeUtils.compileScript("data:;charset=utf-8," + encodeURIComponent(`(${func})("${id}")`))).executeInGlobal(g) || g[id])) ))).init(globalThis.XULElement?.isInstance(this) && addDestructor))("ToggleAddonWidgetsGenerator", (id, am, cui, sym) => this[id] = { addons: { "treestyletab@piro.sakura.ne.jp": { Enabled: "chrome://browser/skin/preferences/face-smile.svg", Disabled: "chrome://browser/skin/preferences/face-sad.svg", }, "uBlock0@raymondhill.net": { }, "firefox-compact-dark@mozilla.org": { }, /* "{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}": { Enabled: "data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQ==", Disabled: "data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQ==", Installing: "data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQ==", Uninstalled: "data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD/AACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQ==", Uninstalling: "data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////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///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///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///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///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///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///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///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///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQ==" }, */ }, defaultImages: { Enabled: "", Disabled: "", Installing: "", Uninstalled: "", Uninstalling: "chrome://pocket/content/panels/img/pocketerror@1x.png" }, colors: { Enabled: "#00c800", Disabled: "red", Installing: "white", Uninstalled: "blue", Uninstalling: "yellow" }, tooltips: { Enabled: "Enabled", Disabled: "Disabled", Installing: "Installing", Uninstalled: "Not installed", Uninstalling: "Uninstalling" }, //================================================================== noop() {}, init(adtor) { this.initialize(); (this.init = adtor ? d => d(this.destructor, this) : this.noop)(adtor); }, destructor(reason) { reason[5] == "e" && this.destroy(); }, destroy() { this.destroy = this.noop; delete globalThis[id]; am.removeAddonListener(this); this.unregStyle?.(); for(let [, id] of this.widgets) cui.destroyWidget(id); }, initialize(cst) { sym = Symbol(id); cui = cst || ChromeUtils.import("resource:///modules/CustomizableUI.jsm").CustomizableUI; for(let id in this.addons) { var a = this.addons[id]; a.Installed = a.OperationCancelled = sym; this.createWidget(id); } }, labelPrefix: "Toggle ", svg: "chrome://mozapps/skin/extensions/extension.svg", widgets: new Map(), idPrefix: "wdgt_toggle_addon_", createWidget(id) { var onCreated = async btn => { btn._handleClick = this.click; this.upd(btn, null, await am.getAddonByID(btn.addonId = btn.tooltipText)); var pn = btn.parentNode; if (pn.nodeName == "toolbarpaletteitem") pn.setAttribute("title", btn.getAttribute("label")), pn.tooltipText = btn.tooltipText; } var re = /[^a-z0-9_-]/g; (this.createWidget = id => this.widgets.set(id, cui.createWidget({ localized: false, tooltiptext: id, onCreated, id: this.idPrefix + id.toLowerCase().replace(re, "_") }).id))(id); }, get click() { am = ChromeUtils.import("resource://gre/modules/AddonManager.jsm").AddonManager; for(var key of "Enabled Disabled Installing Uninstalled Uninstalling Installed OperationCancelled".split(" ")) this["on" + key] = this.onAddon.bind(this, key); am.addAddonListener(this); var tbb = `\ttoolbarbutton[id^=${this.idPrefix}]`; var fill = (state, color) => `${tbb}:not([image])[state=${state}] {\n\t\tfill: ${color} !important;\n\t}\n`; var css = "@-moz-document url(chrome://browser/content/browser.xhtml) {\n\n" + tbb + ` {\n\t\tlist-style-image: url(${this.svg}) !important;\n\t}\n` + tbb + " > .toolbarbutton-icon {\n\t\tmin-height: 16px !important;\n\t}\n\n"; for(var args of Object.entries(this.colors)) css += fill(...args); var subst = id + "-style"; var io = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService); var setSubst = io.getProtocolHandler("resource") .QueryInterface(Ci.nsIResProtocolHandler).setSubstitution.bind(null, subst); setSubst(io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(css + "}"))); var sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService); var uri = io.newURI("resource://" + subst), type = sss.USER_SHEET; sss.loadAndRegisterSheet(uri, type); this.unregStyle = () => setSubst(null, sss.unregisterSheet(uri, type)); var arg = {allowSystemAddons: true}; delete this.click; return this.click = async function() { var addon = await am.getAddonByID(this.addonId); addon?.[addon.userDisabled ? "enable" : "disable"](arg); } }, onAddon(key, addon) { var id = this.widgets.get(addon.id); if (id) for(var {node} of cui.getWidget(id).instances) this.upd(node, key, addon); }, upd(btn, key, addon) { var data = this.addons[btn.addonId]; if (!key || data[key] == sym) { if (!addon) key = "Uninstalled"; else if (addon.pendingOperations & am.PENDING_UNINSTALL) key = "Uninstalling" else if (addon.pendingOperations & am.PENDING_INSTALL) key = "Installing"; else key = addon.isActive ? "Enabled" : "Disabled"; } btn.setAttribute("state", key); var img = data[key] || this.defaultImages[key]; img ? btn.setAttribute("image", img) : btn.removeAttribute("image"); var name = key == "Uninstalled" ? btn.addonId : addon.name; btn.setAttribute("label", this.labelPrefix + name); btn.tooltipText = name + "\n" + this.tooltips[key]; } });} catch(ex) {Cu.reportError(ex);}
У Vitaliy V. была кнопка в боковой панели закладок Открыть все папки, Закрыть все папки. Но биндинг больше не работает, а очень не хватает этой удобной кнопочки в FF79 . Может поможете с этой кнопкой для user_chrome_files
Я так понимаю больше не нужно. А переложить пробовал так
try {(lst => { var type = "MozBeforeInitialXULLayout", sidebar = document.getElementById("sidebar"); sidebar.addEventListener(type, lst, true); addEventListener("unload", () => sidebar.removeEventListener(type, lst, true), {once: true}); })({ handleEvent(e) { var parent = e.target.querySelector(":root:is(#bookmarksPanel,#history-panel) > #sidebar-search-container"); parent && this.insert(parent); }, insert(parent) { var df = parent.ownerGlobal.MozXULElement.parseXULToFragment(` <hbox> <toolbarbutton onclick="toggleState(event)" id="sidebar-button-toggle-state" tooltiptext="ЛКМ: Закрыть все папки верхнего уровня
((Ctrl или Shift) и ЛКМ) или СКМ: Закрыть все папки
ПКМ: Открыть все папки" /> <html:style><![CDATA[ #sidebar-button-toggle-state { list-style-image: url('data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 48 48">%0A%09<g>%0A%09%09<path d="M 2.438,0 C 1.087,0 0,1.088 0,2.438 V 45.56 C 0,46.91 1.087,48 2.438,48 H 45.56 C 46.91,48 48,46.91 48,45.56 V 2.438 C 48,1.088 46.91,0 45.56,0 Z" style="fill:%230078ad;fill-opacity:1;" />%0A%09%09<path style="opacity:0.25;fill:%23000000;" d="M 5,11 V 39.5 L 13.5,48 H 45.5 C 47,47.9 47.9,47 48,45.5 V 13.6 L 43.4,9 10,8 Z"/>%0A%09%09<path style="fill:%23ffffff;" d="M 10.9,6 H 37.1 C 41.6,6 45,9.48 45,13.7 V 34.3 C 45,38.7 41.6,42 37.1,42 H 10.9 C 6.51,42 3,38.7 3,34.3 V 13.7 C 3.03,9.48 6.54,6.03 10.9,6 Z M 39.7,34.3 V 13.7 C 39.7,12.3 38.7,11.1 37.1,11.1 H 24 V 36.8 H 37.1 C 38.7,36.8 39.7,35.8 39.7,34.3 Z M 8.25,34.3 C 8.25,35.8 9.42,36.8 10.9,36.8 H 21.4 V 11.1 H 10.9 C 9.42,11.1 8.25,12.3 8.25,13.7 Z" />%0A%09%09<path style="fill:%23ffffff;" d="M 12,16.3 H 17.7 C 18.4,16.3 19,15.7 19,15 19,14 18.4,13.4 17.7,13.4 H 12 C 11.2,13.4 10.6,14 10.6,15 10.6,15.7 11.2,16.3 12,16.3 Z M 12,21.8 H 17.7 C 18.4,21.8 19,21.3 19,20.5 19,19.6 18.4,19 17.7,19 H 12 C 11.2,19 10.6,19.6 10.6,20.5 10.6,21.3 11.2,21.8 12,21.8 Z M 14.9,27.4 H 17.7 C 18.4,27.4 19,26.8 19,26.1 19,25.1 18.4,24.6 17.7,24.6 H 14.9 C 14,24.6 13.4,25.1 13.4,26.1 13.4,26.8 14,27.4 14.9,27.4 Z" />%0A%09</g>%0A</svg>') !important; min-width: 0 !important; -moz-appearance: none !important; border: none !important; background: none !important; margin: 1px !important; padding: 4px !important; } #sidebar-button-toggle-state:hover { background: hsla(240, 5%, 5%, .1) !important; } #sidebar-button-toggle-state:hover:active { background: hsla(240, 5%, 5%, .15) !important; } ]]></html:style> </hbox> `); (this.insert = pn => { pn.prepend(pn.ownerDocument.importNode(df, true)); var btn = pn.firstChild.firstChild; btn.toggleState = this.toggleState; btn.tree = pn.nextSibling; })(parent); }, toggleState(e) { if (this.start) return; this.start = true; var {view} = this.tree; var close = e.button < 2; var closeAll = e.button == 1 || e.button == 0 && (e.ctrlKey || e.shiftKey); var index = view.rowCount, i; if (closeAll) for(i = index; i >= 0; i--) view.isContainer(i) && view.isContainerOpen(i) && view.toggleOpenState(i); else for(i = 0; i < index; i++) { if (!view.isContainer(i) || view.isContainerOpen(i) != close) continue; view.toggleOpenState(i); index = view.rowCount; if (close) continue; var node = view._rows[i]; if (node.type == node.RESULT_TYPE_QUERY) i += node.childCount; } this.start = false; } });} catch(ex) {Cu.reportError(ex);}
А что, в FF81 отключили однопроссорный режим? Можно ли его включить?
Отредактировано Dumby (27-08-2020 02:16:01)
Отсутствует
Dumby
Шикарно, даже лучше чем просил. Спасибо.
ps^ Firefox Screenshots не нужен.
ps2^
Ну, предусмотренное авторами отключение, это, наверно, не то же самое, что выключить сам аддон.
Да и так хорошо.
Отредактировано _zt (27-08-2020 17:02:08)
Отсутствует
Dumby, а где править надо?
Ну я же не телепат, а ты не рассказал как отключаешь.
Править надо там, где устанавливается значение переменной среды.
Вместо единицы — номер версии Firefox.
Отсутствует
Dumby
Отключаю в config.js:
try {
Components.interfaces.nsIUDPSocketChild ||
Cc["@mozilla.org/process/environment;1"].getService(Ci.nsIEnvironment).set(
"MOZ_FORCE_DISABLE_E10S",
Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch)
.getBoolPref("browser.tabs.remote.autostart", true) ? "" : "1"
);
} catch(ex) {}
и portable.ini
MOZ_FORCE_DISABLE_E10S=1
Отредактировано Garalf (28-08-2020 11:39:18)
Отсутствует
Garalf
try {
Components.interfaces.nsIUDPSocketChild ||
Cc["@mozilla.org/process/environment;1"].getService(Ci.nsIEnvironment).set(
"MOZ_FORCE_DISABLE_E10S",
Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch)
.getBoolPref("browser.tabs.remote.autostart", true) ? "" : "1"
);
} catch(ex) {}
MOZ_NO_REMOTE=1 ? Это на профиль , а не на мультирежим!
Верхний код - на...
В код это lockPref("browser.tabs.remote.autostart", false); А это в ini MOZ_FORCE_DISABLE_E10S=1
Если портабл еще и от Dll портабла зависит...Хотя и это не катит...Править надо.Это к специалисту.
Отредактировано solombala (28-08-2020 11:50:37)
Отсутствует
Отключаю в config.js:
try {
Components.interfaces.nsIUDPSocketChild ||
Cc["@mozilla.org/process/environment;1"].getService(Ci.nsIEnvironment).set(
"MOZ_FORCE_DISABLE_E10S",
Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch)
.getBoolPref("browser.tabs.remote.autostart", true) ? "" : "1"
);
} catch(ex) {}
Не-не, это (псевдо)девелоперский код, рефлексирующий pref —> env
Как установщик для «холодного старта» устарел (убит, неэффективен) сто лет назад.
Но, при замене "1" на версию, наверно, будет работать в цепочке рестартов.
и portable.ini
MOZ_FORCE_DISABLE_E10S=1
Вот здесь пробуй
MOZ_FORCE_DISABLE_E10S=81.0
и отпишись о результате.
Отсутствует