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

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

№322604-11-2011 22:07:07

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

Re: Custom Buttons

Inko7
что показывает Консоль ошибок, если СКМ на кнопке?
какие у тебя расширение установлены?
скопируй где то текст, без выделение + СКМ на кнопке, что будет?

Отредактировано bunda1 (04-11-2011 22:09:17)

Отсутствует

 

№322704-11-2011 22:18:40

Inko7
Участник
 
Группа: Members
Зарегистрирован: 09-11-2009
Сообщений: 1005
UA: Firefox 7.0

Re: Custom Buttons

bunda1
попробовал на чистом профиле > тот же эффект! При этом в консоли ничего не появляется.
Когда текст в буфере и нет выделения на странице, срабатывание кнопки всегда нормальное!
А с выделенным текстом срабатывает только так, как писал выше:

выделить текст > клик СКМ по кнопке > выскакивает пустой алерт и ничего не автовыделяется > клик по странице чтобы снять выделение с текста > снова клик СКМ по кнопке > выскакивает алерт с ранее выделенным текстом и срабатывает автовыделение!!!

Отсутствует

 

№322804-11-2011 22:40:58

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

Re: Custom Buttons

inko7
Попробуй в кнопке заменить на этот код: 

Выделить код

Код:

//настройка функций кликов мыши(Mouse Click settings)...................................................
this.onclick = function(event) {
    if(event.button == 0) {
        // Действие при клике ЛКМ
        switchHighlight(event);
    }
    else if(event.button == 1) {
        // Действие при клике СКМ
        HighlightAdd(event);
    }
};


//Объявляем 'clipboard','storage' .................................................................
var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"].  getService(Components.interfaces.nsIClipboardHelper);
storage = globalStorage[document.domain]


//подсказка.............................................................................
this.showHighlightAdd = function() {
  //getting prefs Unicode value
  var HighlightValue = prefs.getComplexValue("Auto.Highlight.value",Components.interfaces.nsISupportsString).data;
  var text = "L =  Bключить/выключить\nM = Добавить текст \nR = CB меню ";
  var L_text = "Выделяем:  ";
  this.tooltipText = this.label +"\n" + text +"\n\n"+ L_text + HighlightValue;
}
this.setAttribute("onmouseover", "this.showHighlightAdd()");


//Стоп, при открытии настройки панелей....................................................
this.onDestroy = function(reason) {
  //....
  if (reason == "constructor") storage['run'] = 'stop'
  if (reason == "destructor")  delete storage['run']
}


//проверить наличие строк в about:config и создать если не существует(Add preferences)........................................
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService);
var f;
try{
    f = prefs.getBoolPref("Auto.Highlight");
}
catch(e){
    prefs.setBoolPref("Auto.Highlight", true);
    prefs.setCharPref("ui.textHighlightBackground", "#ef0fff");//http://coloria.net/bonus/colornames.htm
    clipboard.copyString("пожалуйста добавьте текст");
    HighlightAdd(event);
}


//Авто выделение, добавить текст..............................
function HighlightAdd(event){
        // Get the root branch
var prefs = Components.classes["@mozilla.org/preferences-service;1"]
                     .getService(Components.interfaces.nsIPrefBranch);
//setting Unicode value
var str = Components.classes["@mozilla.org/supports-string;1"]
      .createInstance(Components.interfaces.nsISupportsString);
       //
       var text = document.commandDispatcher.focusedWindow.getSelection();
       if (text != '')
       {
       str.data = text;
       }
       else
       {
       //read from Clipboard
       str.data = readFromClipboard();
       };
       //setting prefs Unicode value
        prefs.setComplexValue("Auto.Highlight.value", 
        Components.interfaces.nsISupportsString, str);
        //getting prefs Unicode value
        var Avalue = prefs.getComplexValue("Auto.Highlight.value",Components.interfaces.nsISupportsString).data
        //Sliding alert
        if (Avalue !== "пожалуйста добавьте текст")
        {
        custombuttons.alertSlide("Авто выделение", Avalue);
        }
        //run auto Highlight
        Highlight(event);
};


//Авто выделение, включить............
function switchHighlight(event){
       // toggle preference
       var s = "Auto.Highlight";
       custombuttons.setPrefs(s, !custombuttons.getPrefs(s));
       //toggle image
       ToggleImage(event);
       //run auto Highlight
        Highlight(event);
};


//Изменить иконку кнопки............
var button = this;
function ToggleImage(event){
// toggle button image
if (custombuttonsUtils. getPrefs ("Auto.Highlight", true))
{
button.image="data:image/x-icon;base64,AAABAAEAEREAAAEAIADwBAAAFgAAACgAAAARAAAAIgAAAAEAIAAAAAAAyAQAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD+//4B////APX69AV9vWaPVJsR9GabDPiQrDGn6OzRG////wD+/v0B////AP///gL///0B////AP///wD///8A////AP3+/gP///8ActGnhRyqVP83q0r8PqMu/kqZDf9yoh7Wu8t8YNjan07m4bM9+ffqCf///wD///4B////AP///wD8/v8C//7/AOL5/A4d1NrUFc/G/yHEov0qt3b/NKtM/UGeHv9WlAD/eJcB/peZAP+nphzH5+bAIP///wD+/v8A/fz/A/3+/wH///8A5/b+CyG8/c4Jz/z/ENfm/RrLuf8nu4b/M61S/UGgJvtbnBH8fqAQ/IKXAP+lrjax/v76AP7+/gH///8A7fD9CNni/Bb///8Ac7/4dQCn9/8P1f38ENbh/xzIsf8ouoD/NKtL/0GeHf9enA79dJ0M/4yiGOrx8d0c/f3/AJaT7105O+TOHTjn5GuP8n7u9v4AOK/3ugW/+/8N2vX9FdDN/yDDoP8rtXD/N6c//kqdGPpcnBD/dqIZ3/L05BCVht5rLhXE/zMj0f0nKuL/EkHp7+Dm/Bq64/wyBKz4/w/W/fwP1+X/Gsq4/ya+kPwwsWH+M58o/jSSAP+exXNr////AFkwrepXMrT8SjPG9icg2v8xRunM8fX+BfL5/gcdpPbOBMH8/w/b9vwX0dH+FcKk/yS3evFZum2rpdOaUPj79gD///8BZy6R8lsqn/8/Hbb/NSfS6MPE+DDj7PwI8vP9ALHe/DQXs/nWAs/9/wDV5v9C1Mmwye/jI////wD///8B////AP7+/gG/oclQgVSpuIhuy4/OyfIheHbpgx815+4vZ+7C2uf8Fuz5/we+8P83y/f8Jvb9/QL///8A8vv4CZPUpGO837Y5////AP///wD6+f0D////AIVy1IsgEsz/Lini+Qow5/+Gq/Vq////AM/t/Ruo6/4+6/z9C////wB817lzE6dQ/zGeJfOs05lI/Pv9Bf///wDXy+knTCOu7UYvxf89KtH4Fhrh/4yb9GTB3/sjCJH07QC9+v854Pio9///AFHOsrMktnX/NKtO/0KoPsz9/P0D////AMey2ElWJaL/UzG4+k0vv/4sGs/5vLn1Mkl68aoLcvD/G6j4+QDH+v+29f8xY9zUkA/Eo/8swpH3JL6M/P38/gL///8A08DcNF8kkPlgNar9Sh2m/3texp/i4PsPKTDk7hxP7P8eefD7Apb1/47Z/E2x8vw2AMrv/wXN5/8O0Ova////AP///wH8+/wAoHe0iWkukfN+U66v8+31C9PL7iA3H8n6KSzi/yNF6/sMVe3/rc35PP///wB/zv1qM7L7u53e/j7///8A////AP///wD7+fsB6NzqD/n2+gT///8A7uf0EV80rONFKcD/LCTU/zxC47/u8P4D////Af7+/gH//f4A///+AP///wD///8A//7/AP79/gL///8A/v7/Av38/gT///8AsZHEZmAplv5gOrPQzMbwKf///wD9/f4C/f//A/7//wL9/v8CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
}
else
{
button.image="data:image/x-icon;base64,AAABAAEAEREAAAEAIADwBAAAFgAAACgAAAARAAAAIgAAAAEAIAAAAAAAyAQAAAAAAAAAAAAAAAAAAAAAAAD///8A/v7+AP39/QH9/f0B/f39Af39/QH///8AmJiYKQAAALEDAwPqAAAA1gAAAGm7u7sA////Afv7+wD///8A////AP39/QH9/f0D////AP///wD7+/sB////AKKiogoAAADJAAAA/wAAAP0BAQH+AAAA/wsLC3HDw8MA////Bfb29gP+/v4A////Aefn5wDT09MJ1tbWCdTU1AT///8AXFxcSwAAAPsEBAT/AAAA/gAAAPwFBQX/AAAA63Nzczvu7u4A/Pz8Avz8/AHr6+sJMjIyZgAAAL8CAgLCAAAApsbGxhhoaGhLAAAA/gUFBf8AAAD+AAAA/wAAAP0DAwP/AAAA6hMTE5eHh4cr3d3dACsrK4gAAAD/AwMD/gMDA/wAAAD/Hh4emy0tLQwAAADwAQEB/wAAAP4AAAD/AAAA/wAAAP8BAQH9AwMD/wAAAOcrKys5AwMD7gYGBv4AAAD7BAQE/QAAAP9KSkp5////ABUVFcIAAAD/AQEB/QAAAP8AAAD/AAAA/wAAAP4BAQH6BwcH/wICAr8BAQGfAAAA/wEBAf8AAADrBQUFeMbGxgX///8AGhoawQAAAP8BAQH+AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD9BgYG66+vrwc1NTVCDw8PPgAAADUREREt0tLSF+7u7gAdHR27AAAA/wICAvsBAQH9AQEB/QEBAf0BAQH8AQEB+wICAv8BAQHC////AsHBwQAICAhzAAAA6AQEBP8AAADqWlpaL25ubj8AAAD4AgIC/wAAAP4AAAD/AAAA/wAAAP4CAgL/AAAA3VtbWznHx8cABgYGbwAAAP8BAQH+AAAA+AUFBf8AAAB18PDwAIyMjDwYGBiuGRkZwxgYGJQTExNzFhYWdQUFBWRgYGAb////ALS0tBwAAADXBQUF/wAAAPgFBQX/AAAA90tLSzunp6cApqamDaurqwP///8A////AP///wD///8A////AP///wD7+/sBtLS0LQAAAOwLCwv/CQkJ+wAAAP88PDyLkJCQDAICAqYAAADdAAAAkJCQkAP///8AW1tbLUlJSXFnZ2cR////AP7+/gHNzc0HDAwMpAAAAP8AAADuJycneRMTEw8PDw/AAQEB/wsLC/8AAAD6cnJyPHR0dB4AAADiAAAA/yAgIJX///8A/v7+Av///wC7u7sPgoKCRYqKii3T09MACgoKaAAAAP8BAQH4AgIC/AAAAP8vLy9GKysreQAAAP8FBQX/BwcH3LS0tAj///8A/f39Af39/QH///8A////AOzs7AYDAwPEAAAA/wAAAPsCAgL/AAAA8mtrawlMTEygAAAA/wgICP8AAADpampqGP///wD///8A/Pz8Afn5+QT+/v4B7e3tBAQEBMEAAAD/AQEB/QAAAP8TExNv////AFJSUosAAAD/AwMD/wEBAauurq4A////Av///wD///8A/v7+AP///wLv7+8AAwMDSwAAAOADAwPZAAAAZZOTkwP///8AT09PIQAAALYAAAC3oaGhIf///wD9/f0BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
}
  };
//Стоп, при открытии настройки панелей(stop, if onDestroy)
// запускаем функцию
if (storage['run'] !== 'stop'){ToggleImage(event); };


//Автоматически выделить заранее введенные слова (auto Highlight words permanent)......................
function Highlight(event) {

//hide Highlight
gFindBar._highlightDoc(false);

//auto Highlight
if (custombuttonsUtils. getPrefs ("Auto.Highlight", true))
{
//getting prefs Unicode value
var value = prefs.getComplexValue("Auto.Highlight.value",
      Components.interfaces.nsISupportsString).data;

//Highlight
var word = [value];
gFindBar._highlightDoc(true, word);
}
 }; 
  
//Стоп, при открытии настройки панелей(stop, if onDestroy)
// запускаем функцию
if (storage['run'] !== 'stop') (function () {
// добавляем обработчики
gBrowser.tabContainer.addEventListener("TabSelect", Highlight, false);
document.addEventListener( "DOMContentLoaded", Highlight, false);
})();

Отредактировано bunda1 (05-11-2011 13:11:58)

Отсутствует

 

№322904-11-2011 22:54:10

Inko7
Участник
 
Группа: Members
Зарегистрирован: 09-11-2009
Сообщений: 1005
UA: Firefox 7.0

Re: Custom Buttons

bunda1
Этот код работает как надо! Спасибо.
Последний штрих:
можешь повесить дополнительно на Ctrl (или ALT, или SHIFT) + ЛКМ > сбросить запомненный текст ? Тоже будет не лишним...

Отсутствует

 

№323004-11-2011 23:21:31

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

Re: Custom Buttons

Inko7 пишет

bunda1
Последний штрих:
можешь повесить дополнительно на Ctrl (или ALT, или SHIFT) + ЛКМ > сбросить запомненный текст ? Тоже будет не лишним...

Ctrl  + ПКМ > сбросить запомненный текст

Выделить код

Код:

//настройка функций кликов мыши(Mouse Click settings)...................................................
this.onclick = function(event) {
    if(event.button == 0) {
        // Действие при клике ЛКМ
        switchHighlight(event);
    }
    if(event.button == 2 && event.ctrlKey && !event.altKey && !event.shiftKey)
    {
     // Действие при клике ctrl+ПКМ
     // Блокируем контекстное меню при клике ПКМ без модификаторов
        event.preventDefault();
        event.stopPropagation();
     // clear preference
     clipboard.copyString("??????");
     HighlightAdd(event);
    };
    
    if(event.button == 1) {
        // Действие при клике СКМ
        HighlightAdd(event);
    }
};



//Объявляем 'clipboard','storage' .................................................................
var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"].  getService(Components.interfaces.nsIClipboardHelper);
storage = globalStorage[document.domain]


//подсказка.............................................................................
this.showHighlightAdd = function() {
  //getting prefs Unicode value
  var HighlightValue = prefs.getComplexValue("Auto.Highlight.value",Components.interfaces.nsISupportsString).data;
  var text = "L =  Bключить/выключить\nM = Добавить текст \nR = CB меню ";
  var L_text = "Выделяем:  ";
  this.tooltipText = this.label +"\n" + text +"\n\n"+ L_text + HighlightValue;
}
this.setAttribute("onmouseover", "this.showHighlightAdd()");


//Стоп, при открытии настройки панелей....................................................
this.onDestroy = function(reason) {
  //....
  if (reason == "constructor") storage['run'] = 'stop'
  if (reason == "destructor")  delete storage['run']
}


//проверить наличие строк в about:config и создать если не существует(Add preferences)........................................
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService);
var f;
try{
    f = prefs.getBoolPref("Auto.Highlight");
}
catch(e){
    prefs.setBoolPref("Auto.Highlight", true);
    prefs.setCharPref("ui.textHighlightBackground", "#ef0fff");//http://coloria.net/bonus/colornames.htm
    clipboard.copyString("пожалуйста добавьте текст");
    HighlightAdd(event);
}


//Авто выделение, добавить текст..............................
function HighlightAdd(event){
        // Get the root branch
var prefs = Components.classes["@mozilla.org/preferences-service;1"]
                     .getService(Components.interfaces.nsIPrefBranch);
//setting Unicode value
var str = Components.classes["@mozilla.org/supports-string;1"]
      .createInstance(Components.interfaces.nsISupportsString);
       //
       var text = document.commandDispatcher.focusedWindow.getSelection();
       if (text != '')
       {
       str.data = text;
       }
       else
       {
       //read from Clipboard
       str.data = readFromClipboard();
       };
       //setting prefs Unicode value
        prefs.setComplexValue("Auto.Highlight.value", 
        Components.interfaces.nsISupportsString, str);
        //getting prefs Unicode value
        var Avalue = prefs.getComplexValue("Auto.Highlight.value",Components.interfaces.nsISupportsString).data
        //Sliding alert
        if (Avalue !== "пожалуйста добавьте текст")
        {
        custombuttons.alertSlide("Авто выделение", Avalue);
        }
        //run auto Highlight
        Highlight(event);
};


//Авто выделение, включить............
function switchHighlight(event){
       // toggle preference
       var s = "Auto.Highlight";
       custombuttons.setPrefs(s, !custombuttons.getPrefs(s));
       //toggle image
       ToggleImage(event);
       //run auto Highlight
        Highlight(event);
};


//Изменить иконку кнопки............
var button = this;
function ToggleImage(event){
// toggle button image
if (custombuttonsUtils. getPrefs ("Auto.Highlight", true))
{
button.image="data:image/x-icon;base64,AAABAAEAEREAAAEAIADwBAAAFgAAACgAAAARAAAAIgAAAAEAIAAAAAAAyAQAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD+//4B////APX69AV9vWaPVJsR9GabDPiQrDGn6OzRG////wD+/v0B////AP///gL///0B////AP///wD///8A////AP3+/gP///8ActGnhRyqVP83q0r8PqMu/kqZDf9yoh7Wu8t8YNjan07m4bM9+ffqCf///wD///4B////AP///wD8/v8C//7/AOL5/A4d1NrUFc/G/yHEov0qt3b/NKtM/UGeHv9WlAD/eJcB/peZAP+nphzH5+bAIP///wD+/v8A/fz/A/3+/wH///8A5/b+CyG8/c4Jz/z/ENfm/RrLuf8nu4b/M61S/UGgJvtbnBH8fqAQ/IKXAP+lrjax/v76AP7+/gH///8A7fD9CNni/Bb///8Ac7/4dQCn9/8P1f38ENbh/xzIsf8ouoD/NKtL/0GeHf9enA79dJ0M/4yiGOrx8d0c/f3/AJaT7105O+TOHTjn5GuP8n7u9v4AOK/3ugW/+/8N2vX9FdDN/yDDoP8rtXD/N6c//kqdGPpcnBD/dqIZ3/L05BCVht5rLhXE/zMj0f0nKuL/EkHp7+Dm/Bq64/wyBKz4/w/W/fwP1+X/Gsq4/ya+kPwwsWH+M58o/jSSAP+exXNr////AFkwrepXMrT8SjPG9icg2v8xRunM8fX+BfL5/gcdpPbOBMH8/w/b9vwX0dH+FcKk/yS3evFZum2rpdOaUPj79gD///8BZy6R8lsqn/8/Hbb/NSfS6MPE+DDj7PwI8vP9ALHe/DQXs/nWAs/9/wDV5v9C1Mmwye/jI////wD///8B////AP7+/gG/oclQgVSpuIhuy4/OyfIheHbpgx815+4vZ+7C2uf8Fuz5/we+8P83y/f8Jvb9/QL///8A8vv4CZPUpGO837Y5////AP///wD6+f0D////AIVy1IsgEsz/Lini+Qow5/+Gq/Vq////AM/t/Ruo6/4+6/z9C////wB817lzE6dQ/zGeJfOs05lI/Pv9Bf///wDXy+knTCOu7UYvxf89KtH4Fhrh/4yb9GTB3/sjCJH07QC9+v854Pio9///AFHOsrMktnX/NKtO/0KoPsz9/P0D////AMey2ElWJaL/UzG4+k0vv/4sGs/5vLn1Mkl68aoLcvD/G6j4+QDH+v+29f8xY9zUkA/Eo/8swpH3JL6M/P38/gL///8A08DcNF8kkPlgNar9Sh2m/3texp/i4PsPKTDk7hxP7P8eefD7Apb1/47Z/E2x8vw2AMrv/wXN5/8O0Ova////AP///wH8+/wAoHe0iWkukfN+U66v8+31C9PL7iA3H8n6KSzi/yNF6/sMVe3/rc35PP///wB/zv1qM7L7u53e/j7///8A////AP///wD7+fsB6NzqD/n2+gT///8A7uf0EV80rONFKcD/LCTU/zxC47/u8P4D////Af7+/gH//f4A///+AP///wD///8A//7/AP79/gL///8A/v7/Av38/gT///8AsZHEZmAplv5gOrPQzMbwKf///wD9/f4C/f//A/7//wL9/v8CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
}
else
{
button.image="data:image/x-icon;base64,AAABAAEAEREAAAEAIADwBAAAFgAAACgAAAARAAAAIgAAAAEAIAAAAAAAyAQAAAAAAAAAAAAAAAAAAAAAAAD///8A/v7+AP39/QH9/f0B/f39Af39/QH///8AmJiYKQAAALEDAwPqAAAA1gAAAGm7u7sA////Afv7+wD///8A////AP39/QH9/f0D////AP///wD7+/sB////AKKiogoAAADJAAAA/wAAAP0BAQH+AAAA/wsLC3HDw8MA////Bfb29gP+/v4A////Aefn5wDT09MJ1tbWCdTU1AT///8AXFxcSwAAAPsEBAT/AAAA/gAAAPwFBQX/AAAA63Nzczvu7u4A/Pz8Avz8/AHr6+sJMjIyZgAAAL8CAgLCAAAApsbGxhhoaGhLAAAA/gUFBf8AAAD+AAAA/wAAAP0DAwP/AAAA6hMTE5eHh4cr3d3dACsrK4gAAAD/AwMD/gMDA/wAAAD/Hh4emy0tLQwAAADwAQEB/wAAAP4AAAD/AAAA/wAAAP8BAQH9AwMD/wAAAOcrKys5AwMD7gYGBv4AAAD7BAQE/QAAAP9KSkp5////ABUVFcIAAAD/AQEB/QAAAP8AAAD/AAAA/wAAAP4BAQH6BwcH/wICAr8BAQGfAAAA/wEBAf8AAADrBQUFeMbGxgX///8AGhoawQAAAP8BAQH+AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD9BgYG66+vrwc1NTVCDw8PPgAAADUREREt0tLSF+7u7gAdHR27AAAA/wICAvsBAQH9AQEB/QEBAf0BAQH8AQEB+wICAv8BAQHC////AsHBwQAICAhzAAAA6AQEBP8AAADqWlpaL25ubj8AAAD4AgIC/wAAAP4AAAD/AAAA/wAAAP4CAgL/AAAA3VtbWznHx8cABgYGbwAAAP8BAQH+AAAA+AUFBf8AAAB18PDwAIyMjDwYGBiuGRkZwxgYGJQTExNzFhYWdQUFBWRgYGAb////ALS0tBwAAADXBQUF/wAAAPgFBQX/AAAA90tLSzunp6cApqamDaurqwP///8A////AP///wD///8A////AP///wD7+/sBtLS0LQAAAOwLCwv/CQkJ+wAAAP88PDyLkJCQDAICAqYAAADdAAAAkJCQkAP///8AW1tbLUlJSXFnZ2cR////AP7+/gHNzc0HDAwMpAAAAP8AAADuJycneRMTEw8PDw/AAQEB/wsLC/8AAAD6cnJyPHR0dB4AAADiAAAA/yAgIJX///8A/v7+Av///wC7u7sPgoKCRYqKii3T09MACgoKaAAAAP8BAQH4AgIC/AAAAP8vLy9GKysreQAAAP8FBQX/BwcH3LS0tAj///8A/f39Af39/QH///8A////AOzs7AYDAwPEAAAA/wAAAPsCAgL/AAAA8mtrawlMTEygAAAA/wgICP8AAADpampqGP///wD///8A/Pz8Afn5+QT+/v4B7e3tBAQEBMEAAAD/AQEB/QAAAP8TExNv////AFJSUosAAAD/AwMD/wEBAauurq4A////Av///wD///8A/v7+AP///wLv7+8AAwMDSwAAAOADAwPZAAAAZZOTkwP///8AT09PIQAAALYAAAC3oaGhIf///wD9/f0BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
}
  };
//Стоп, при открытии настройки панелей(stop, if onDestroy)
// запускаем функцию
if (storage['run'] !== 'stop'){ToggleImage(event); };


//Автоматически выделить заранее введенные слова (auto Highlight words permanent)......................
function Highlight(event) {

//hide Highlight
gFindBar._highlightDoc(false);

//auto Highlight
if (custombuttonsUtils. getPrefs ("Auto.Highlight", true))
{
//getting prefs Unicode value
var value = prefs.getComplexValue("Auto.Highlight.value",
      Components.interfaces.nsISupportsString).data;

//Highlight
var word = [value];
gFindBar._highlightDoc(true, word);
}
 }; 
  
//Стоп, при открытии настройки панелей(stop, if onDestroy)
// запускаем функцию
if (storage['run'] !== 'stop') (function () {
// добавляем обработчики
gBrowser.tabContainer.addEventListener("TabSelect", Highlight, false);
document.addEventListener( "DOMContentLoaded", Highlight, false);
})();

Отредактировано bunda1 (05-11-2011 13:13:15)

Отсутствует

 

№323105-11-2011 13:48:25

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

Re: Custom Buttons

Search in Website+(Firefox)
http://forum.mozilla-russia.org/viewtop … 61#p515161
Исправил ошибки:
Не искала выделенный текст внутри фрейма.

Отсутствует

 

№323206-11-2011 00:16:44

Munchauzen
Участник
 
Группа: Members
Зарегистрирован: 13-10-2011
Сообщений: 27
UA: unknown 0.0
Веб-сайт

Re: Custom Buttons

Поставил кнопку Popap-Toolbar!, скрытые тулбары она отображает, но они не активны. Что надо в коде кнопки менять или она должна работать без внесения изменений?

Отсутствует

 

№323306-11-2011 00:20:21

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

Re: Custom Buttons

Munchauzen
что значит не активны.

Отсутствует

 

№323406-11-2011 01:41:20

middlemouse.paste
Участник
 
Группа: Members
Зарегистрирован: 10-07-2011
Сообщений: 21
UA: Firefox 7.0

Re: Custom Buttons

Какую переменную нужно использовать чтобы узнать что [firefox] в данный момент развернут и находится в фокусе мыши, а не свернут?

Отсутствует

 

№323508-11-2011 23:59:55

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

Re: Custom Buttons

Автовыделение(Firefox 3.6+)
http://forum.mozilla-russia.org/viewtop … 96#p527196

Добавил новые возможности:
Теперь, если открыт панель поиска по странице, кнопка будет автовыделять текст из поле вода панели поиска по странице.

Отсутствует

 

№323610-11-2011 12:09:12

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 11.0

Re: Custom Buttons

bunda1
Исправьте в кнопке Zoom+2 проблему ПКМ-настроить, плиз. :)

Отсутствует

 

№323710-11-2011 16:08:59

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 11.0

Re: Custom Buttons

На Ru-board выкладывалась кнопка-панель BB Code автор tolikdryg, самая удачная кнопка такого плана, которые я видел ИМХО.  На мой взгляд в ней не хватает кнопки, что бы из выделенного текста делать ссылку. Например, копируем адрес, набираем в окне для сообщений фразу, выделяем её, нажимаем на кнопку и имеем следующее:

Выделить код

Код:

[url=http://forum.mozilla-russia.org]Фраза[/url]

Но без обрамления code естественно.  Кто может доработайте плиз.
BBCode.zip BBCode.zip BBCode.zip

Отсутствует

 

№323810-11-2011 17:51:53

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 11.0

Re: Custom Buttons

okkamas_knife
Кнопка появилась, но не работает

Отсутствует

 

№323910-11-2011 18:30:17

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 11.0

Re: Custom Buttons

okkamas_knife пишет

Замени второй кусок на

Всё равно не хочет.

Отсутствует

 

№324010-11-2011 19:39:09

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 11.0

Re: Custom Buttons

okkamas_knife пишет

короче вот

О, теперь все ОК. Спасибо. :beer:

Отсутствует

 

№324110-11-2011 20:31:07

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

Re: Custom Buttons

mserv пишет

bunda1
Исправьте в кнопке Zoom+2 проблему ПКМ-настроить, плиз. :)

Исправил. Нашел другую ошибку, которую исправлю позже.
Добавил новые возможности:
левым кликом на масштаб отображения страницы =>сбросить масштаб.

Отсутствует

 

№324210-11-2011 22:00:17

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 11.0

Re: Custom Buttons

bunda1 пишет

Исправил. Нашел другую ошибку, которую исправлю позже.
Добавил новые возможности:
левым кликом на масштаб отображения страницы =>сбросить масштаб.

Спасибо. :beer:

Отсутствует

 

№324311-11-2011 04:46:02

Munchauzen
Участник
 
Группа: Members
Зарегистрирован: 13-10-2011
Сообщений: 27
UA: Firefox 4.0
Веб-сайт

Re: Custom Buttons

bunda1

что значит не активны.

Установил я кнопку, вытащил на панель, нажимаю на неё - появляется список тулбаров и "панель меню, панель закладок и тд" из "Вид"-"Панели инструментов". Но они не активны - если я в "Вид" нажимаю на тулбар, то он появляется, а в кнопке не нажимается, просто не реагирующий ни на что список.

Отсутствует

 

№324411-11-2011 10:59:15

Inko7
Участник
 
Группа: Members
Зарегистрирован: 09-11-2009
Сообщений: 1005
UA: Firefox 8.0

Re: Custom Buttons

Munchauzen

Поставил кнопку Popap-Toolbar! и т.д.

Если поставили из Готовых кнопок, то там же было указано:

Позволяет отображать скрытую панель с кнопками (созданную пользователем) в компактном виде.
Название по-умолчанию для пользовательской панели: MButtons. Его можно изменить в коде кнопки (смотри внутри комментарий).

Т.е. нужно заранее создать свою панель с именем MButtons (если другое, то придется подправить код). Вот инструкцию писал одному пользователю форума:

Правой кнопкой мыши на панели вкладок или панели дополнений > Настроить > в открывшемся окне: Добавить панель > вводишь имя для панели MButtons > на появившуюся панель обязательно кидаешь любую кнопку, чтобы она закрепилась > Готово!
Моя кнопка сама ее скроет при запуске FF и будет выводить в компактном виде.

Вроде ничего сложного ;)

Отсутствует

 

№324511-11-2011 20:03:55

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

Re: Custom Buttons

Zoom+2
Исправил ошибки:
Убрал лишний код

Добавил новые возможности:
Теперь если переключить на изменение масштаба только для текста на странице, текущий масштаб страницы в адресной строке или в на панели статуса отображается жирным шрифтом.


Savefrom2
Исправил ошибки:
Кнопка неработала в FF4+

Добавил новые возможности:
Теперь кнопка открывает SaveFrom.net в новой активной вкладке сразу справа от текущей вкладки.

Отредактировано bunda1 (11-11-2011 20:24:37)

Отсутствует

 

№324611-11-2011 21:30:52

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 11.0

Re: Custom Buttons

bunda1 пишет

Добавил новые возможности:
левым кликом на масштаб отображения страницы =>сбросить масштаб.

А как сделать, что бы масштаб сбрасывался на 130%?

Отсутствует

 

№324711-11-2011 23:01:29

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

Re: Custom Buttons

mserv пишет

А как сделать, что бы масштаб сбрасывался на 130%?

Выделить код

Код:

zoomPanel.addEventListener("click", function(){document.getElementById("cmd_fullZoomReset").doCommand()}, true);

замени на

Выделить код

Код:

zoomPanel.addEventListener("click", function(){ucjs_zoom.set_Zoom(1.30)}, true);

Отсутствует

 

№324811-11-2011 23:54:26

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 11.0

Re: Custom Buttons

bunda1 пишет

замени на

Заменил, но так возникает  баг.  Увеличиваю масштаб, например 150%, сбрасываю ПКМ до 130%, перехожу на другую вкладку, возвращаюсь, масштаб становится первоначальный 150%.  Т.е. после сброса ПКМ масштаб не запоминается.  А когда со 100% такого нет.

Отсутствует

 

№324912-11-2011 01:09:55

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

Re: Custom Buttons

mserv
:( не знаю как решить эту проблему, мне надо подумать.

Отсутствует

 

№325012-11-2011 11:59:29

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

Re: Custom Buttons

okkamas_knife пишет

а кто подскажет код?
если закрываемый таб активный и крайний левый то тоже закрываем и ничего не делаем
если закрывамый таб активный и не крайний левый то закрыв его переключаемся на тот что слева.

Выделить код

Код:

// Focus to left or right tab when current tab is closed.....................

(function(){
    try {
        if(!gBrowser) return;
    }catch(e) {
        return;
    }

    const direction = 0;//0 for left, 1 for right.....................

    gBrowser.tabContainer.addEventListener("TabClose", tabCloseHandler, false);

    function tabCloseHandler(event) {
        var tab = event.target;
        if(tab != gBrowser.mCurrentTab) {
            return;
        }

        if(direction == 0) {
            if (tab.previousSibling) {
                gBrowser.mTabContainer.selectedIndex--;
            }
        } else {
           if (tab.nextSibling) {
                gBrowser.mTabContainer.selectedIndex++;
           }
        }
    }
})();

Отсутствует

 

Board footer

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