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

Список ответов на каверзные вопросы можно получить в FAQ-разделе форума.

№27620-11-2013 17:09:57

Mishania
Участник
 
Группа: Members
Зарегистрирован: 22-10-2011
Сообщений: 356
UA: Firefox 25.0

Re: Обсуждение кнопок CB

Чайник
Про инициализацию я знаю, а keyword это как?

Отсутствует

 

№27720-11-2013 18:48:27

Чайник
Участник
 
Группа: Members
Зарегистрирован: 15-04-2008
Сообщений: 268
UA: Firefox 25.0

Re: Обсуждение кнопок CB

Mishania пишет

Чайник
Про инициализацию я знаю, а keyword это как?

Keyword - это краткое имя. Вот это
e090403bccacd83f37dff62311419f44.png

Выбрать краткое имя можно любое и вписать его в скобки в коде.

Отсутствует

 

№27820-11-2013 19:24:14

Mishania
Участник
 
Группа: Members
Зарегистрирован: 22-10-2011
Сообщений: 356
UA: Firefox 25.0

Re: Обсуждение кнопок CB

Чайник
Спасибо!

Отсутствует

 

№27923-11-2013 20:31:53

rubel
Участник
 
Группа: Members
Откуда: г.Самара
Зарегистрирован: 10-05-2005
Сообщений: 559
UA: Firefox 24.0

Re: Обсуждение кнопок CB

Что-то у меня на 24.0 совсем не работает кнопка Переключаться на новые вкладки/Открывать новые вкладке в фоне.(Firefox)
Новые вкладки открываются всегда активными, не в фоне. Хотя значок кнопки меняет свой вид при смене режима.

Отсутствует

 

№28023-11-2013 22:00:59

Pony_Smile_Pack
Участник
 
Группа: Members
Зарегистрирован: 13-01-2012
Сообщений: 1144
UA: Firefox 25.0

Re: Обсуждение кнопок CB

rubel пишет

Что-то у меня на 24.0 совсем не работает кнопка Переключаться на новые вкладки/Открывать новые вкладке в фоне.(Firefox)
Новые вкладки открываются всегда активными, не в фоне. Хотя значок кнопки меняет свой вид при смене режима.

Это есть в настройках.
87dab2dd2e6451785641953945ead476.png

Отсутствует

 

№28124-11-2013 05:46:29

rubel
Участник
 
Группа: Members
Откуда: г.Самара
Зарегистрирован: 10-05-2005
Сообщений: 559
UA: Firefox 24.0

Re: Обсуждение кнопок CB

Pony_Smile_Pack пишет

Это есть в настройках.

У меня эта птичка не стоит. Проверил и на 17.0 с одним расщирением-open_link_in_new_tab , тоже не работает, может какие настройки нужны. Хочется чтоб все ссылки открывались в фоне в новых вкладках.

Отсутствует

 

№28202-12-2013 21:43:09

1fesFFFF
Участник
 
Группа: Members
Зарегистрирован: 22-01-2010
Сообщений: 252
UA: Firefox 25.0

Re: Обсуждение кнопок CB

Нужна кнопка или скрипт, который автоматически при запуске браузера или открытии любого сайта сбрасывает масштаб страницы на стандартные 100%.

Отсутствует

 

№28302-12-2013 22:41:04

Mishania
Участник
 
Группа: Members
Зарегистрирован: 22-10-2011
Сообщений: 356
UA: Firefox 25.0

Re: Обсуждение кнопок CB

1fesFFFF
В about:config browser.zoom.siteSpecific - fasl попробуйте.

Отсутствует

 

№28402-12-2013 22:45:06

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Обсуждение кнопок CB

1fesFFFF пишет

Нужна кнопка или скрипт, который автоматически при запуске браузера или открытии любого сайта сбрасывает масштаб страницы на стандартные 100%.

Изменить масштаб

Отсутствует

 

№28515-12-2013 20:36:05

mahtanoronra
Участник
 
Группа: Members
Зарегистрирован: 08-03-2009
Сообщений: 63
UA: Firefox 24.0

Re: Обсуждение кнопок CB

всем привет, а есть ли кнопочки на подобее тех которые имеются в MRTechToolkit{6.0.4.9000}, список тем и расширением(клик и открываются настройки расширения). или выключение всех расширений. вообщем все которые имеются в MRTechToolkit.
спасибо.

Отсутствует

 

№28615-12-2013 20:52:47

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Обсуждение кнопок CB

mahtanoronra
Extension List
Toggle Restartless Add-ons

Добавлено 15-12-2013 20:55:50
Add-ons Manager

Добавлено 15-12-2013 20:56:18
Extensions Options Menu

Добавлено 15-12-2013 20:56:38
Extension List Generator

Добавлено 15-12-2013 20:57:08
Check for Addons Updates

Добавлено 15-12-2013 20:59:05
Custom Buttons • View topic - View Page Extension

Добавлено 15-12-2013 21:02:05
10-11-2013 20:53:17

Добавлено 15-12-2013 21:02:47
Custom Buttons • View topic - Extensions Options Menu

Добавлено 15-12-2013 21:06:48
Lightweight Theme Switcher

Отредактировано bunda1 (15-12-2013 21:06:48)

Отсутствует

 

№28715-12-2013 21:17:50

mahtanoronra
Участник
 
Группа: Members
Зарегистрирован: 08-03-2009
Сообщений: 63
UA: Firefox 24.0

Re: Обсуждение кнопок CB

bunda1
1 имеется
спасибо а в Toggle Restartless Add-ons можно сразу все выключать разом?и почему то там не все расширения имеются в списке( Extensions Options Menu тоже список всего из 6 расширений) :)

Отсутствует

 

№28815-12-2013 21:27:14

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Обсуждение кнопок CB

mahtanoronra пишет

bunda1
1 имеется
спасибо а в Toggle Restartless Add-ons можно сразу все выключать разом?

Сразу нельзя и наверно кнопка показывает только Restartless расширения.

Отсутствует

 

№28915-12-2013 23:50:47

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 25.0

Re: Обсуждение кнопок CB

Я пользуюсь кнопкой Открывать всё в новых вкладках.
Но пункт контекстного меню адресной строки "Вставить и перейти" открывает адрес из буфера в текущей вкладке. А хотелось бы в новой.

Может можно что добавить в код кнопки?
Или "Вставить и перейти" + какая-то клавиша чтоб открывала новую вкладку.


И насчёт кнопки Proxy. Мне не нужен полностью её функционал, а нужна та часть, которая позволяет установить адрес/порт прокси из выделенного текста. Какой кусок кода нужно взять?

Отсутствует

 

№29016-12-2013 01:03:57

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Обсуждение кнопок CB

rbfyec пишет

И насчёт кнопки Proxy. Мне не нужен полностью её функционал, а нужна та часть, которая позволяет установить адрес/порт прокси из выделенного текста. Какой кусок кода нужно взять?

Выделить код

Код:

// Создаем меню для добавление прокси в контекстном меню выделенного текста на странице ................................
(function func() {
  var contextMenu = document.getElementById("contentAreaContextMenu");  
  
  // создать новый пункт меню
  var menuitem = document.createElement("menuitem");      
  menuitem.setAttribute("label", "Добавить прокси"); 
  menuitem.setAttribute("class", "menuitem-iconic");
  menuitem.setAttribute("image", "data:image/x-icon;base64,AAABAAEAEREAAAEAIADwBAAAFgAAACgAAAARAAAAIgAAAAEAIAAAAAAAyAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAQAAAAAIAAYOQAAWJ2kADh1fAAAEKAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAEBAQECAgICAgICAgICAgMBAQEAAAEEJBE4ULQ+fZ38ea/H/muhuv8gW3ztAxclewAAAAsAAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEBAAAAAAMLNlO7PH+n/3Sgu/281eP9zuHr/mWZuP4XXon/ABAeZwAAAAAAAAAAAQEBAQAAAAAZGBoTKScsLyYkKjErJSgnIC8/XgZQgP9BcZb8b5q3/oiux/+qx9r/a5Ow+zFtlv8PRWrGAAACAAEBAQMHBwcbAAAAD2BeYn769/3/4eDm/Onh5v+DnrX/A0t9/j1vlv+FqMH/lrfN/7rS4f9+pL3+M26X/xJYhu0DEiMdAAAAAAEBAQEAAAABBgUGEaSiprbPzNP239fb/4OcsP4aXYr/RHOZ/5Gwx//T5e//mrjO/3KYtv40apP/D0x77AUTIhwhHyMmeXV7mXt4fqJ3dHmce3d+n6eirODMx8r/o6q3/kN4nf92m7n/vtPj/9Hg7P/C1OL/eJq1+jtulv8bSnC7AAEGAF1aYH7//////f39/P//////////////////////////lbHC/3ilvf/K4Oz/2OXv/7nN3f6FqcP/VIiv/AseMT8AAAAAXFtef+LY5/+AT534fU2d+4VXovyKXaf+jGGp/5BlrP+GWKT/ZmGc/4Cduf+ivtD+k7HH/1t/neUTJjhFAAAAAAEBAQJfXmB/3tHl/14giPxcIYr/Zy+S/244mP9yPZv/cj6c/3M9nP9wNpf/YDSP/1k0ivu7tdP/YmNmiAAAAAAEBAQGAAAAAF9eYIDg1Ob/cDqV/HE9mv9/TaT/hler/4tdr/+NXrD/iFms/4JTqP9+SqP/cjqW+9zJ4/9ubW6JAAAAAAMDBAQAAAAAX15ggODU5v94RZz8e0mi/4pcrv+Vabf/nXO9/6J5wf+jfMH/oXq//513u/+NY6z718bh/2pqa4gAAAAABAMEBAAAAABfXWCA4NTm/4VWpfyPY7L/onvA/7GPzP+8ndT/waTY/8Cj1/+6nNL/tZfO/6F9uvvYx+L/ampriAAAAAAEAwQEAAAAAF9eYH/e0uX/n3u5/LKTzP/Bpdf/zrbh/9jC6f/bxuv/2cTp/9O+5P/Qu+H/uJ3L+9jI4f9qaWuHAAAAAAQDBAQAAAAAX15gf97S5P+gfbf5sZPH/LqdzfzCqNT8ybHZ/My12vzKs9n8xq/W/Mav1fywksL418fh/2tqbIkAAAAABAMEBAAAAABZVlt3+fX8/+DU5vzj1un/5tvt/+ne7//r4PH/6t7w/+fb7f/k2Ov/4dPn/9nM4Pv79v//ZGFnfwAAAAADAwQEAAAAABcVGRpZVlt6YF9hgWBgYoBhYWKAYmFigGJiY4BiYmOAYmFigGFhYoBgYGGAX15ggF1aX4AbGR0eAAAAAAEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=");
  addEventListener("command", function(e) { addNewProxy() }, false, menuitem );
  
  // устанавливаем где показывать пункт меню 
  addEventListener("popupshowing", function() {
     menuitem.hidden = !gContextMenu.isContentSelected;
  }, false, contextMenu );
  addDestructor(function() { contextMenu.removeChild( menuitem ) });
  contextMenu.appendChild( menuitem ); // как последний пункт меню
  
  
  // добавление прокси
  function addNewProxy( sel, i ) {  
     var selection = document.commandDispatcher.focusedWindow.getSelection().toString();
     var sel = ( sel == undefined ) ? selection : sel.toString();
     sel = sel.replace(/^\s+|\s+$/g, ""); // удалить пробелы, слева и справа от строки
     sel = sel.replace(/\s+/g,":"); // заменить пробелы внутри строки
     
     // если порт ...
     if ( sel.length < 5 && isFinite(sel) ) {  
          sel = sel.replace(/:/g, "");
          sel = +sel;  // порт как число
          var lab = 'порт';
          var pref = 'network.proxy.http_port';
          }
     
     // если адрес ...
     if ( sel.length > 4 && !/:/.test(sel) && sel.split(".").length == 4 ) {  
          var lab = 'адрес';
          var pref = 'network.proxy.http';
          }     
     
     // если адрес и порт ...    
     if ( sel.length > 4 && /:/.test(sel) && sel.split(":").length == 2 && sel.split(".").length == 4 ) {
          var lab = 'адрес и порт';
          var array = sel.split(":");  
          array.forEach(function(sel, i) { addNewProxy( sel, i ) });          
          }     
     
     Application.prefs.setValue( pref, sel ); // переключить настройки прокси     

     if ( lab == undefined || i !== undefined || i == 0 ) return;
     
     // всплывающая подсказка рядом с выделенным текстом ...     
     function showTooltip() {
        var tooltip = gBrowser.appendChild( document.createElement("tooltip") );
        tooltip.style.cssText = "color: red !important; font-weight: bold !important; font-size: 14px !important; -moz-box-orient: horizontal; text-align: center;";
   
        var image = tooltip.appendChild( document.createElement("image") );
        image.setAttribute("src", self.image );
   
        var label = tooltip.appendChild( document.createElement("label") );
        label.setAttribute("value", "Установлен " + lab + " прокси: " + sel );
    
        var focused = document.commandDispatcher.focusedWindow;
        var selection = focused.getSelection().getRangeAt(0).getBoundingClientRect();
        var posX = focused.mozInnerScreenX + selection.left;
        var posY = focused.mozInnerScreenY + selection.bottom - 5;   

        tooltip.showPopup( gBrowser, posX, posY );
        setTimeout(function() { gBrowser.removeChild( tooltip ) }, 2000 );
     };
     showTooltip();    
  };
   
})();

Отсутствует

 

№29116-12-2013 01:46:52

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Обсуждение кнопок CB

rbfyec пишет

Я пользуюсь кнопкой Открывать всё в новых вкладках.
Но пункт контекстного меню адресной строки "Вставить и перейти" открывает адрес из буфера в текущей вкладке. А хотелось бы в новой.
Может можно что добавить в код кнопки?

Добавить:

Выделить код

Код:

addEventListener("popupshowing", function(e) {
   var menupopup = e.originalTarget;
   var pasteAndGo = menupopup.getElementsByAttribute("anonid", "paste-and-go")[0];
   pasteAndGo.setAttribute("oncommand", "event.preventDefault(); gURLBar.select(); goDoCommand('cmd_paste'); gURLBar.handleCommand(event);")
}, false, document.getElementById("urlbar") );

Отредактировано bunda1 (16-12-2013 01:49:49)

Отсутствует

 

№29216-12-2013 02:42:07

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 25.0

Re: Обсуждение кнопок CB

bunda1 пишет

Добавить:

Выделить код

Код:

addEventListener("popupshowing", function(e) {
   var menupopup = e.originalTarget;
   var pasteAndGo = menupopup.getElementsByAttribute("anonid", "paste-and-go")[0];
   pasteAndGo.setAttribute("oncommand", "event.preventDefault(); gURLBar.select(); goDoCommand('cmd_paste'); gURLBar.handleCommand(event);")
}, false, document.getElementById("urlbar") );

Это я добавил, оно работает, благодарю.

А с кнопкой прокси не ладится.
Пункт меню появился, но при выделении текста прокси не устанавливается. Всплывающая подсказка рядом с выделенным текстом тоже не появляется. И сама кнопка, если я её располагаю в самом верху, на уровне панели меню, исчезает при перезапуске браузера.
Если вытащить кнопку на панель закладок, вроде она не пропадает, а просто не работает.

В консоли ошибок нет.

Отредактировано rbfyec (16-12-2013 02:44:49)

Отсутствует

 

№29316-12-2013 03:19:51

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Обсуждение кнопок CB

rbfyec пишет

А с кнопкой прокси не ладится.
Пункт меню появился, но при выделении текста прокси не устанавливается. Всплывающая подсказка рядом с выделенным текстом тоже не появляется. И сама кнопка, если я её располагаю в самом верху, на уровне панели меню, исчезает при перезапуске браузера.
Если вытащить кнопку на панель закладок, вроде она не пропадает, а просто не работает.

В консоли ошибок нет.

rbfyec
Я проверил и всё работает и кнопка не должна сама исчезать при перезапуске браузера.
Тут что то не понятное или ты что то не делаешь.

Отредактировано bunda1 (16-12-2013 03:20:35)

Отсутствует

 

№29417-12-2013 03:07:42

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 25.0

Re: Обсуждение кнопок CB

bunda1
Да, сейчас кнопка работает. А почему вчера не работало - понять не могу.
Спасибо!! :music:

Отсутствует

 

№29517-12-2013 15:49:14

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 25.0

Re: Обсуждение кнопок CB

А как сделать, чтоб кнопка меняла иконку от состояния прокси, неважно включаю я прокси хоткеем, кнопкой или жестом?

Отсутствует

 

№29617-12-2013 16:32:00

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Обсуждение кнопок CB

rbfyec пишет

А как сделать, чтоб кнопка меняла иконку от состояния прокси, неважно включаю я прокси хоткеем, кнопкой или жестом?

Выделить код

Код:

// Установливать нужную иконку кнопки при старте баузера или при изменениях в 'about:config' ................................
var  s = "network.proxy.type";
function toggleImage() {
    var icon = self.ownerDocument.getAnonymousElementByAttribute( self, "class", "toolbarbutton-icon");
    icon.src = ( cbu.getPrefs(s) == 0 )
    ? self.image
    : 'data:image/x-icon;base64,AAABAAEAEREAAAEAIADwBAAAFgAAACgAAAARAAAAIgAAAAEAIAAAAAAAyAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAQAAAAAIAA4GQAAnFmkAHQ5fAAQAKAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAEBAQECAgICAgICAgICAgMBAQEAAAQBJBFQOLQ+nX38ecev/mu6of8gfFvtAyUXewAAAAsAAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEBAAAAAAMLUza7PKd//3S7oP2849X9zuvh/mW4mf4XiV7/AB4QZwAAAAAAAAAAAQEBAQAAAAAZGhgTKSwnLyYqJDErKCUnID8vXgaAUP9BlnH8b7ea/ojHrv+q2sf/a7CT+zGWbf8PakXGAAIAAAEBAQMHBwcbAAAAD2BiXn76/ff/4ebg/Onm4f+DtZ7/A31L/j2Wb/+Fwaj/ls23/7rh0v9+vaT+M5du/xKGWO0DIxIdAAAAAAEBAQEAAAABBgYFEaSmorbP08z239vX/4OwnP4ail3/RJlz/5HHsP/T7+X/ms64/3K2mP40k2r/D3tM7AUiExwhIx8meXt1mXt+eKJ3eXSce353n6esouDMysf/o7eq/kOdeP92uZv/vuPT/9Hs4P/C4tT/eLWa+juWbv8bcEq7AAYBAF1gWn7//////f39/P//////////////////////////lcKx/3i9pf/K7OD/2O/l/7ndzf6Fw6n/VK+I/AsxHj8AAAAAXF5bf+Ln2P+AnU/4fZ1N+4WiV/yKp13+jKlh/5CsZf+GpFj/Zpxh/4C5nf+i0L7+k8ex/1udf+UTOCZFAAAAAAEBAQJfYF5/3uXR/16IIPxciiH/Z5Iv/26YOP9ymz3/cpw+/3OcPf9wlzb/YI80/1mKNPu707X/YmZjiAAAAAAEBAQGAAAAAF9gXoDg5tT/cJU6/HGaPf9/pE3/hqtX/4uvXf+NsF7/iKxZ/4KoU/9+o0r/cpY6+9zjyf9ubm2JAAAAAAMEAwQAAAAAX2BegODm1P94nEX8e6JJ/4quXP+Vt2n/nb1z/6LBef+jwXz/ob96/527d/+NrGP71+HG/2praogAAAAABAQDBAAAAABfYF2A4ObU/4WlVvyPsmP/osB7/7HMj/+81J3/wdik/8DXo/+60pz/tc6X/6G6ffvY4sf/amtqiAAAAAAEBAMEAAAAAF9gXn/e5dL/n7l7/LLMk//B16X/zuG2/9jpwv/b68b/2enE/9Pkvv/Q4bv/uMud+9jhyP9qa2mHAAAAAAQEAwQAAAAAX2Bef97k0v+gt335sceT/LrNnfzC1Kj8ydmx/MzatfzK2bP8xtav/MbVr/ywwpL41+HH/2tsaokAAAAABAQDBAAAAABZW1Z3+fz1/+Dm1Pzj6db/5u3b/+nv3v/r8eD/6vDe/+ft2//k69j/4efT/9ngzPv7//b/ZGdhfwAAAAADBAMEAAAAABcZFRpZW1Z6YGFfgWBiYIBhYmGAYmJhgGJjYoBiY2KAYmJhgGFiYYBgYWCAX2BegF1fWoAbHRkeAAAAAAEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=';
};  
toggleImage();
gPrefService.addObserver( s, toggleImage, false );
addDestructor(function() { gPrefService.removeObserver( s, toggleImage, false ) });

Отсутствует

 

№29718-12-2013 15:29:28

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 25.0

Re: Обсуждение кнопок CB

Иконка есть! :)


А вот одна вещь у меня не получается.

Допустим прописан у меня в настройках какой-то прокси. Потом я через контекстное меню (или в диалоге) меняю адрес/порт.
А через время я хочу вернуться (нажатием кнопки) на тот, первый прокси. Его изначальные настройки я записываю в переменные

Выделить код

Код:

addr = Application.prefs.getValue("network.proxy.http", 0); 
prt = Application.prefs.getValue("network.proxy.http_port", 0)

И хочу использовать их  для возврата на первый прокси. Но когда я меняю через контекстное меню адрес/порт -  addr и prt   перезаписываются.
Я менял место объявления эти переменных, всё равно не получается, не могу сохранить первоначальные значения, хоть бери в блокнот записывай. (Область видимости?)

Хочу уточнить: первый прокси - это не какойто фиксированный адрес, а просто тот, который был ДО изменения настроек.

Отсутствует

 

№29818-12-2013 17:01:32

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Обсуждение кнопок CB

rbfyec
Не много непонятно но кажется ты хочешь менять прокси через меню и потом нажатием кнопки возвращать первоначальное значение. Самое простое решение, в код кнопки:

Выделить код

Код:

Application.prefs.setValue('network.proxy.http', '119.82.240.185' );                 
Application.prefs.setValue('network.proxy.http_port', 8080 );

Порт и адрес ставь свой.

Отредактировано bunda1 (18-12-2013 17:02:23)

Отсутствует

 

№29918-12-2013 20:43:27

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 25.0

Re: Обсуждение кнопок CB

bunda1 пишет

Не много непонятно но кажется ты хочешь менять прокси через меню и потом нажатием кнопки возвращать первоначальное значение

Выделить код

Код:

Application.prefs.setValue('network.proxy.http', '119.82.240.185' );                 
Application.prefs.setValue('network.proxy.http_port', 8080 );

Нет, как установить эти настройки я знаю и я это делаю.
Мне нужно сохранить значения настроек текущего прокси, чтобы можно было потом к ним вернуться.

То что предлагает okkamas_knife вроде подходит, но...
Я создал в about:config параметры custombuttons.button.proxy.proxybakup (строка) и custombuttons.button.proxy.portbakup (целое). В сниппетах есть код

Выделить код

Код:

//установить значение параметра в about:config (средствами CB)
var n="browser.download.dir";//параметр
var z="C:\Documents and Settings\Администратор\Рабочий стол";//значение, для булевых ставим 0-false 1-true
custombuttons.setPrefs(n,z);

И вот в коде кнопки я нашёл место, где добавляется прокси и написал

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

Выделить код

Код:

// добавление прокси
  function addNewProxy( sel, i ) {  
     var selection = document.commandDispatcher.focusedWindow.getSelection().toString();
     var sel = ( sel == undefined ) ? selection : sel.toString();
     sel = sel.replace(/^\s+|\s+$/g, ""); // удалить пробелы, слева и справа от строки
     sel = sel.replace(/\s+/g,":"); // заменить пробелы внутри строки
     
     // если порт ...
     if ( sel.length < 5 && isFinite(sel) ) {  
          sel = sel.replace(/:/g, "");
          sel = +sel;  // порт как число
          var lab = 'порт';
          var pref = 'network.proxy.http_port';
          }
     
     // если адрес ...
     if ( sel.length > 4 && !/:/.test(sel) && sel.split(".").length == 4 ) {  
          var lab = 'адрес';
          var pref = 'network.proxy.http';
          }     
    
     // если адрес и порт ...    
     if ( sel.length > 4 && /:/.test(sel) && sel.split(":").length == 2 && sel.split(".").length == 4 ) {
          var lab = 'адрес и порт';
          var array = sel.split(":");  
          array.forEach(function(sel, i) { addNewProxy( sel, i ) });          
          }     
     
      Application.prefs.setValue( pref, sel ); // переключить настройки прокси
 
      
 //****************   Это я добавил   *************************************  
  
       proxybakup =  custombuttons.setPrefs("custombuttons.button.proxy.proxybakup", pref); 
       portbakup = custombuttons.setPrefs("custombuttons.button.proxy.portbakup", sel);


Это не работает. В консоли

Ошибка: NS_ERROR_UNEXPECTED: Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIPrefBranch.setCharPref]
Источник: chrome://custombuttons/content/overlay.js
Строка: 914

Отсутствует

 

№30018-12-2013 22:14:13

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Обсуждение кнопок CB

Надо заменить:

Выделить код

Код:

addEventListener("command", function(e) { addNewProxy() }, false, menuitem );

на:

Выделить код

Код:

addEventListener("command", function(e) {
     // сохранить старые настройки прокси ....
     Application.prefs.setValue('CB.button.proxy.portbakup', cbu.getPrefs("network.proxy.http_port") );
     Application.prefs.setValue('CB.button.proxy.proxybakup', cbu.getPrefs("network.proxy.http") );   
  
     addNewProxy();
}, false, menuitem );

Отсутствует

 

Board footer

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