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

Пользователи не любят читать документацию. Станьте оригинальным, будьте не как все. Ознакомьтесь с нашей базой знаний.

№970123-02-2016 22:48:34

emlen
Участник
 
Группа: Members
Зарегистрирован: 22-05-2015
Сообщений: 201
UA: unknown 0.0

Re: Custom Buttons

Dumby, а можно как-то сохранить куки с одного сайта, потом после работы не просто очищать текущие куки сайта, а восстанавливать те что были сохранены?

Отредактировано emlen (23-02-2016 22:48:51)


SeaMonkey 2.39 forever

Отсутствует

 

№970223-02-2016 23:09:37

Baron_
Участник
 
Группа: Members
Зарегистрирован: 13-08-2013
Сообщений: 70
UA: Firefox 44.0

Re: Custom Buttons

fokanik, ага, спасибо, работает. Отличная кнопка.

Отсутствует

 

№970323-02-2016 23:16:55

fokanik
Участник
 
Группа: Members
Зарегистрирован: 05-02-2014
Сообщений: 268
UA: Seamonkey 2.39

Re: Custom Buttons

Baron_ пишет

fokanik, ага, спасибо, работает. Отличная кнопка.

Ну или так, с иконкой rox player на кнопке:

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3E%u041E%u0442%u043A%u0440%u044B%u0442%u044C%20%u0432%u0438%u0434%u0435%u043E%20%u0432%20PotPlayerMini%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bmoz-icon%3A//file%3A//C%3A%5CUsers%5CHome%5CAppData%5CLocal%5CROX%20Player%5Croxplayer.exe%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bthis.tooltipText%20%3D%20%22%u041B%3A%20%u041E%u0442%u043A%u0440%u044B%u0442%u044C%20Rox%20Player%22%3B%0A%0Avar%20path%20%3D%20%22C%3A%5C%5CUsers%5C%5CHome%5C%5CAppData%5C%5CLocal%5C%5CROX%20Player%5C%5Croxplayer.exe%22%3B%0A%0Athis.onclick%20%3De%3D%3E%20%7B%0A%20%20%20if%20%28%20e.button%20%3D%3D%200%20%29open%28path%29%3B%0A%7D%3B%0A%0Aself.image%20%3D%20%22moz-icon%3A//file%3A//%22%20+%20path%3B%0A%0A%0Avar%20contextMenu%20%3D%20document.getElementById%28%22contentAreaContextMenu%22%29%3B%20%0Avar%20menuitem%20%3D%20contextMenu.insertBefore%28document.createElement%28%22menuitem%22%29%2C%20document.getElementById%28%22context-sep-open%22%29%29%3B%0Amenuitem.setAttribute%28%22label%22%2C%20%22%u041E%u0442%u043A%u0440%u044B%u0442%u044C%20%u0432%20Rox%20Player%22%29%3B%20%20%20%20%20%20%0Amenuitem.setAttribute%28%22class%22%2C%20%22menuitem-iconic%22%29%3B%0Amenuitem.setAttribute%28%22image%22%2C%20%22moz-icon%3A//file%3A//%22%20+%20path%29%3B%20%0Amenuitem.onclick%20%3D%28%29%3D%3E%20play%28gContextMenu.getLinkURL%28%29%2C%22rox%3A%22%29%3B%0AaddEventListener%28%22popupshowing%22%2C%20%28%29%3D%3E%20menuitem.hidden%20%3D%20%21gContextMenu.onLink%2C%20false%2C%20contextMenu%29%3B%0AaddDestructor%28%28%29%3D%3E%20menuitem.remove%28%29%20%29%3B%0A%0A%20%20%20%20%0Afunction%20play%28link%2C%20param%29%20%7B%0A%20%20%20var%20file%20%3D%20Cc%5B%22@mozilla.org/file/local%3B1%22%5D.createInstance%28Ci.nsILocalFile%29%3B%0A%20%20%20var%20process%20%3D%20Cc%5B%22@mozilla.org/process/util%3B1%22%5D.createInstance%28Ci.nsIProcess%29%3B%0A%20%20%20file.initWithPath%28path%29%3B%0A%20%20%20process.init%28file%29%3B%0A%20%20%20process.run%28false%2C%20%5Blink%2C%20param%5D%2C%202%29%3B%0A%7D%3B%0A%0Afunction%20open%28%20path%20%29%20%7B%0A%20%20%20%20%20%20var%20file%20%3D%20Cc%5B%27@mozilla.org/file/local%3B1%27%5D.createInstance%28Ci.nsILocalFile%29%3B%0A%20%20%20%20%20%20file.initWithPath%28%20path.replace%28/%5C//g%2C%27%5C%5C%5C%5C%27%29%20%29%3B%20%0A%20%20%20%20%20%20file.launch%28%29%3B%0A%7D%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E
Выделить код

Код:

this.tooltipText = "Л: Открыть Rox Player";

var path = "C:\\Users\\Home\\AppData\\Local\\ROX Player\\roxplayer.exe";

this.onclick =e=> {
   if ( e.button == 0 )open(path);
};

self.image = "moz-icon://file://" + path;


var contextMenu = document.getElementById("contentAreaContextMenu"); 
var menuitem = contextMenu.insertBefore(document.createElement("menuitem"), document.getElementById("context-sep-open"));
menuitem.setAttribute("label", "Открыть в Rox Player");      
menuitem.setAttribute("class", "menuitem-iconic");
menuitem.setAttribute("image", "moz-icon://file://" + path); 
menuitem.onclick =()=> play(gContextMenu.getLinkURL(),"rox:");
addEventListener("popupshowing", ()=> menuitem.hidden = !gContextMenu.onLink, false, contextMenu);
addDestructor(()=> menuitem.remove() );

    
function play(link, param) {
   var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
   var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
   file.initWithPath(path);
   process.init(file);
   process.run(false, [link, param], 2);
};

function open( path ) {
      var file = Cc['@mozilla.org/file/local;1'].createInstance(Ci.nsILocalFile);
      file.initWithPath( path.replace(/\//g,'\\\\') ); 
      file.launch();
};

Отсутствует

 

№970423-02-2016 23:41:12

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

Re: Custom Buttons

fokanik
Жаль ссылки Ютуба ещё не открывает.


Лучше спросить у знающих - чем лезть не зная.

Отсутствует

 

№970523-02-2016 23:45:00

fokanik
Участник
 
Группа: Members
Зарегистрирован: 05-02-2014
Сообщений: 268
UA: Seamonkey 2.39

Re: Custom Buttons

villa7 пишет

Жаль ссылки Ютуба ещё не открывает.

Для этого есть potplayer или smplayer, второй настраивать надо маленько.

Отсутствует

 

№970624-02-2016 00:06:41

Baron_
Участник
 
Группа: Members
Зарегистрирован: 13-08-2013
Сообщений: 70
UA: Firefox 44.0

Re: Custom Buttons

villa7 пишет

fokanik
Жаль ссылки Ютуба ещё не открывает.

PotPlayer в предыдущей кнопке открывает. Вернее, добавляет ссылки в список воспроизведения. А если нажать на кнопку с открытой страничкой Ютуб видео - проигрывает сразу.

Отредактировано Baron_ (24-02-2016 00:08:04)

Отсутствует

 

№970724-02-2016 00:12:37

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

Re: Custom Buttons

fokanik
Baron_
Это всё я знаю, спасибо, я про другое.


Лучше спросить у знающих - чем лезть не зная.

Отсутствует

 

№970824-02-2016 00:14:31

fokanik
Участник
 
Группа: Members
Зарегистрирован: 05-02-2014
Сообщений: 268
UA: Seamonkey 2.39

Re: Custom Buttons

Baron_ пишет

А если нажать на кнопку с открытой страничкой Ютуб видео - проигрывает сразу.

Или кликнуть правой кнопкой пустое место на странице - и выбрать в меню potplayer - то тоже откроет открытое на странице ютуб видео.

Отсутствует

 

№970924-02-2016 00:37:24

emlen
Участник
 
Группа: Members
Зарегистрирован: 22-05-2015
Сообщений: 201
UA: unknown 0.0

Re: Custom Buttons

bunda1, а пункты меню сохранения картинки могут иметь кастомизированные, вручную назначенные названия?


SeaMonkey 2.39 forever

Отсутствует

 

№971024-02-2016 07:03:55

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

Re: Custom Buttons

emlen пишет

bunda1, а пункты меню сохранения картинки могут иметь кастомизированные, вручную назначенные названия?

Что значит кастомизированные?

Отсутствует

 

№971124-02-2016 10:44:14

emlen
Участник
 
Группа: Members
Зарегистрирован: 22-05-2015
Сообщений: 201
UA: unknown 0.0

Re: Custom Buttons

bunda1 пишет
emlen пишет

bunda1, а пункты меню сохранения картинки могут иметь кастомизированные, вручную назначенные названия?

Что значит кастомизированные?

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

Добавлено 24-02-2016 10:45:24
Не исключаю что выразился не совсем правильно, вот объяснил, что имел ввиду:blush:

Отредактировано emlen (24-02-2016 10:45:24)


SeaMonkey 2.39 forever

Отсутствует

 

№971224-02-2016 14:07:26

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 47.0

Re: Custom Buttons

Это у всех в [nightly] из меню кнопок Custom Buttons пропал пункт Удалить с панели инструментов? В кнопках расширений этот пункт присутствует.

Отсутствует

 

№971324-02-2016 15:56:54

emlen
Участник
 
Группа: Members
Зарегистрирован: 22-05-2015
Сообщений: 201
UA: unknown 0.0

Re: Custom Buttons

del

Отредактировано emlen (24-02-2016 16:28:55)


SeaMonkey 2.39 forever

Отсутствует

 

№971424-02-2016 16:55:22

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 47.0

Re: Custom Buttons

Автоматически добавлять выделенный текст в SearchBar( Firefox24+ ) от 21.02.2016.

bunda1 пишет

тогда при удержании курсора на панели поиска будет автоматически открываться меню с поисковиками. Время удержания курсора на панели поиска => 800 можно менять как вам удобней.

Эта функция перестаёт работать после перезагрузки [nightly]. Вызов редактора кнопки и нажатие ОК восстанавливает работоспособность до перезагрузки.

Отсутствует

 

№971524-02-2016 20:57:29

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

Re: Custom Buttons

voqabuhe пишет

Это у всех в [nightly] из меню кнопок Custom Buttons пропал пункт Удалить с панели инструментов? В кнопках расширений этот пункт присутствует.

У меня такого пункта на [nightly]-47.0a1 нет.

Добавлено 24-02-2016 21:04:10

voqabuhe пишет

Эта функция перестаёт работать после перезагрузки [nightly]

У меня на [nightly]-47.0a1 работает после перезагрузки, может попробуй с таймером:

Выделить код

Код:

setTimeout(()=> { 
   var box = BrowserSearch.searchBar._textbox;
   box.onmouseleave =()=> box.mo = true;
   box.onmouseover =()=> { box.mo = false; setTimeout(()=> !box.mo && box.childNodes[1].children[0].children[0].click(), 800); };
   addDestructor(()=> box.onmouseover =()=> null );
}, 1500);

Отредактировано bunda1 (24-02-2016 21:04:10)

Отсутствует

 

№971625-02-2016 00:29:29

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 47.0

Re: Custom Buttons

bunda1 пишет

У меня такого пункта на [nightly]-47.0a1 нет.

Понятно, значит бум ждать обновления. Ну или может Dumby захочет очередной раз мастерством блеснуть. smile.gif

bunda1 пишет

У меня на [nightly]-47.0a1 работает после перезагрузки, может попробуй с таймером:

Не помогло, к сожалению.

Отсутствует

 

№971725-02-2016 00:55:48

Maxut
Участник
 
Группа: Members
Зарегистрирован: 27-02-2011
Сообщений: 31
UA: Firefox 28.0

Re: Custom Buttons

bunda1 пишет

emlen
Добавил возможность перемещать пункты меню по меню верх или вниз прокруткой колёсика мыши на пункте меню: Сохранять изображение без запроса в установленные папки

Спасибо!
Как пункт "Сохранить в папку" переместить выше,в контекстном меню.Menu editor его не видит.
А можно сделать кнопку"Настроить контекстное меню",чтобы при нажатой кнопке можно было перетаскивать пункты вверх,вниз.

Отсутствует

 

№971825-02-2016 09:25:01

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 44.0

Re: Custom Buttons

voqabuhe
Пункт «Удалить с панели инструментов» добавлялся в 0.0.5.9pre1 и не целиком переехал в 0.0.5.8.x.
Можно поискать по коду "removeFromToolbar", где работает – найдется в двух файлах:
custombuttons.jar\content\custombuttons\overlay.js
custombuttons.jar\content\custombuttons\cbbutton.js

Добавлено 25-02-2016 09:41:22
Написал еще и сюда: http://custombuttons.sourceforge.net/fo … 493#p11493

Отредактировано Infocatcher (25-02-2016 09:41:22)


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№971925-02-2016 12:21:16

emlen
Участник
 
Группа: Members
Зарегистрирован: 22-05-2015
Сообщений: 201
UA: unknown 0.0

Re: Custom Buttons

Можно ли как-то сохранить куки с одного сайта, потом после работы не просто очищать текущие куки сайта, а восстанавливать те что были сохранены?


SeaMonkey 2.39 forever

Отсутствует

 

№972025-02-2016 12:35:26

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

Re: Custom Buttons

Maxut пишет

Как пункт "Сохранить в папку" переместить выше,в контекстном меню.Menu editor его не видит.

В:

Выделить код

Код:

var menu = contextMenu.insertBefore(document.createElement("menu"), saveimage);

вместо saveimage положи contextMenu.children[41] и измени 41 так как тебе удобней.

Отсутствует

 

№972125-02-2016 12:50:02

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

Re: Custom Buttons

Ребята как бы переделать этот код чтобы выбросить всё лишнее(нажатие ЛКМ,ПКМ и т.д.) чтобы только пункты в контекстном остались. Сам пыжился, никак.

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

Выделить код

Код:

if ( this.hasAttribute("initialized") ) return;
this.setAttribute("context", "");
this.tooltipText="PotPlayer --->\n<--- SMPlayer";

var id = "context-bookmarklink"; // Место врезки

this.onclick = function(e) {
     if ( e.button == 0 ) Play(array[0][1], "-add-to-playlist", "href"); // ПКМ
     if ( e.button == 1 ) gShowPopup(this);                              // Редактировать кнопку
     if ( e.button == 2 ) Play(array[1][1], "/add", "href");             // ЛКМ
}

var contextMenu = document.getElementById("contentAreaContextMenu"); 
var sepOpen = document.getElementById(id);

var array = [
 ["SMPlayer", "C:\\Program Files\\SMPlayer\\smplayer.exe", "-add-to-playlist" ],                    //http://smplayer.sourceforge.net/
 ["PotPlayer", "C:\\Program Files\\DAUM\\PotPlayer\\PotPlayerMini.exe", "/add" ],                   //https://potplayer.daum.net/?lang=ru
 ["Video Lan", "C:\\Program Files\\VideoLan\\vlc\\vlc.exe", "-AddToPlaylist" ],                     //http://www.videolan.org/vlc/
 ["Rox Player", "C:\\Users\\Home\\AppData\\Local\\ROX Player\\roxplayer.exe", "rox:"],              //http://roxplayer.com/
 ["Download Master", "P:\\PortableApps\\PortableApps\\Download Master Portable\\dmaster.exe", ""],
 
 ["separator"]
            ]
array.forEach(function(m) {
   if (m == "separator") {
       contextMenu.insertBefore(document.createElement("menuseparator"), sepOpen);
       return;
       };
   var menuitem = contextMenu.insertBefore(document.createElement("menuitem"), sepOpen);
   menuitem.id = "open-in";
   var label = m[0], path = m[1], param = m[2]; 
   menuitem.setAttribute("label", label);
   menuitem.setAttribute("class", "menuitem-iconic");
   menuitem.setAttribute("image", "moz-icon://file://" + path);   
   menuitem.onclick =()=> Play(path, param, "");
});
   
addDestructor(function() {
   [...contextMenu.childNodes].forEach(function(el) {
      if (el.id == "open-in")
          contextMenu.removeChild(el);
   }) 
});

function Play(path, param, link){
   var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
   file.initWithPath(path);
   var process  = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
   process.init(file);
   if (link == "href" || !gContextMenu.onLink) process.run(false, [content.location.href, param], 2);
   else process.run(false, [gContextMenu.getLinkURL(), param], 2);
}


Лучше спросить у знающих - чем лезть не зная.

Отсутствует

 

№972225-02-2016 12:58:16

emlen
Участник
 
Группа: Members
Зарегистрирован: 22-05-2015
Сообщений: 201
UA: unknown 0.0

Re: Custom Buttons

bunda1, подскажите пожалуйста, что в моем "хелло вёрлде" неправильно, почему код не отрабатывает?

Выделить код

Код:

var uri = tab.linkedBrowser.currentURI;
var tldsrv = Components.classes["@mozilla.org/network/effective-tld-service;1"] .getService(Components.interfaces.nsIEffectiveTLDService);
var sDomain = tldsrv.getBaseDomain(uri);



// Всплывающее сообщение ....
Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService).
showAlertNotification(self.image, self.label + "  ", 'Получено значение: ' + sDomain, false, "", null, "");

Отредактировано emlen (25-02-2016 13:00:03)


SeaMonkey 2.39 forever

Отсутствует

 

№972325-02-2016 13:07:04

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

Re: Custom Buttons

emlen пишет

bunda1, подскажите пожалуйста, что в моем "хелло вёрлде" неправильно, почему код не отрабатывает?

Выделить код

Код:

var uri = gBrowser.currentURI;
var sDomain = Services.eTLD.getBaseDomain(uri);

// Всплывающее сообщение ....
Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService).
showAlertNotification(self.image, self.label + "  ", 'Получено значение: ' + sDomain, false, "", null, "");

Отсутствует

 

№972425-02-2016 13:46:46

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 47.0

Re: Custom Buttons

Infocatcher пишет

Пункт «Удалить с панели инструментов» добавлялся в 0.0.5.9pre1 и не целиком переехал в 0.0.5.8.x.
Можно поискать по коду "removeFromToolbar", где работает – найдется в двух файлах:
custombuttons.jar\content\custombuttons\overlay.js
custombuttons.jar\content\custombuttons\cbbutton.js

Добавлено Сегодня 09:41:22
Написал еще и сюда: http://custombuttons.sourceforge.net/fo … 493#p11493

Понятно, спасибо.

Отсутствует

 

№972525-02-2016 14:52:29

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

Re: Custom Buttons

emlen пишет

повторюсь - названия пунктов меню введенные вручную, а не взятые из имен назначенных на них папок.

По СКМ.

Выделить код

Код:

// Сохранять изображение без запроса в установленные папки, из контекстного меню, от 22.02.2016. ...............
((contextMenu, saveimage) => {
   var s = "CB.allPathsToImageFolders";
   var defaultDownFolder = Services.downloads.defaultDownloadsDirectory.path;

  
   var menu = contextMenu.insertBefore(document.createElement("menu"), contextMenu.children[41]);
   menu.setAttribute("label", "Сохранить в папку:");
   addEventListener("popupshowing", e=> menu.hidden = saveimage.hidden, false, contextMenu); 
   addDestructor(()=> menu.remove() );

      
   var menuPopup = menu.appendChild( document.createElement("menupopup") );
   menuPopup.setAttribute('style', 'overflow: auto'); 
   function setItemsToMenuPopup() {
      menuPopup.textContent = "";      

      getPaths().split(",").forEach(path=> {
         var menuitem = document.createElement("menuitem");
         menuitem.setAttribute("tooltiptext", path);
         menuitem.setAttribute("label", (/►/.test(path) ? path.split("►") : path.split("\\") ).pop() );
         menuitem.onwheel =e=> moveMenuItem(e, path);
         menuitem.onclick =e=> { e.button == 0 && downloadToFolder(path); e.button == 1 && changeMenuitemLabel(path); e.button == 2 && deleteFolder(path) };  
         menuPopup.appendChild( menuitem );
      });
      var sep = menuPopup.appendChild( document.createElement("menuseparator") );
      var menuitem = menuPopup.appendChild( document.createElement("menuitem") );
      menuitem.setAttribute("label", "Добавить папку");
      menuitem.onclick =e=> setPaths(); 
   };  
   setItemsToMenuPopup();        


   function downloadToFolder(path) { 
      var run = cbu.getPrefs("browser.download.folderList");
      var use = cbu.getPrefs("browser.download.useDownloadDir");
      try { var dir = Services.prefs.getComplexValue("browser.download.dir", Ci.nsISupportsString).data } 
      catch(e) { var dir = defaultDownFolder };
                
      cbu.setPrefs("browser.download.folderList", 2);
      cbu.setPrefs("browser.download.useDownloadDir", true);
      cbu.setPrefs("browser.download.dir", convertFromUnicode("UTF-8", path) );
      
      saveImageURL(gContextMenu.imageURL, 0, 0, 0, 1, null, content.document);
      
      cbu.setPrefs("browser.download.folderList", run);
      cbu.setPrefs("browser.download.useDownloadDir", use);
      cbu.setPrefs("browser.download.dir", convertFromUnicode("UTF-8", dir) );     
   };
   
   
   function changeMenuitemLabel(path) {
      var val = custombuttons.promptBox('', 'Ведите другое название папки')[1];
      if ( val == '' ) return;
      
      var arr = getPaths().split(",");
      arr[arr.indexOf(path)] = path + "►" + val;
      cbu.setPrefs(s, convertFromUnicode("UTF-8", arr));
      
      setItemsToMenuPopup();
   };
   
   
   function deleteFolder(path) {
      var paths = getPaths().split(",").filter(el=> { return (el !== path) });
      cbu.setPrefs(s, convertFromUnicode("UTF-8", (paths.length ? paths : defaultDownFolder)));
      
      setItemsToMenuPopup();
   };
   
   
   function moveMenuItem(e, path) {
      var arr = getPaths().split(",");
      var pathPos = arr.indexOf(path);
      var index = (e.deltaY < 0 ? -1 : 1);

      if ( (pathPos == 0 && index == -1) || (pathPos+1 == arr.length && index == 1)) return;
      arr[pathPos] = arr[pathPos + index];      
      arr[pathPos + index] = path;      
      cbu.setPrefs(s, convertFromUnicode("UTF-8", arr));
      
      setItemsToMenuPopup();
   };
   
   
   function setPaths() { 
      var fp = window.makeFilePicker();
      fp.init( window, "Укажите путь к папке для сохранения изображений", fp.modeGetFolder );
      if ( fp.show() == fp.returnCancel ) return;
      cbu.setPrefs(s, convertFromUnicode("UTF-8", getPaths() + "," + fp.file.path));
      
      setItemsToMenuPopup();
   };


   function getPaths() { 
      try { return Services.prefs.getComplexValue(s, Ci.nsISupportsString).data; } 
      catch(e) { return defaultDownFolder };
   };   
   
})(document.getElementById("contentAreaContextMenu"), document.getElementById("context-saveimage"));

Отсутствует

 

Board footer

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