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

Общайтесь со знакомыми и друзьями в нашей группе в Контакте.

Сustom Buttons » Custom Buttons » 05-07-2021 23:31:19

Dumby подскажи есть код [spoiler][code]// Редактировать размеры поля выбора вкладок в окне добавления закладки звёздочки. .............
((css, panel) => ({
    init() {
        panel = document.getElementById("editBookmarkPanel");
        if (panel) {
            addEventListener("popupshowing", this, false, panel);
            this.destroy && this.destroy();
            return;
        } else if (this.destroy) return;

        var mo = new MutationObserver(this.init.bind(this));
        mo.observe(document.getElementById("mainPopupSet"), {childList: true});
        addDestructor(this.destroy = reason => {
            mo.disconnect();
            if (reason) return;
            self._destructors.splice(self._destructors.findIndex(
                d => d.destructor == this.destroy
            ), 1);
            delete this.destroy;
        });
    },
    pref: "CB.editBMPanel_folderTreeRow_WidthHeight",
    handleEvent(e) {
        css = encodeURIComponent(css.replace(/;/g, " !important;"));
        var args = ["data:text/css," + css, windowUtils.USER_SHEET];
        windowUtils.loadSheetUsingURIString(...args);

        var row = this.ro

Сustom Buttons » Custom Buttons » 11-04-2021 21:37:55

ВВП посмотри может поможет[spoiler][code]//Дополнительные пункты контекстного меню на странице about:addons для аддонов, плагинов, тем, CB.....................................................................................
((id, g, iconizer) => addDestructor(r => r[5] == "e" && id in g && g[id].destroy()) + addEventListener("shown", {
    //------------------------------------------------------------------
    "Копировать имя_i": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAByUlEQVQ4jY2TTUhUURiGn5tD0Sp00iAwXM1iFu4kWkUZg/9MoZQhdoUCV7ooItq4atFORRGkuLMwoc0kNBGKDLSwFpEIQgspqGUUNsjI3HvPX4s7I3Nn7oW+1fn5vvd8z3vOsYiIgXuPneFMr21ZVmh9+m7GisoPxcTsM2d46on5c1gy9bHgvDVR+afqJzNzy870xIgNUJGGkqf4XVEAuJ4XeWCiNpibX3MGr/XYPd0pADxlOK0MQgf7Xw++sfJq0zRiJQAWcgWndHRkr28UWcrlAfCVwa8KrK4XOPxbYqz/MsnWcyfFi7lCIPD9x0/70YNRykKz+eELQkny74sIJbnQmqQ71UVhe+cES2hoP9uC63mBgO/7dF7s4NexZPRmBqlBaMPHnc+kL7UTh1VxqwKuGxjkaUP+zRZCSVqwKJeP2dvdj8SqGZuod9hXhr6hGwgNL5ZfEoc1PnaL2sFNAlvvthFKxmJJbfCUqXbghhHSy

Сustom Buttons » Custom Buttons » 06-04-2021 22:26:27

Dumby приветствую, давно не был в теме, не слежу давно, что происходит, извини за это. Подскажи, что подправить, все связано с боковой панелью, не отображаются в боковой панели:
1. [spoiler][code]/*Initialization Code*/
gCBClipboardViewer = this; // global obj
this.label="Clipboard Viewer";



((g, name, id) => {
    var obj = g[name] || (g[name] = ({
        topic: "quit-application-granted",
        init() {
            var pv = parseInt(Services.appinfo.platformVersion);
         var url = `data:application/${pv >= 73 ? "xhtm" : "vnd.mozilla.xu"}l+xml,${encodeURIComponent(self.Help)}`;
            if (pv >= 69 && Services.appinfo.browserTabsRemoteAutostart) {
            this.url = `chrome://custombuttons/content/cbdialog${Date.now()}.xul`;
            this.helper = Cc["@mozilla.org/addons/addon-manager-startup;1"].getService(Ci.amIAddonManagerStartup).registerChrome(
                    Services.io.newFileURI(Services.dirsvc.get("ProfD", Ci.nsIFile)), [["override", this.url

Сustom Buttons » Custom Buttons » 23-02-2021 11:30:01

Dumby объясни почему var nodeList = custombuttons.palette.getElementsByClassName("toolbarbutton-1 chromeclass-toolbar-additional"); выдает ошибку (в коде 204 строка)
[spoiler][code]var dialog;
var defaultFavicon = "http://forum.mozilla-russia.org/uploaded/custombuttons_button.png";
var checkFavicon = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAltJREFUOMtt0l9olXUcx/HX8zzThHh07cLQJSZoozXNONMonYxI6zhwhnVnGQldqASZKN50USgWE0ThgCEiZV2JyNDpEnXMLhbuNBC7SOnfVHQj5p/Hmmw+53hxzo7T9bv5Xfy+78/v8/1+P4EnT7NqvIOMVEYkRF6q16hjegxBsVgMgiAoBk/AWRyQminyf2cguzi7veOrjg+xBD8H4+Cd2A7xNJLZxDUkMISrTH8QO7e3R/3z9TCKVSWBJitEOsFC1BOXpZOyfhzFOptPeW3O6wqFgh9Of7/7/bc/2BJoVi11CbVewXziMhiX4SSkY/lx2VktYOOejXJHcwOmeKlKqkWk1jTiholNJ/iu6VAF/iL/uVx3jsiz7lsdlqdNLcaNdMxF2+Jd1s5bB/Zd2qOt70tmVcoyoUijiPq6F7SvPGNp7fLK69b5m322YBs4fOVbn/R8WppJTbkgkqmSKsD+1gOWzmwyMDzgp+unrZm71q5X28Dxv9tt6N70uLsUkUIo0iuiMFIADc80aH7uLd8sOygQ6L7RZf3ZVoqJeAweqmjlSynDyH+joK76RUdWtJsUTvLLP3nvda4ynD5aJ6VMPBL

Сustom Buttons » Custom Buttons » 25-09-2020 17:55:18

Dumby  покажи пожалуйста свою рабочую кнопку Консоль браузера, что-то у меня из-за нее в Appmenu пункты проподают и вообще ничего не пойму простой код не хочет работать, не появляется в меню, только при двойной инициализии[spoiler][code]// Добавить новый пункт "Перезапуск" в главном меню
(()=> {
    var menuItem = document.createXULElement("toolbarbutton");
    menuItem.setAttribute("id", "restart_firefox");               
    menuItem.setAttribute("label", "Перезапуск");
    menuItem.setAttribute("class", "subviewbutton subviewbutton-iconic");
    menuItem.setAttribute("image", "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAuZJREFUeNqkU0lPU1EUPvcNHaCUWlpsERGooIhxwQPFSNUgKpEYTRQXhpi44g+48W8YFy7cmOgC4hRjDEGjosEQpQRRKQQoFmgZSqGldHrDvZ7XohJWJr7kyx3e/b57vnPOJYwx+J9POHpnJj8RRRAEATietxFCvLh1CtGEKERMIQbxsqeU0jDP81249r67Wdot7BCsFjh2rarMfKS81FxnLRSqcc+aSKp1C6uZlpn55BXK2KCmqu2/CdwfKmNug8C8HcedrspSs9VAiFGRKegQCSnY5zCV

Сustom Buttons » Custom Buttons » 15-09-2020 21:26:54

Dobrov пишет

очень сложно с нуля подключить CustomButtons

А тут в теме только один Dumby поддерживает исправления и  на нем все держится, если не он, темы не было. Уйдет и не будет больше CustomButtons, а больше энтузиастов нет и модераторы не горят желанием здесь поработать, так что поиск в помощь. Раньше больше было людей кто творил, а сейчас одни потребители. Никто здесь ни кому не обязан.

Сustom Buttons » Custom Buttons » 03-08-2020 10:29:36

Duche

Duche пишет

Третий "Двойным левым кликом на папке закладок добавлять закладку в папку закладок"

можно поприкалываться и сделать уведомления вверху[spoiler][code]// Двойным левым кликом на папке закладок добавлять закладку в папку закладок, от 06.06.2019. .............................................................
addEventListener("dblclick", (e, targ = e.originalTarget)=> {     
   if ( e.button || !targ._placesNode || !PlacesUtils.nodeIsFolder(targ._placesNode) ) return;         
   
   var docTitle = gBrowser.selectedTab.label.substr(3, 50);
   var folderId = PlacesUtils.getConcreteItemId(targ._placesNode);
   var folderTitle = PlacesUtils.bookmarks.getItemTitle(folderId);
   var currentURI = Services.io.newURI(gBrowser.currentURI.spec, null, null);
   PlacesUtils.bookmarks.insertBookmark(folderId, currentURI, 0, docTitle); 

   // всплывающая подсказка ....
Components.utils.import('resource://gre/modules/PopupNotifications.jsm');
var notify  = new PopupNoti

Сustom Buttons » Custom Buttons » 01-07-2020 22:40:50

Dumby что-то на 78 кнопка - консоль браузера не хочет работать.
Выдает ошибку:   Uncaught (in promise) TypeError: Cu.isCrossProcessWrapper is not a function)        в строчке         if (!doc || Cu.isCrossProcessWrapper(doc) || doc.documentURI != this.url) return;

Сustom Buttons » Custom Buttons » 23-06-2020 15:22:15

unter_officer попробуй

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

Выделить код

Код:

let browserMM = gBrowser.selectedBrowser.messageManager;
 browserMM.addMessageListener('getSelect', function listener(message) {
   // создать текст для записи
    var selectionTxt = message.data; 
    var url = 'https://translate.google.com/#view=home&op=translate&sl=auto&tl=ru&text=';
var txtUrl = (url + encodeURIComponent(selectionTxt));
gBrowser.selectedTab = gBrowser.addTab(txtUrl, { triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal() });
 browserMM.removeMessageListener('getSelect', listener, true);
});
        browserMM.loadFrameScript('data:,sendAsyncMessage("getSelect", content.document.getSelection().toString())', false);

Сustom Buttons » Custom Buttons » 21-06-2020 08:11:44

unter_officer пример - в начало страницы для многопроцессорного:
var tabMM = gBrowser.selectedBrowser.messageManager;
tabMM.loadFrameScript("data:, content.scrollTo(0,0)", false);

Сustom Buttons » Custom Buttons » 03-06-2020 15:48:45

voqabuhe сделать замены то что "//win = и.тд." на две строчки то что под ним
т.е. для первого случая найти
win = window.openDialog("chrome://browser/content/preferences/permissions" + ext, "_blank", "", params);
и заменить на
var sub = _this.platformVersion >= 77 ? "dialogs/" : "";
win = window.openDialog("chrome://browser/content/preferences/" + sub + "permissions" + ext, "_blank", "", params);
также и для для второго случая

Сustom Buttons » Custom Buttons » 02-06-2020 14:51:01

voqabuhe все скачивается и устанавливается

Сustom Buttons » Custom Buttons » 02-06-2020 13:11:57

Dumby с очисткой startupCache глюк пропал, но что-то раньше никогда при установке новой custom_buttons не требовалось очистить кеш, спасибо.
voqabuhe добавляет в контекстное меню СВ кнопок пункт - переместить кнопку. Перемещает любую СВ кнопку, не открывая персонализацию вслед за выбранной СВ кнопкой . В контекстном меню СВ кнопки, которую надо переместить, выбираешь пункт - переместить кнопку. Затем выбираешь кнопку, за которой она должна находиться и жмешь по ней правой кнопкой мыши и кнопка перемещается

Сustom Buttons » Custom Buttons » 02-06-2020 12:21:34

Dumby в консоли пишет SyntaxError: unexpected token: identifier button.js:1:36 в редакторе ошибку не выделяет. Если поставить custom_buttons-0.0.7.0.0.15a1-fx-paxmod.xpi пишет:
SyntaxError: missing } in compound statement button.js:12:14
note: { opened at line 6, column 23button.js:6:23
ссылается на первую строчку кода и на // End editable preferences

Сustom Buttons » Custom Buttons » 01-06-2020 21:55:57

Dumby обновил до custom_buttons-0.0.7.0.0.14-fx-paxmod.xpi из 12 и что-то перестал работать такой код[spoiler][code]/*Initialization Code*/
/////////////////////////////// Переместить кнопку ///////////////////////////////

this.MoveToolbarButtons = MTB = {
    // Start editable preferences
    MoveButtonMICBContext: true, // Add "Move button" menu item to Custom Buttons context menu?
    MoveButtonMITBarContext: false, // Add "Move button" menu item to toolbars context menu?
    ShowMoveAlert: false, // Show the alert with instructions when moving buttons?
    MoveBtnImage: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAYklEQVQ4jWNgGJTgaAXHf2LEcGrGZQBBQ45WcPz/fZ0XpwG45FAUEDIAqzyyJLIiZIxNHqdmYvHRCo7/DLhsIEYziivQDcHnBawxgqyQUCzgjQlC6YCotEB2QkJWTIzY4AAAezv/caeCLKcAAAAASUVORK5CYII=",
    // End editable preferences

    _UID: "__cb_move_toolbar_buttons_" + custombuttons.getNumber(self.id),
    WindowIDs: ["main-window", "messengerWindow", "msgcomposeWindow"],
    ToolbarContexIDs: ["t

Сustom Buttons » Custom Buttons » 07-05-2020 21:51:29

Dumby спасибо, разобрался

Сustom Buttons » Custom Buttons » 07-05-2020 08:58:07

Dumby подскажи на 76 выскакивает вот такая ошибка
TypeError: Custom Buttons: addEventListener: eventTarget is not instanceof nsIDOMEventTarget or EventTarget
Причем, если открыть и закрыть кнопку, то код работает [spoiler]
[code]// Редактировать размеры поля выбора вкладок в окне добавления закладки звёздочки
((panel, css) => addEventListener("popupshowing", {
    pref: "CB.editBMPanel_folderTreeRow_WidthHeight",
    handleEvent(e) {
        css = encodeURIComponent(css.replace(/;/g, " !important;"));
        var args = ["data:text/css," + css, windowUtils.USER_SHEET];
        windowUtils.loadSheetUsingURIString(...args);

        var row = this.row = document.getElementById("editBMPanel_folderTreeRow");
        addEventListener("popuphidden", this, false, panel);

        addDestructor(reason => {
            windowUtils.removeSheetUsingURIString(...args);
            row.removeAttribute("width");
            row.removeAttribute("height");
            reason == "delete" && Ser

Сustom Buttons » Custom Buttons » 19-04-2020 23:13:25

func4ptch4 только для urlbar.update1 = false
[spoiler]//Полоса загрузки в адресной строке..................................................................................................................
(function() {

   var cssStr = (function(){/*
                        #urlbar {
                            background-image: repeating-linear-gradient(-45deg, rgba(255,255,255,0), rgba(255,255,255,0) 6px, rgba(255,255,255,0) 6px, rgba(255,255,255,0) 12px), linear-gradient(to left, #33FF66 0%, #33FF66 100%);                               
                background-size:0 0;
                                background-repeat:repeat-x, no-repeat;
            }
            #urlbar:not([connecting])::after {
                        display:none;
                    }
            @-moz-keyframes progress-bar-stripes {
                from {
                    background-position: 0, 0;
                }
                to {
                    background-position: 51px 0, 0;
                }
            }
                        */}).toString().replace(/^.+\s|.+$/,"");

  var style = document.createProcessingInstruction("xml-stylesheet", "

Сustom Buttons » Custom Buttons » 18-04-2020 13:27:41

zhulcov то что в текстовом файле скопировать и вставить в адресную строку и перейти по ссылке

Сustom Buttons » Custom Buttons » 06-04-2020 21:15:17

solombala да какая разница чем конфиг менять, руками или кнопкой? Все переключается через двойную перезагрузку.

Сustom Buttons » Custom Buttons » 06-04-2020 20:34:44

solombala я в about:config менял browser.tabs.remote.autostart вручную и с помощью кнопок одно и тоже. И кеш сбрасывал и на чистом профиле -все то же

Сustom Buttons » Custom Buttons » 06-04-2020 20:20:15

Dumby подскажи, при переключении из многопроцессорного в однопроцессорный и также наоборот приходится перезагружать (или включать и выключать) два раза, чтобы сменить режим. Может что где то пропустил изменение конфигурационного файла?
Конфигурационный файл [spoiler][code]
//
try {(nsvo => {
    var o = Cu.getGlobalForObject(nsvo).Object, {freeze} = o, NEW;
    o.freeze = obj => {
        if (Components.stack.caller.filename != "resource://gre/modules/AppConstants.jsm")
            return freeze(obj);
        obj.MOZ_REQUIRE_SIGNING = false;
        if ((NEW = "MOZ_ALLOW_ADDON_SIDELOAD" in obj))
            lockPref("extensions.experiments.enabled", true);
        else
            obj.MOZ_ALLOW_LEGACY_EXTENSIONS = true,
            lockPref("extensions.legacy.enabled", true);
           
        return (o.freeze = freeze)(obj);
    }
    lockPref("xpinstall.signatures.required", false);
    lockPref("extensions.langpacks.signatures.required", false);

    nsvo = Cu.import("reso

Сustom Buttons » Custom Buttons » 20-03-2020 23:47:18

Dumby вот переделал , так ничего не ломаю?[spoiler][code]// Блокировать повторный запуск функций и обработчиков при открытии настройки панелей ........................


var icon = this.icon ||document.getAnonymousElementByAttribute( this, 'class', 'toolbarbutton-icon');
icon.style.width = '16px', icon.style.height = '16px';

this.bottomPanel = function(aURL) {
  var prefBranch = "custombuttons.bottomPanel."

  if(!aURL && aURL != "") {
    try {
      aURL = Services.prefs.getCharPref(prefBranch + "url");
    } catch(ex) {
      aURL = "";
    }
  }
  if(aURL == "") return;

  if(aURL == gURLBar.value && !aURL.match(/^\w+?\:/)) aURL = "http://" + aURL;

  var panelID = "bottom-panel";
  var gPanel = document.getElementById(panelID);
  var height;
  try {
    height = Services.prefs.getIntPref(prefBranch + "height");
  } catch(ex) {
    height = 400;
  }

  if(gPanel) {

    var src = gPanel.firstChild.nextSibling.getAttribute("src");
    if(aURL != src) {
      gPanel.firstChil

Сustom Buttons » [CB]Attributes Inspector (для разработчиков) » 20-03-2020 23:30:52

Infocatcher что то я не нашел тему про "Edit_Custom_Button_in_Tab" у меня на 74 она до сих пор работает. Поэтому задам здесь. Если есть отдельная тема - то покажите. Вопрос в следующем. Код работает нормально, но выскивает ошибка в консоли не на что не влияющая -
[Exception... "Component returned failure code: 0x805e0006 [nsIWebNavigation.loadURI]"  nsresult: "0x805e0006 (<unknown>)"  location: "JS frame :: chrome://browser/content/browser.js :: _loadURI :: line 1513"  data: no]  - browser.js:1513:29 при редактировании во вкладке. Может посмотрите? Сейчас код у меня такой[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 w

Board footer

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