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

Будьте в курсе последних изменений в мире Mozilla, следя за нашим микроблогом в Twitter.

№30118-12-2013 23:22:49

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

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

Я напутал в коде, потому и не выходило :dumb:

bunda1 пишет

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

на:
.............

Вот это получилось то самое что я и хотел!
bunda1,
ПОЛНЫЙ РЕСПЕКТ! :rock:

Отсутствует

 

№30219-12-2013 16:58:19

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

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

А просто интересно, это вообще-то возможно: присвоить переменной значение какого-то параметра about:config  и сохранить эту переменную неизменной когда этот параметр меняется?

Отредактировано rbfyec (19-12-2013 17:04:31)

Отсутствует

 

№30319-12-2013 17:05:25

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

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

rbfyec пишет

А просто интересно, это вообще-то возможно: присвоить переменной значение - адрес прокси и сохранить эту переменную неизменной когда адрес меняется?

Можно конечно но только до закрытия браузера и наверно :/ до настройки панелей или редактирования кнопки.

Отсутствует

 

№30419-12-2013 17:18:07

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 622
UA: Firefox 26.0

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

rbfyec
В prefs.js всё сохраняется, создавайте себе там что и сколько угодно.

Отсутствует

 

№30522-12-2013 08:30:27

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

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

bunda1
Здравствуйте. При переходе на 26 [firefox] перестал работать скрипт conqueryModoki4.uc.xul.
Версия с  github тоже не работает.

Вот ссылки на мой скрипт:

скрытый текст
http://multi-up.com/934591
или
http://files.mail.ru/79D0D2B0E8C149D38E06CD91105C46EA

Можете его починить?

Данный скрипт - это Context Search. Преимущество его для меня в том, что он идёт отдельной строкой в контекстном меню и после поиска через него, не меняет поисковик из строки поиска.

Отредактировано 1fesFFFF (22-12-2013 08:33:14)

Отсутствует

 

№30622-12-2013 19:45:28

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

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

Как сделать listener чтобы он следил за появлением окна с определённым адресом (или с определённым заголовком) и тогда выполнится действие?

Отредактировано toxa (22-12-2013 20:23:36)

Отсутствует

 

№30722-12-2013 20:41:13

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

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

toxa пишет

Как сделать listener чтобы он следил за появлением окна с определённым адресом (или с определённым заголовком) и тогда выполнится действие?

Вот пример:

Выделить код

Код:

// Обработчик следит за переключением табов и запускают нужные коды и функции ................................
addEventListener("TabAttrModified", function(e) { 
   
   var tab = e.target;
   var uri = tab.linkedBrowser.currentURI.spec; 
   var doc = tab.linkedBrowser.contentDocument;            

   if ( tab.hasAttribute('read') ) setTimeout(function() {  { tab.removeAttribute('unread') } }, 0)
   
   // автоматически меняем название таба для таба "Bookmarks tab" ....
   if ( uri == "chrome://browser/content/bookmarks/bookmarksPanel.xul") doc.title = "Закладки";

   // автоматически очистить адресную строку для 'Bookmarks tab' ....
   if ( gBrowser.currentURI.spec == "chrome://browser/content/bookmarks/bookmarksPanel.xul") {
        gURLBar.value = "";
        gURLBar.focus();
        };
         
   // стоп, если открыть другие вкладки в фоновом режиме ....
   if ( uri !== gBrowser.currentURI.spec ) return; 
        
   // показываем иконки сайтов в адресной строке ....
   gProxyFavIcon.src = ( gBrowser.mCurrentTab.image == '' ) ? "chrome://global/skin/icons/Portrait.png" : gBrowser.mCurrentTab.image;
     
}, true, gBrowser.tabContainer );

Отсутствует

 

№30822-12-2013 21:45:39

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

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

Что-то не могу понять как мне приспособить этот код...
listener срабатывает если меняется адрес у таба. Но мне надо отследить появление окна

Выделить код

Код:

open('http://ya.ru', '', 'width=300, height=300')

Что я должен написать в коде?

Отредактировано toxa (22-12-2013 21:46:13)

Отсутствует

 

№30922-12-2013 22:20:25

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

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

Упс, я невнимательно прочитал. Ну тогда не знаю, а что ты хочешь добится.

Добавлено 22-12-2013 22:24:55
Можно получить окно вот так но данном случае код отдаёт не правильный адрес:

Выделить код

Код:

// Наблюдатель следит за открытием окон
var observer = {  
       observe: function(subject, topic, data) {
          subject.addEventListener("load", this, false);
          },
      
       handleEvent: function(e) {
          var doc = e.target;
          var win = doc.defaultView;
          var href = doc.location.href.slice(0,60);
          win.removeEventListener("load", this, false);
          
          ...............
        
       }
};
Services.obs.addObserver( observer, "domwindowopened", false);
addDestructor(function() { Services.obs.removeObserver(observer, "domwindowopened", false) });

Отредактировано bunda1 (22-12-2013 22:25:28)

Отсутствует

 

№31022-12-2013 23:17:17

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

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

bunda1 пишет

Упс, я невнимательно прочитал. Ну тогда не знаю, а что ты хочешь добится.

Добиться я хочу вот чего: мне нужно приделать обработчик онклик к кнопке, расположенной в этом окошке. Но не через html атрибут онклик, а через свойство my_button.onclick

Вот я и хочу чтобы какой-то наблюдатель, как только откроется моё окошко, запустил код 

Выделить код

Код:

my_button.onclick=function(){....}
okkamas_knife пишет

toxa
мне кажется тот код(первый что дал бунда1) только для табов.
попробуй пример отсюда

Я там ничего не понял :(

Отсутствует

 

№31122-12-2013 23:35:00

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

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

Ты хочешь кнопкой открыть окошко и там что то сделать, так?

Отсутствует

 

№31225-12-2013 11:55:10

Teu
Участник
 
Группа: Members
Зарегистрирован: 11-12-2013
Сообщений: 19
UA: Firefox 26.0

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

bunda1
Если не сложно, обновите пожалуйста Autocopy+3, чтобы она не копировала текст из Find Bar-а и спасибо большое за кнопки. :)

А нет ли случайно CB открывающей Find Bar во всех вкладках, как раньше?

Отсутствует

 

№31325-12-2013 12:20:04

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

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

Teu пишет

А нет ли случайно CB открывающей Find Bar во всех вкладках, как раньше?

[CB]Toggle Find+3

Отсутствует

 

№31426-12-2013 06:28:55

Teu
Участник
 
Группа: Members
Зарегистрирован: 11-12-2013
Сообщений: 19
UA: Firefox 26.0

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

voqabuhe
Спасибо, супер вещь, как всегда от bunda1. :)

Отсутствует

 

№31526-12-2013 08:15:01

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

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

Для 26 [firefox] можете исправить кнопку?

1) Открывает боковую панель с загрузками.

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

Выделить код

Код:

// Настройка функций кликов мыши для кнопки ................................................................
this.onclick = function(e) {

     // действие при клике ЛКМ ....
     if ( e.button == 0 ) {
          document.getElementById('sidebar-box').getAttribute('sidebarcommand') ? toggleSidebar() : openWebPanel("Downloads", downTabUrl );         
          };
          
     // действие при клике СКМ ....    
     if ( e.button == 1 ) { 
          var windows = Components. classes ['@mozilla.org/appshell/window-mediator;1'].getService(Components. interfaces. nsIWindowMediator).getEnumerator (null);
          while( windows. hasMoreElements() ) {
                 var win = windows.getNext ();
                 if ( win.document.documentURI == "chrome://mozapps/content/downloads/downloads.xul") {    
                      win.close();
                      return;
                      }
                 };
          BrowserDownloadsUI();
          };
     
     // действие при клике ПКМ ....    
     if ( e.button == 2 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey ) { 
          e.preventDefault();  
          downloadManagerInTab( true );
          }
};



// Объявляем переменные для этой вкладки ...................................................................
var downTabUrl = 'chrome://mozapps/content/downloads/downloads.xul';

// иконки для вкладки загрузок ....
const trueDownloadsImg = "data:image/x-icon;base64,AAABAAEAEhIAAAEAIACABQAAFgAAACgAAAASAAAAJAAAAAEAIAAAAAAAWAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDAAIAAAMACyIAEGyoLtVqpyrVDSIADwAAAgABAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIAAgAAAgALHwAPZaAmwsXxnv+t63n/XpwbwAcUAA0AAAIAAQIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAwADAAACAAwgAA9loyXFv+2W/7/wl/yg52b8n+Nj/1OJG8EBCAAMAAACAAECAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAECAAIAAAIADCEADmSiI8Sx4oX/suWH+7HmhP+T3FX/i9dK+5LZUv9RhxnAAQkADAAAAgABAgACAAAAAAAAAAAAAAAAAQIAAgAAAgANIQANY6Eiw6nbfP+l23f7p913/6fed/+I0kj/gs5A/37KPvuL0Ev/UIYYvwIJAAsAAAIAAQIAAgAAAAABAQABAAABAAsgAA1gnh/BoNJy/5vSa/qe1W3/odhx/5/Ybv+Cy0H/fsg8/3zFOv92vjX6g8VD/0yCFL0BCAALAAABAAABAAEAAAEACRUAEmqmKcyn2Hr/n9Ry/Z3Tbv+Yz2b/mtJp/5nRZv99xDz/ecI3/3e/Nv97wT7/e78//YvKT/9Xjhy/BAwACQAAAQAAAAEAFCkAL2CUKdxhkTDXXI4o1m+mN/KWzGb/ksth/pLLX/93vTn/croz/nm9Pf9noizyVoog1lqNJtlbkx/TDyAAHwAAAQAAAAAAAAAAAAAAAAACAwEEAAAAAD5oFqeXz2X/icFY+4rDWP9ytjX/bLEu+3/CQv8+ZxSnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAEAAQEBAQEDBAMEAAAAAEFqFqeSyV7/g7pR+4S8Uf9usDP/aKsr+3u9Pv9AaRSnAAAAAAMEAgQBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFKeNxVj/fbRK+3+2Sv9rqzD/ZaYo+3m5PP8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFKeJwlT/eLBF+3qyRv9qqS7/ZKQo+3m4PP8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFKeHwFD/da5B+3exQv9pqS7/ZKQo+3m4PP8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFKeEv03/cqw8+3WvPv9pqS7/ZKQo+3m4PP8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFKeCvkn/cKs4+3OuO/9pqS7/ZKQo+3m4PP8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAD9oE6d+vET/bKky+2+sNf9oqCv/Y6Mm+3e3Ov8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFaeDv0v/cKw5+3OvPP9vqzX/aqcx+3+8RP9AaRSnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgAEAAAAADlkCox1szT/a6Yv+W2oMPxspy78aqQt+XSyMv85ZAqMAAAAAAECAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
const falseDownloadsImg = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAACmElEQVR42oyU3UtUQRiHn9k9c47Ho+4uhrkthmUfkHeB91GJ1paiJl0EQZd9U3f+E1EX0b8QEUQX0ScZWd0E3VhBrWJFuZuEqyLsOTtnznSxx9rSzPdq5p13nhl+729GTBXL/BUJwAFcwAZEnDdAFagAARDVb7JYHQ6QBTKsHWWgGAPXBblAZu/ubTdUQ6YnKWslWoVIv/z6zYeZ08DCRkA2QPOW7T2dXTuwLAsMhDrk03Shp77mfyABkE6laGluRgiBACJjSKXSf9T8D1RbsBJIy0IIgcGQMAYrKfhn/b9BFtKWv1sWGZKJ5LqgJNAQiyyB1hpI4ti/pYiiCEvKlWlrbIcwFt23YkgH4NWf4DV5OI4DQmCMwWiN53n1FsnF42Xgq5gqljPA9u7OjjvupmxHUypF++Z2duzsIp3O1DQyhkhr5svzFAoFSsUSy0uL6KW5z29nZkeAaSt2a/Xy2Nit8RevLmS3bJUtqRSNXiOOLX+BwlCTTmfY091NLpujNPtF5fvP3IxdrizAB2bPnjt/r21zm3g6PnHe3tQqGxwHy5KIhMBEBoTCMQalAsJqJTh18sS1oeFjD32liysaaWDRV3pydPQ4rtMQPh6fuNjouo7luiREgshEGBPhhyHzc9+DwXz/1YGh4fu+0u+ARUCvtD8EFnylJ/MDg5G0ZfT42cSlnN3peF4TRkWoasCPuWLl6OH+a4fyRx4ENUg5vsgfPgqBcqD0u96+wwYET5+/vNjWnnONiSh9+1rJ9x28cqC3/1Gg9Pt6yFqG1EC5Gur3vX2HsG2pbt+5exYDI0OD1/ftP/ikGq6GAIg1/iNik6Ydmdzl2nI3QKWqPgRKf4xfvt7oE9HAQqD0ZKB0Ic75sYv1Wht+DgB8pQ6678CoOAAAAABJRU5ErkJggg==";



/* Открывать загрузки в табе или переместить вкладку загрузок рядом с текущей вкладкой 
   если загрузи уже открыты и закрыть все лишние вкладки загрузок  ..........................................*/
function downloadManagerInTab( foregroundTab ) {          
  
     setTimeout(function() { closeDownloadManager() }, 0); // закрыть стандартный менеджер загрузок     
     
     // закрыть все вкладки загрузок кроме первой ....
     var downTab = null;
     Array.slice( gBrowser.tabs ).forEach(function(tab) {
           if ( tab.linkedBrowser.currentURI.spec !== downTabUrl ) return;
           !downTab ? downTab = tab : gBrowser.removeTab(tab);
     })
   
     // переместить или открыть вкладку загрузок рядом с текущей вкладкой ....
     var selTab = gBrowser.selectedTab;
     if ( downTab !== selTab ) {
          if ( downTab && gBrowser.visibleTabs.indexOf( downTab ) == -1 )
               TabView.moveTabTo( downTab, TabView._window.GroupItems._activeGroupItem.id );
          downTab = downTab || gBrowser.addTab( downTabUrl );
          var pos = selTab._tPos + ( downTab._tPos > selTab._tPos );
          gBrowser.moveTabTo( downTab, pos );
          gBrowser.selectedTab = downTab;        
          } 
};



// Автоматически меняем иконку для таба "Загрузки" .........................................................
addEventListener("TabAttrModified", function(e) { 
     if ( e.target.linkedBrowser.currentURI.spec == downTabUrl ) {
          var tabIndex = gBrowser.getBrowserIndexForDocument( e.target.linkedBrowser.contentDocument );
          var tab = gBrowser.mTabContainer.childNodes[tabIndex];
          LOG(tab.label)
          tab.image = ( tab.label == "Загрузки" )? falseDownloadsImg: trueDownloadsImg;
          }      
}, true, gBrowser.tabContainer);



// Отслеживать все команды связные с загрузкой и запускать нужные функции и команды  ........
function getCommand(e) {
     var command = e.target.getAttribute("oncommand");
     if ( command == "performCommand('cmd_removeFromList');" || command == 'clearDownloadList();') {
          if ( content.document.location == downTabUrl) document.getElementById("Browser:Reload").doCommand();
          if ( document.getElementById('sidebar-box').getAttribute('sidebarcommand') ) openWebPanel("Downloads", downTabUrl );                
          }
};     
addEventListener("command", getCommand, true, window);



// Исправляем ошибки .......................................................................................
function setFakeArguments(e) {
     if ( e.target.location.href == 'chrome://mozapps/content/downloads/downloads.xul' ) {
     var win = e.target.defaultView;
     win = win.wrappedJSObject || win;
     win.arguments = [];
     }
};
addEventListener("TabClose", setFakeArguments, true, gBrowser);
addEventListener("DOMContentLoaded", setFakeArguments, true, gBrowser);
addEventListener("DOMContentLoaded", setFakeArguments, true, document.getElementById('sidebar-box'));




// Закрыть стандартный менеджер загрузок ....................................................................
function closeDownloadManager() {
     var wm = Cc["@mozilla.org/appshell/window-mediator;1"].getService(Ci.nsIWindowMediator);
     var dm = wm.getMostRecentWindow("Download:Manager");
     if ( dm ) dm.close();  
};


        
// Подсказка для кнопки .....................................................................................
this.tooltipText = "L: Download Manager in the Sidebar\nM: Download Manager \nR: Download Manager in the Tab\nCtrl+R: CB menu ";


16b1287fb84450ca1731be369209e6b8.jpeg

2) Нужна кнопка, которая откроет окно загрузок (Ctrl+J).

Отсутствует

 

№31627-12-2013 00:10:15

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

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

1fesFFFF пишет

Для 26 [firefox] можете исправить кнопку?
1) Открывает боковую панель с загрузками.

А что с ней не так, вроде работает :/

1fesFFFF пишет

2) Нужна кнопка, которая откроет окно загрузок (Ctrl+J).

Создай кнопку с кодом:

Выделить код

Код:

var wm = Cc["@mozilla.org/appshell/window-mediator;1"].getService(Ci.nsIWindowMediator);
var dm = wm.getMostRecentWindow("Download:Manager");
if ( dm ) dm.focus();    
else       
     BrowserDownloadsUI();

Отредактировано bunda1 (27-12-2013 00:36:19)

Отсутствует

 

№31727-12-2013 14:49:10

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

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

Создай кнопку с кодом:

Спасибо!

А что с ней не так, вроде работает

На 26 [firefox] в ней не отображаются загрузки, т.е. она пустая. А в окне загрузок - отображаются.

Отсутствует

 

№31827-12-2013 23:32:53

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

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

1fesFFFF пишет

Для 26 [firefox] можете исправить кнопку?

А если так:

Выделить код

Код:

// Настройка функций кликов мыши для кнопки ................................................................
this.onclick = function(e) {

     // действие при клике ЛКМ ....
     if ( e.button == 0 ) {
          document.getElementById('sidebar-box').getAttribute('sidebarcommand') ? toggleSidebar() : openWebPanel("Downloads", downTabUrl );         
          };
          
     // действие при клике СКМ ....    
     if ( e.button == 1 ) { 
          var wm = Cc["@mozilla.org/appshell/window-mediator;1"].getService(Ci.nsIWindowMediator);
          var dm = wm.getMostRecentWindow("Download:Manager");
          if ( dm ) dm.focus();    
          else       
               BrowserDownloadsUI();
          };
     
     // действие при клике ПКМ ....    
     if ( e.button == 2 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey ) { 
          e.preventDefault();  
          downloadManagerInTab( true );
          }
};



// Объявляем переменные для этой вкладки ...................................................................
var downTabUrl = 'about:downloads';

// иконки для вкладки загрузок ....
const trueDownloadsImg = "data:image/x-icon;base64,AAABAAEAEhIAAAEAIACABQAAFgAAACgAAAASAAAAJAAAAAEAIAAAAAAAWAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDAAIAAAMACyIAEGyoLtVqpyrVDSIADwAAAgABAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIAAgAAAgALHwAPZaAmwsXxnv+t63n/XpwbwAcUAA0AAAIAAQIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAwADAAACAAwgAA9loyXFv+2W/7/wl/yg52b8n+Nj/1OJG8EBCAAMAAACAAECAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAECAAIAAAIADCEADmSiI8Sx4oX/suWH+7HmhP+T3FX/i9dK+5LZUv9RhxnAAQkADAAAAgABAgACAAAAAAAAAAAAAAAAAQIAAgAAAgANIQANY6Eiw6nbfP+l23f7p913/6fed/+I0kj/gs5A/37KPvuL0Ev/UIYYvwIJAAsAAAIAAQIAAgAAAAABAQABAAABAAsgAA1gnh/BoNJy/5vSa/qe1W3/odhx/5/Ybv+Cy0H/fsg8/3zFOv92vjX6g8VD/0yCFL0BCAALAAABAAABAAEAAAEACRUAEmqmKcyn2Hr/n9Ry/Z3Tbv+Yz2b/mtJp/5nRZv99xDz/ecI3/3e/Nv97wT7/e78//YvKT/9Xjhy/BAwACQAAAQAAAAEAFCkAL2CUKdxhkTDXXI4o1m+mN/KWzGb/ksth/pLLX/93vTn/croz/nm9Pf9noizyVoog1lqNJtlbkx/TDyAAHwAAAQAAAAAAAAAAAAAAAAACAwEEAAAAAD5oFqeXz2X/icFY+4rDWP9ytjX/bLEu+3/CQv8+ZxSnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAEAAQEBAQEDBAMEAAAAAEFqFqeSyV7/g7pR+4S8Uf9usDP/aKsr+3u9Pv9AaRSnAAAAAAMEAgQBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFKeNxVj/fbRK+3+2Sv9rqzD/ZaYo+3m5PP8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFKeJwlT/eLBF+3qyRv9qqS7/ZKQo+3m4PP8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFKeHwFD/da5B+3exQv9pqS7/ZKQo+3m4PP8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFKeEv03/cqw8+3WvPv9pqS7/ZKQo+3m4PP8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFKeCvkn/cKs4+3OuO/9pqS7/ZKQo+3m4PP8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAD9oE6d+vET/bKky+2+sNf9oqCv/Y6Mm+3e3Ov8/aBOnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAwEEAAAAAEBpFaeDv0v/cKw5+3OvPP9vqzX/aqcx+3+8RP9AaRSnAAAAAAIDAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgAEAAAAADlkCox1szT/a6Yv+W2oMPxspy78aqQt+XSyMv85ZAqMAAAAAAECAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
const falseDownloadsImg = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAACmElEQVR42oyU3UtUQRiHn9k9c47Ho+4uhrkthmUfkHeB91GJ1paiJl0EQZd9U3f+E1EX0b8QEUQX0ScZWd0E3VhBrWJFuZuEqyLsOTtnznSxx9rSzPdq5p13nhl+729GTBXL/BUJwAFcwAZEnDdAFagAARDVb7JYHQ6QBTKsHWWgGAPXBblAZu/ubTdUQ6YnKWslWoVIv/z6zYeZ08DCRkA2QPOW7T2dXTuwLAsMhDrk03Shp77mfyABkE6laGluRgiBACJjSKXSf9T8D1RbsBJIy0IIgcGQMAYrKfhn/b9BFtKWv1sWGZKJ5LqgJNAQiyyB1hpI4ti/pYiiCEvKlWlrbIcwFt23YkgH4NWf4DV5OI4DQmCMwWiN53n1FsnF42Xgq5gqljPA9u7OjjvupmxHUypF++Z2duzsIp3O1DQyhkhr5svzFAoFSsUSy0uL6KW5z29nZkeAaSt2a/Xy2Nit8RevLmS3bJUtqRSNXiOOLX+BwlCTTmfY091NLpujNPtF5fvP3IxdrizAB2bPnjt/r21zm3g6PnHe3tQqGxwHy5KIhMBEBoTCMQalAsJqJTh18sS1oeFjD32liysaaWDRV3pydPQ4rtMQPh6fuNjouo7luiREgshEGBPhhyHzc9+DwXz/1YGh4fu+0u+ARUCvtD8EFnylJ/MDg5G0ZfT42cSlnN3peF4TRkWoasCPuWLl6OH+a4fyRx4ENUg5vsgfPgqBcqD0u96+wwYET5+/vNjWnnONiSh9+1rJ9x28cqC3/1Gg9Pt6yFqG1EC5Gur3vX2HsG2pbt+5exYDI0OD1/ftP/ikGq6GAIg1/iNik6Ydmdzl2nI3QKWqPgRKf4xfvt7oE9HAQqD0ZKB0Ic75sYv1Wht+DgB8pQ6678CoOAAAAABJRU5ErkJggg==";



/* Открывать загрузки в табе или переместить вкладку загрузок рядом с текущей вкладкой 
   если загрузи уже открыты и закрыть все лишние вкладки загрузок  ..........................................*/
function downloadManagerInTab( foregroundTab ) {          
  
     setTimeout(function() { closeDownloadManager() }, 0); // закрыть стандартный менеджер загрузок     
     
     // закрыть все вкладки загрузок кроме первой ....
     var downTab = null;
     Array.slice( gBrowser.tabs ).forEach(function(tab) {
           if ( tab.linkedBrowser.currentURI.spec !== downTabUrl ) return;
           !downTab ? downTab = tab : gBrowser.removeTab(tab);
     })
   
     // переместить или открыть вкладку загрузок рядом с текущей вкладкой ....
     var selTab = gBrowser.selectedTab;
     if ( downTab !== selTab ) {
          if ( downTab && gBrowser.visibleTabs.indexOf( downTab ) == -1 )
               TabView.moveTabTo( downTab, TabView._window.GroupItems._activeGroupItem.id );
          downTab = downTab || gBrowser.addTab( downTabUrl );
          var pos = selTab._tPos + ( downTab._tPos > selTab._tPos );
          gBrowser.moveTabTo( downTab, pos );
          gBrowser.selectedTab = downTab;        
          } 
};



// Автоматически меняем иконку для таба "Загрузки" .........................................................
addEventListener("TabAttrModified", function(e) { 
     if ( e.target.linkedBrowser.currentURI.spec == downTabUrl ) {
          var tabIndex = gBrowser.getBrowserIndexForDocument( e.target.linkedBrowser.contentDocument );
          var tab = gBrowser.mTabContainer.childNodes[tabIndex];
          LOG(tab.label)
          tab.image = ( tab.label == "Загрузки" )? falseDownloadsImg: trueDownloadsImg;
          }      
}, true, gBrowser.tabContainer);



// Отслеживать все команды связные с загрузкой и запускать нужные функции и команды  ........
function getCommand(e) {
     var command = e.target.getAttribute("oncommand");
     if ( command == "performCommand('cmd_removeFromList');" || command == 'clearDownloadList();') {
          if ( content.document.location == downTabUrl) document.getElementById("Browser:Reload").doCommand();
          if ( document.getElementById('sidebar-box').getAttribute('sidebarcommand') ) openWebPanel("Downloads", downTabUrl );                
          }
};     
addEventListener("command", getCommand, true, window);



// Закрыть стандартный менеджер загрузок ....................................................................
function closeDownloadManager() {
     var wm = Cc["@mozilla.org/appshell/window-mediator;1"].getService(Ci.nsIWindowMediator);
     var dm = wm.getMostRecentWindow("Download:Manager");
     if ( dm ) dm.close();  
};


        
// Подсказка для кнопки .....................................................................................
this.tooltipText = "L: Download Manager in the Sidebar\nM: Download Manager \nR: Download Manager in the Tab\nCtrl+R: CB menu ";

Отсутствует

 

№31928-12-2013 09:30:24

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

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

bunda1
Спасибо! Работает.

Отсутствует

 

№32007-01-2014 13:59:51

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

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

Всех с Праздником! Вот какой вопрос у меня. Делал умный человек мне кнопку для поиска скриптов на сайте userscripts.org

скрытый текст
/*CODE*/
url=getBrowser().currentURI.spec;
domen = url.split(/\/+/g)[1];
getBrowser ().  selectedTab = getBrowser (). addTab ("https://userscripts.org/scripts/search?q=" + domen +"&submit=Search");

Хочу для своих нужд переделать, только чтоб брался не весь адрес, а часть после последнего слеша.
скрытый текст
http://www.хххххххх.хх/хххх/вот эта часть

Что-то пытался поменять, но проще спросить. Спасибо.

Отсутствует

 

№32107-01-2014 22:30:16

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

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

Mishania пишет

Хочу для своих нужд переделать, только чтоб брался не весь адрес, а часть после последнего слеша.

http://www.хххххххх.хх/хххх/вот эта часть

Не совсем понятно сформулировано - что нужно?
Задать в поиск на сайте userscripts.org адрес страницы, на которой сейчас находишься?

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

Выделить код

Код:

url = content.document.location.href;
adr=(url.substring(url.indexOf('/')+2));
getBrowser().selectedTab = getBrowser().addTab("https://userscripts.org/scripts/search?q=" + adr +"&submit=Search");

Отсутствует

 

№32207-01-2014 22:51:07

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

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

Чайник
Нужно чтоб http://www.хххххххх.хх/хххх/вот эта часть - копировалась и подставлялась в строку поиска "http://www.хххххххх.хх/хххх/search?q= вот сюда"

скрытый текст
название сайта не важно, важно именно последний блок адреса и чтоб открывалось в новой фоновой вкладке.

Отредактировано Mishania (07-01-2014 22:54:10)

Отсутствует

 

№32308-01-2014 15:35:44

Ki_rrrilll
Участник
 
Группа: Members
Зарегистрирован: 22-11-2013
Сообщений: 113
UA: Firefox 25.0

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

А как сделать, чтобы в кнопке Proxy( Firefox 10 + ) от 11.12.2013 можно было создать прокси из выделения и в текстовых полях?
Я пробовал здесь

Выделить код

Код:

// устанавливаем где показывать пункт меню 
  addEventListener("popupshowing", function() {
     menuitem.hidden = !cbu.getPrefs("Proxy.inContextMenu") || !gContextMenu.isContentSelected;
  }, false, contextMenu );

закомментировать  || !gContextMenu.isContentSelected но тогда пункт "Добавить прокси" висит в меню постоянно. Оно и понятно.

Не сильно это мешает, но может можно сделать все это менее топорным способом?

Отредактировано Ki_rrrilll (08-01-2014 15:45:15)

Отсутствует

 

№32408-01-2014 20:09:16

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

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

Замени:

Выделить код

Код:

!gContextMenu.isContentSelected;

на:

Выделить код

Код:

!gContextMenu.isTextSelected;

Отредактировано bunda1 (08-01-2014 20:09:48)

Отсутствует

 

№32508-01-2014 20:21:06

Ki_rrrilll
Участник
 
Группа: Members
Зарегистрирован: 22-11-2013
Сообщений: 113
UA: Firefox 25.0

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

Спасибо, bunda1!
:)

Отсутствует

 

Board footer

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