Dumby подскажи пожалуйста код скрытия контекстного меню, если код предназначен только для страницы, а не для выделенного текста или медиа и ссылок
Для выделенного текста я использую
addEventListener('popupshowing', e=> { if (e.target != e.currentTarget) return; var sel = gContextMenu.isTextSelected; menu.hidden = !sel; }, false, contextMenu);
Dumby Подскажи - команда или код для расширений - Закрепить и открепить на панели расширений (toolbar-context-pin-to-toolbar)
Garalf простая кнопка в секцию код
/*CODE*/ var icon =this.icon || document.getAnonymousElementByAttribute(this, "class", "toolbarbutton-icon"); icon.style.transition = "transform 0.2s ease-in-out"; icon.style.transform = icon.style.transform ? "" : "rotate(180deg)"; var prefBranch = Components.classes["@mozilla.org/preferences-service;1"]. getService(Components.interfaces.nsIPrefBranch); var pref = "sidebar.revamp"; if (prefBranch.getBoolPref(pref) == true) { prefBranch.setBoolPref(pref, false); } else { prefBranch.setBoolPref(pref, true); }
иконка
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAdgAAAHYBTnsmCAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAABdSURBVDiN7dKhCoBAEEXRg0G7/rBB/VvNrkWDCoILLovB4IUHMwxcJjy+xICA9SEBfUwQUB9zeyRGg/lcisuhxJTw6YgqJsjiF3xNsNhL8kRjL92NXnqVu+yXX2cDxHgdEn8H0pcAAAAASUVORK5CYII=
чуть посложнее [spoil
…green25 это не мое, не пользуюсь
Garalf , чуть попозже, у меня там сборная солянка, а так есть QuickToggle в теме
Dumby спасибо, все работает
Вот такой вопрос. Есть в настройках переключатель - показать новую боковую панель. Есть обычная старая боковая панель. Нужна кнопка переключения между старой и новой. т.к в новой не отображаются пункты с других кнопок и дополнений. т.к. еще не перешли на новую боковую панель. Из новых показывает только BrowserConsole от Dumby, которая сделана на USF
20-03-2025 22:12:22
Есть кнопка [spoiler][code]// http://infocatcher.ucoz.net/js/cb/editCustomButtonInTab.js
// https://github.com/Infocatcher/Custom_Buttons/tree/master/Edit_Custom_Button_in_Tab
// Edit Custom Button in Tab button for Custom Buttons
// (code for "initialization" section)
// (c) Infocatcher 2012-2014
// version 0.1.8.3 - 2014-01-12
// Note:
// In Firefox 3.6 and older:
// - Force enables "Save size and position of editor windows separately for each custom button"
// option for editor in tab (because doesn't work without this)
// - tab with editor can't be closed sometimes using OK/Cancel buttons
var editInTabLabel =
…Dumby т.е. как я понял получается что они вырезали старые функции а новые еще не ввели, и пока про эту кнопку можно забыть
Dumby посмотри пожалуйста эту кнопку может где пропустил изменения [spoiler][code]if(true) return; // Disabled by Disable Initialization button
// https://forum.mozilla-russia.org/viewtopic.php?id=56040
// http://infocatcher.ucoz.net/js/cb/cbEditorToggleOnTop.js
// https://github.com/Infocatcher/Custom_Buttons/tree/master/CB_Editor_Toggle_on_Top
// Custom Buttons Editor: Toggle on Top button for Custom Buttons
// (code for "initialization" section)
// (c) Infocatcher 2012-2015
// version 0.1.11 - 2015-06-04
// Hotkey: Ctrl+T
const watcherId = "customButtonsToggleOnTop_" + this.id;
var {Components} = window; // Prevent garbage collection in Firefox 3.6 and older
var storage = (function() {
if(!("Services" in window)) // Firefox 3.6 and older
return Application.storage;
// Simple replacement for Application.storage
// See https://bugzilla.mozilla.org/show_bug.cgi?id=1090880
var global = Components.utils.getGlobalForObject(Components.utils);
// Ensu
Еще раз порошу мне уделить внимание, перестал работать этот стиль[spoiler][code]/* AGENT_SHEET */
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
/* Загнутый уголок на непрочитанной вкладке */
.tabbrowser-tab[pending]:not([unreadTab])
{
-moz-border-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAcCAYAAABh2p9gAAAACXBIWXMAAAsSAAALEgHS3X78AAABQklEQVR42q3TP0vDQBjH8atDhQ4uFhSnTg66FieHuljQRUpAbZI2bZqmSf+kQehbEN+Fr6fuvgM7+w7i84M7OI7YHPQJfAkcTz5HEk4URSE4E82zixp1TT1Sr7IxNaJcbW0TxcmzqLposP3Uc/rb7ZdDO3RkXeqeulNrNBdk+ds73W+qQOdnt3ugh06pI62aMTdsfDcKut/ijT5bv8JMDbr08JUJlGw8ACjRLtXaB15afBpfgRLtUedloGcJejooUfy0ExP0LUHXBCUaUnUdHBwCSjTVwaEl6PwHSnSjBgNLsL0PRC997wODI0vwuOREBfJU+WoNg2MbsOqCAQtgyAiGACeM4ARgxAhGAKeM4BRgzAjGAGeM4AxgwggmAFNGMAU4ZwTnABeM4ALgkhFcAlwxgiuAGSOYAVwzgmuAOSOY/wGB0oICMFHRdQAAAABJRU5ErkJggg==")
4 10 3 3 / 4px 10px 0px 3px stretch !important;
border-radius: 1px 18px 0px 0px !important;
}
.tabbrowser-tab[pending] { bac
…Подскажите пожалуйста, как изменить этот код, чтобы он заработал на последней версии[spoiler][code]/* AGENT_SHEET */
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
/* Загнутый уголок на непрочитанной вкладке */
/*
.tabbrowser-tab[pending]:not([unreadTab]) .tab-text,
.alltabs-item[pending]:not([unreadTab])
{
color: red !important;
}*/
.tabbrowser-tab[pending]:not([unreadTab])
{
-moz-border-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAcCAYAAABh2p9gAAAACXBIWXMAAAsSAAALEgHS3X78AAABQklEQVR42q3TP0vDQBjH8atDhQ4uFhSnTg66FieHuljQRUpAbZI2bZqmSf+kQehbEN+Fr6fuvgM7+w7i84M7OI7YHPQJfAkcTz5HEk4URSE4E82zixp1TT1Sr7IxNaJcbW0TxcmzqLposP3Uc/rb7ZdDO3RkXeqeulNrNBdk+ds73W+qQOdnt3ugh06pI62aMTdsfDcKut/ijT5bv8JMDbr08JUJlGw8ACjRLtXaB15afBpfgRLtUedloGcJejooUfy0ExP0LUHXBCUaUnUdHBwCSjTVwaEl6PwHSnSjBgNLsL0PRC997wODI0vwuOREBfJU+WoNg2MbsOqCAQtgyAiGACeM4ARgxAhGAKeM4BRgzAjGAGeM4AxgwggmAFNGMAU4ZwTnABeM4ALgkhFcAlwxgiuAGSOYAVwzgmuAOSOY/
Подскажите пожалуйста в кнопке[spoiler][code]// Двойным левым кликом на папке закладок добавлять закладку в папку закладок
addEventListener("dblclick", async e => {
if (e.button) return;
var trg = e.target, node = trg._placesNode || trg._placesView?._resultNode;
if (!node || !PlacesUtils.nodeIsFolder(node)) return;
var parentGuid = PlacesUtils.getConcreteItemGuid(node);
try {
await PlacesTransactions.NewBookmark({
//index: 0,
parentGuid,
url: gBrowser.currentURI.spec,
title: gBrowser.selectedTab.label.substr(3, 50)
}).transact();
var msg = `Добавил в папку ${
PlacesUtils.bookmarks.getLocalizedTitle({guid: parentGuid, title: node.title})
}:`;
var popupIconURL = gBrowser.selectedTab.image || "chrome://global/skin/icons/Portrait.png"
}
catch(ex) {
msg = "ERROR! " + ex.message;
popupIconURL = "chrome://global/skin/icons/warning.svg";
}
var n = PopupNotifications.show(
gBrowser.selectedBrowser, "PDES-popup", msg, null, null, null, {popupIconURL, hid
Farby спасибо работает
Dumby Посмотри пожалуйста, на 127 не работает "Консоль браузера в сайдбаре", есть ли у тебя для этой версии кнопка?
Dumby большое спасибо
Подскажите последнюю рабочую версию кнопки - вставка спец. символов
[spoiler][code](this.type != "menu" && (this.type = "menu") && !this.hasAttribute("is")) || (popup => {
var columns = [
' \u0027 " ‘ ’ ‚ ; “ ” „ “ ” ` // ',
' /* */ ( ) { } [ ] « » ‹ › ¦ ',
' … ≈ ≠ × ± — № => → # • ° ¤ ',
' Ⅰ Ⅱ Ⅲ Ⅳ Ⅴ Ⅵ Ⅶ Ⅷ Ⅸ Ⅹ ',
' \uD83E\uDD8A \uD83D\uDE0E § & \u0027 \u002Fn \u002Fb \u002F @ ✓ ✗ ¬ '
];
var css = //0&&
`
#${_id} menuitem > .menu-text {
font-size: 18px;
font-family: Consolas, Rockwell, Verdana;
text-align: center;
-moz-appearance: none;
margin: 0;
padding: 0 14px;
}
#${_id} menuitem > :not(.menu-text) {
display: none;
}
#${_id} menugroup,
#${_id} > menupopup > arrowscrollbox {
background-color: menu;
}
`.replace(/;/g, " !important;");
var inserter = {
get docShe
Dumby подскажи где ошибка[spoiler][code]//Вызвать окно поиска по текущему сайту по правому клику на search-go-button....................................................................................................
(bar => {
if (!bar) return;
var searchbar = window.document.getElementById("searchbar");
if (!searchbar)
return;
var btn = searchbar.querySelector(".search-go-button") ||
window.document.getAnonymousElementByAttribute(searchbar, "class", "search-go-button");
btn.setAttribute("hidden", "false");
var UpdateExt = function(event) {
var Sel="javascript: var getSel=function(w){ var s,d=w.document; if(d.selection){ var r=d.selection.createRange(); s=r?r.text:''} else {s=d.getSelection().toString(); if(!s){var e,t=d.getElementsByTagName('textarea'),u=d.getElementsByTagName('input'),i=t.length; while(e=(i>0)?t[--i]:u[-i--]) try{ if(e.offsetHeight>0&&(s=e.value.substring(e.selectionStart,e.selectionEnd)))b
…Dumby спасибо все работает
Может кто подправить[spoiler][code]// Сплывающая подсказка у кнопки ....
(function() {
var title = self.label + ":\n\n";
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, i) {
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(i), inf);
}
var zws = ind => "\u200B".repeat(++ind);
var types = Object.keys(data);
var ttt = title + types.map((key, i) => data[key] + zws(i)).join("\n");
// var context = Cu.import("", {}).Ser
6e73epo спасибо все заработало как надо
Dumby на 117 опять сломался DOM Inspector. скажи пожалуйста у тебя на эту версию есть рабочий вариант?
Еще раз порошу уделить мне внимания и ответить на мой вопрос разбирающихся в этом вопросе. есть стиль для иконок в контекстном меню
[spoiler][code]@-moz-document url("chrome://browser/content/browser.xhtml"),
url("chrome://browser/content/places/places.xhtml"),
url("chrome://browser/content/places/historySidebar.xhtml"),
url("chrome://browser/content/places/bookmarksSidebar.xhtml"),
url("chrome://browser/content/syncedtabs/sidebar.xhtml") {
*|*:root {
--v-menu-icons-margin-start: 0px; /* отступ слева для иконок, для Linux 0px */
}
menu:not(.menu-iconic)::before, menuitem:not(.menuitem-iconic)::before {
width: 16px;
height: 16px;
display: -moz-inline-box;
margin-inline-start: var(--v-menu-icons-margin-start);
margin-inline-end: calc(1 * (var(--v-menu-icons-margin-start) + 10px));
position: relative;
background-color: transparent;
background-position: center;
background-size: 16px;
background-repeat: no-repeat;
}
menu#fill-login::befo
Может кто подсказать в этом стиле иконки накладываются на текст пунктов контекстного меню
[spoiler][code]@-moz-document url("chrome://browser/content/browser.xhtml"),
url("chrome://browser/content/places/places.xhtml"),
url("chrome://browser/content/places/historySidebar.xhtml"),
url("chrome://browser/content/places/bookmarksSidebar.xhtml"),
url("chrome://browser/content/syncedtabs/sidebar.xhtml") {
*|*:root {
--v-menu-icons-margin-start: 5px; /* отступ слева для иконок, для Linux 0px */
}
menu:not(.menu-iconic)::before, menuitem:not(.menuitem-iconic)::before {
width: 16px;
height: 16px;
display: -moz-inline-box;
margin-inline-start: var(--v-menu-icons-margin-start);
margin-inline-end: calc(-1 * (var(--v-menu-icons-margin-start) + 16px));
position: relative;
background-color: transparent;
background-position: center;
background-size: 16px;
background-repeat: no-repeat;
}
menu#fill-login::before {
content: "" !important;
back
Dumby Я прочитал про Services.jsm, но не пойму чем заменить в этой кнопке "global", так как она завязана на "storage"
[spoiler][code]// https://forum.mozilla-russia.org/viewtopic.php?id=56040
// http://infocatcher.ucoz.net/js/cb/cbEditorToggleOnTop.js
// https://github.com/Infocatcher/Custom_Buttons/tree/master/CB_Editor_Toggle_on_Top
// Custom Buttons Editor: Toggle on Top button for Custom Buttons
// (code for "initialization" section)
// (c) Infocatcher 2012-2015
// version 0.1.11 - 2015-06-04
// Hotkey: Ctrl+T
const watcherId = "customButtonsToggleOnTop_" + this.id;
var {Components} = window; // Prevent garbage collection in Firefox 3.6 and older
var storage = (function() {
if(!("Services" in window)) // Firefox 3.6 and older
return Application.storage;
// Simple replacement for Application.storage
// See https://bugzilla.mozilla.org/show_bug.cgi?id=1090880
//var global = Components.utils.getGlobalForObject(Services);
// Ensure, that we have g
Farby так все работает спасибо
Перешел на 116, в кнопке [spoiler][code]/*Initialization Code*/
({
title: "Консоль браузера",
url: "chrome://devtools/content/webconsole/index.html",
icon: "chrome://devtools/skin/images/tool-webconsole.svg",
init() {
var trg = document.getElementById("browser");
trg && addEventListener("DOMContentLoaded", this, false, trg);
var id = "viewBrowserConsoleSidebar";
var menuitem = this.element("menuitem", {
type: "checkbox",
label: this.title,
id: "menu_browserConsoleSidebar",
oncommand: `SidebarUI.toggle("${id}");`
}, document.getElementById("viewSidebarMenu"));
var btn = this.element("toolbarbutton", {
type: "checkbox",
label: this.title,
id: "sidebar-switcher-browserConsole",
oncommand: `SidebarUI.show("${id}");`,
class: "subviewbutton subviewbutton-iconic"
});
document.querySelector(
'toolbarbutton[id^="sidebar-switcher-"] + toolbarseparator'
).before(btn);
SidebarUI.sidebars.set(id, {
url: this.url,
buttonId: btn.id,