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

Заказывай стафф с атрибутикой Mozilla и... пусть все вокруг завидуют тебе! Быть уникальным - быть с Mozilla!

№502621-10-2012 17:25:49

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

Re: Custom Buttons

bunda1
никакой реакции на закрытие :(
закрываю СКМ по вкладке

И в твоем коде с алертом реакция на закрытие вкладки, только когда открыта всего одна группа. Если больше - алерта уже нет.

Отредактировано Inko7 (21-10-2012 17:29:36)

Отсутствует

 

№502721-10-2012 17:40:52

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 10.0

Re: Custom Buttons

bunda1 пишет

gBrowser.tabContainer

У меня сложилось впечатление, что он содержит вообще все влкадки
из всех групп, поэтому будет работать далеко не всегда, или нет ?

Inko7 пишет

Может это Tab Mix так делает...

Похоже что нет, без него такие же симптомы.

Отсутствует

 

№502821-10-2012 17:51:58

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

Re: Custom Buttons

Dumby пишет
bunda1 пишет

gBrowser.tabContainer

У меня сложилось впечатление, что он содержит вообще все влкадки
из всех групп, поэтому будет работать далеко не всегда, или нет ?

Да в этом проблема. Как теперь узнать для Inko7 что закрывается последняя вкладка в группе.

Отсутствует

 

№502921-10-2012 18:54:48

rsuan
Участник
 
Группа: Members
Зарегистрирован: 30-12-2010
Сообщений: 116
UA: Firefox 16.0

Re: Custom Buttons

Dumby пишет
rsuan пишет

а с зажатой клавишей - последней справа.

Это не ответ, это - вопрос:

Инициализация

Выделить код

Код:

this.onclick = function(e) {

    if (e.button != 0) return;
    var keys = e.ctrlKey || e.shiftKey || e.altKey;
    BrowserOpenTab();
    if (keys) gBrowser.moveTabToEnd();
}

Уже хорошо, благодарю! Только бы ещё, если вкладка создаётся последней, то чтоб была наивысшего уровня (у меня Tree Style Tab), а не такого же, что и была текущая.

Отредактировано rsuan (21-10-2012 19:14:34)

Отсутствует

 

№503021-10-2012 19:03:59

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

Re: Custom Buttons

bunda1 пишет

Да в этом проблема. Как теперь узнать для Inko7 что закрывается последняя вкладка в группе.

может можно просто посчитать сколько вкладок и если одна, то закрывать её предварительно открыв about:blank ?

Отсутствует

 

№503121-10-2012 19:19:37

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

Re: Custom Buttons

Считать будет все вкладки сразу в всех групах, это проблема.

Отсутствует

 

№503221-10-2012 19:20:42

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 10.0

Re: Custom Buttons

bunda1 пишет

Как теперь узнать для Inko7 что закрывается последняя вкладка в группе.

Ничего не выходит, не могу понять причину глюка :(
Вот код, где, когда закрывается вкладка, пытаюсь узнать количество вкладок в активной группе.
После restarta - показывает одно, а после редактирования кнопки - другое ( разница в единицу )
Может быть ты сумеешь разобраться...

Глючный код

Выделить код

Код:

TabView._window || TabView._initFrame();

var tabs = gBrowser.tabContainer;
function unnamed() {

    var group = TabView._window.GroupItems._activeGroupItem;
    custombuttons.alertSlide("alert", "tabs: " + group._children.length);

}
tabs.addEventListener("TabClose", unnamed, false);

this.onDestroy = function() {
    tabs.removeEventListener("TabClose", unnamed, false);
}

Отсутствует

 

№503321-10-2012 19:41:24

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

Re: Custom Buttons

У меня вроде все парядке на FF16 :(

Отредактировано bunda1 (21-10-2012 19:41:58)

Отсутствует

 

№503421-10-2012 19:50:20

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

Re: Custom Buttons

Dumby пишет

разница в единицу

аналогично, но разница есть даже при старте :(
может сразу параметру делать -1 ?

похожая ситуация с разницей в 1 было у меня с подсчетом групп, пока bunda1 не подсказал задержку прописать...

Отредактировано Inko7 (21-10-2012 19:55:58)

Отсутствует

 

№503521-10-2012 20:10:12

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

Re: Custom Buttons

bunda1
Хотел узнать, надежда есть или никак.
CB easy drag and go

...вызвать меню всех установленных поисковиков - муторно, но может попробую.

но могу сделать так что бы кнопка "Stf" сохраняла файл в нужную папку без запроса и окна сохранения.


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

Отсутствует

 

№503621-10-2012 20:18:27

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

Re: Custom Buttons

Inko7

Выделить код

Код:

TabView._window || TabView._initFrame();

var tabs = gBrowser.tabContainer;
function tabCloseHandler(event) {

    var item = TabView._window.GroupItems._activeGroupItem._children.length;
    if ( item !== 1) return;
         gBrowser.removeAllTabsBut(gBrowser.addTab("about:blank"));
         setTimeout("gURLBar.focus()", 0);
}
tabs.addEventListener("TabClose", tabCloseHandler, false);

this.onDestroy = function() {
    tabs.removeEventListener("TabClose", tabCloseHandler, false);
}

Добавлено 21-10-2012 20:19:31
И может кому надо:

Выделить код

Код:

// ЛКМ + ПКМ на текущий таб, переместить таб в новую группу .............................................................
TabView._window || TabView._initFrame();
this.onDestroy = function() {
   gBrowser.mTabContainer.removeEventListener("mousedown", function(event) { openNewWin.buttonDown(event) }, false); 
   gBrowser.mTabContainer.removeEventListener("mouseup", function(event) { openNewWin.buttonUp(event) }, false);
};
gBrowser.mTabContainer.addEventListener("mousedown", function(event) { openNewWin.buttonDown(event) }, false); 
gBrowser.mTabContainer.addEventListener("mouseup", function(event) { openNewWin.buttonUp(event) }, false); 
var openNewWin = {
buttonDown : function(event) {  
   if ( event.button == 0 ) this.leftButtonDown = true; 

   if ( event.button == 2 && this.leftButtonDown) {
        
        this.leftButtonDown = false;
        document.getElementById("tabContextMenu").hidden = true;
        setTimeout(function() { document.getElementById("tabContextMenu").hidden = false }, 500)
       
        // переместить текущий таб в новую группу  ....
        var currTab = gBrowser.mCurrentTab;
        var item = TabView._window.GroupItems._activeGroupItem._children.length;
        if ( item == 1) return; // стоп если только одна вкладка
             TabView.moveTabTo(currTab, null);
             window.gBrowser.selectedTab = currTab;
        }
   },
buttonUp : function(event) { this.leftButtonDown = false }   
};

Отредактировано bunda1 (21-10-2012 20:29:36)

Отсутствует

 

№503721-10-2012 20:35:44

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

Re: Custom Buttons

bunda1
Спасибище! Код вроде бы рабочий, но возникает какой-то глюк с моей существующей кнопочкой. Новый код прописал в самом низу без первой строки TabView._window || TabView._initFrame(); , т.к. уже присутствует.
Глюк в следующем:
например есть две группы. Во второй закрываем последнюю вкладку (срабатывает так, как надо!) и затем закрываю всю эту группу нажатием ПКМ по кнопке групп. Переключается на первую группу, но вкладка в ней сама сразу закрывается, открывая about:blank :|
Проверь пожалуйста и можно ли это устранить?

Добавлено:
дело наверное не только в конфликте кнопок, а и все же в неправильном подсчете количества: вылазит разница в 1

Отредактировано Inko7 (21-10-2012 20:46:27)

Отсутствует

 

№503821-10-2012 20:50:28

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

Re: Custom Buttons

Inko7
Да есть такой глюк если осталас одна вкладка но если коди отдельно то нет.

Отредактировано bunda1 (21-10-2012 20:53:32)

Отсутствует

 

№503921-10-2012 20:54:55

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

Re: Custom Buttons

bunda1 пишет

Да есть такой глюк но если коди отдельно то нет.

А счастье было так близко :(
Что может вызывать такое? Можно как-то их подружить?

Отсутствует

 

№504021-10-2012 21:21:11

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

Re: Custom Buttons

bunda1 пишет

Считать будет все вкладки сразу в всех групах, это проблема.

Есть gBrowser.visibleTabs


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

Отсутствует

 

№504121-10-2012 21:31:46

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

Re: Custom Buttons

Infocatcher пишет

Есть gBrowser.visibleTabs

Спасыбо
alert(gBrowser.visibleTabs.length);

Отсутствует

 

№504221-10-2012 22:29:20

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

Re: Custom Buttons

bunda1 пишет

alert(gBrowser.visibleTabs.length);

Так отображается правильное количество!

Но при попытке в коде заменить
var item = TabView._window.GroupItems._activeGroupItem._children.length;
на
var item = gBrowser.visibleTabs.length;
почему-то начинаются дикие тормоза, закрытие не срабатывают и т.д.
Но, как я понимаю, это все равно не избавит меня от конфликта кодов? :(

Dumby
Может у тебя есть мысли?

Отсутствует

 

№504321-10-2012 23:40:12

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 10.0

Re: Custom Buttons

Inko7 пишет

Может у тебя есть мысли?

Только самые бредовые :D
Полагаю, что дело не в том, ты что-то заменил,
а в самом факте того, что кнопка была отредактирована.
Что бы я ни пробовал писать - редактирование кнопки
существенно влияет на результат работы, рестарт это подтверждает.
(даже если просто «Редактировать» и сразу «ОК»)
Не понимаю почему...

Отредактировано Dumby (22-10-2012 00:22:11)

Отсутствует

 

№504421-10-2012 23:57:20

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

Re: Custom Buttons

Dumby пишет

(даже если просто «Редактировать» и сразу «ОК»)
Не понимаю почему...

Нету onDestroy для уборки?


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

Отсутствует

 

№504522-10-2012 00:31:31

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 10.0

Re: Custom Buttons

Infocatcher

В том то и дело, что есть ( но может быть неправильный ? )
Попробуй хотя бы этот код.
Если после рестарта - одно, а после редактирования - другое.
Но может я что-то не так делаю...

Отсутствует

 

№504622-10-2012 00:42:25

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

Re: Custom Buttons

Dumby
Да, неправильный.
addEventListener() делается для одной функции, а removeEventListener() – уже для другой.

Так что или

Выделить код

Код:

function f() {}
someNode.addEventListener("someEvent", f, false);
this.onDestroy = function() {
    someNode.removeEventListener("someEvent", f, false);
};

, или

Выделить код

Код:

addEventListener("someEvent", f, false, someNode); // Custom Buttons переопределяет функцию addEventListener

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

Отсутствует

 

№504722-10-2012 00:53:09

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

Re: Custom Buttons

Inko7 пишет

А счастье было так близко :(
Что может вызывать такое? Можно как-то их подружить?

Попробуй

Выделить код

Код:

// ДОПОЛНИТЕЛЬНЫЕ КЛИКИ ПО КНОПКЕ ГРУППИРОВКИ ВКЛАДОК

function afterInit() {

// удаление обработчика при повторной инициализации
this.onDestroy3 = function() {
// выходим, если функция уже выполнялась
  if (window.gruppiRun == 'stop') return;
  window.gruppiRun = 'stop';
  if (window.tabscrollRun == 'stop') return;
  window.tabscrollRun = 'stop';
// добавляем обработчики
document.getElementById("tabview-button").addEventListener("click", gruppi, false);
document.getElementById("tabview-button").addEventListener("DOMMouseScroll", tabscroll, false);
}();

var pancount;
var tabpict1 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAASCAYAAABfJS4tAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsPAAALDwGS+QOlAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAADXSURBVDhPY/z//z8DMrj74gMylwlFEpXzD4kLU4cQAxmMjO88f88AxMZA7EsExqYOJMaAYijIAqjBvtc47P4TwiCL754R+o+MoY7BajATSJKQoSB5PAYzYXPxqMGQ1EHLyAMnt2fvvuS+/PC1ChcGyYMiD1kdVAwzuYESPMzFvCnb/qNjkEE5Uzn+48MYyQ1o5nQqGgxJbkAQAcRgBpVcjEjH9DCYERROFIYxVhfTzGBQOFPqYpylmz56OoamUQxx5HQOU4Ov2ISlDlCBBMMwMRCNLI5VDQCiLbDOKwZG7AAAAABJRU5ErkJggg==";
var tabpict2 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAASCAYAAABfJS4tAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsPAAALDwGS+QOlAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAADzSURBVDhPY/z//z8DMrj74gMylwlFEpXzD4kLU4cQAxmMjO88f88AxMZA7EsExqYOJMaAYijIAqjBvtc47P4TwiCL754R+o+MoY7BajATSJKQoSB5PAYzYXPxqMGQ1EHLyAMnt2fvvuS+/PC1ChcGyYMiD1kdVAx/cuNN2fYfHYMMypnK8R8fhic3YO7RB+JNUKwPCwoKDQbnRJChYlAMSpugoPCl2GCksgJkeDHQUEaqGQw1PALkfKoZDA3jYpjLqWkwKIxBZScYUymMUQshaFCAgkMfPR1D0yiGOHI6h6nBV2zCciCoQIJhmBiIRhbHqgYAR2yey86k8SwAAAAASUVORK5CYII=";
var tabpict3 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAASCAYAAABfJS4tAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsOAAALDgFAvuFBAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAAD1SURBVDhP7ZQ9DsIwDIXbTl0QEgPXyMDODXILRrgA9+AiDJyCmYmu/CzQAVaMHzjglJAiETYqPVWxrS9OYjsnokx/1a7Wy8Jz+ouLWrq4pw1grfX2mLEGLPuBQnGwZR4UGwjYrsohtQkbV8seaUkyQXABZxsU/gi4CGX8B9+r45ePdyu3zeE02dfn6TvBj8fTcWKLl1tntKCmABrPSorpUW7cPZaF9oPQFMjYfgn2OrbP4HkysMwKozLOk2Ts5gSDu4AzNA0Yx8eUksxxFcnAuAbAIZPojv0hhMwFbJp1LDX6Ytd17mJiY9NtgIHk5Gz4a3sw5gouQp8JxXOEQwAAAABJRU5ErkJggg==";
var tabpict4 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAASCAYAAABfJS4tAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsOAAALDgFAvuFBAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAADsSURBVDhPY/z//z8DMrj74gMylwlFEpXzD4kLU4cQAxmMjO88f88AxMZA7EsExqYOJMaAYijIAqjBvtc47P4TwiCL754R+o+MoY7BajATSJKQoSB5PAYzYXPxqMGQ1EHLyAMnt2fvvuS+/PC1ChcGyYMiD1kdVAx/cuNN2fYfHYMMypnK8R8fhic3aO7hB9KgLMgICwoKDYbn2HKowfAwpthgaFmxG8lgkKt9KTYYaGAEEE+nhcEwQ0FhDMqmVHMxrPQDl59UijzUQgjJYH30dAxNoxjiyOkcpgZfsQlzOahAgmGYGIhGFseqBgB4vpfDfbAPggAAAABJRU5ErkJggg==";
var tabpict5 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAASCAYAAABfJS4tAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsOAAALDgFAvuFBAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAAD1SURBVDhPY/z//z8DMrj74gMylwlFEpXzD4kLU4cQAxmMjO88f88AxMZA7EsExqYOJMaAYijIAqjBvtc47P4TwiCL754R+o+MoY7BajATSJKQoSB5PAYzYXPxqMGQ1EGzyIMabvzs3Zfclx++VuHCIHlQ5CGrg4rhT268Kdv+o2OQQTlTOf7jw/DkBsw9YkAMyn5gDAsKCg0G50RfILYEYhCHkZoGTwcaCMKbgFifagZDCyFGkGtBhgMNBrnalxpBAXIpTQw2gAYDyAJDKrkYpYBlA/GgYayPno6haRRDHDmdw9TgKzZhFoAKJBiGiYFoZHGsagAo0o3nCte9EwAAAABJRU5ErkJggg==";
var tabpicton = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsSAAALEgHS3X78AAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAAClSURBVDhPY7zz/D0DEmBC5qCx/2FRhxADGQTExkDsSwTGpg4kxgAyBIR9r3HY/SeEQerunhH6j4yhloMNYqKCQUzD3CCqBTY4+p+9+5L78sPXKlwYJA+KFGR1UDHU6OdN2fYfHYM05kzl+I8PY0Q/hQYhon/UIIyAhwY2OIzA6YjCMILnfn30dARNIxjiyOkMpga5GIG5DFQSwDBMDJaxkeUw1AAAa9oGjiXnhDQAAAAASUVORK5CYII=";
var tabpictoff = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsRAAALEQF/ZF+RAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAAEGSURBVDhPhZSxEcIwDEVNqjQ0LEKRng2yBSUswB6swhTUVNDC0QAFtJj8YDk/inTm7t8ZS3qWLDmz8+0Z6FfxH7X+Gn7DHkAxhAh167aghu0UFwKDYDjVK1eAXI6LCAkkJdCDKjiwwYMJSEFQRZVBCC7B9IHILJU6BpVgfJCU6II8mAXRGaG8Vt8LB3oQAv271qm5Pt7b++uzY2kYDmQ/rBHbz2ICtfP1IWpp0GZfR610R0P7SxCBOqChawziTCTQ2oNt0jUB6WHjDCyYCWJHgOGkS9GwCUhDPBDA3hPJrx8OfFdWRtad5fbLCTxDaUaW1nyJ3+QzkmZJHjC+BpDMmN4X+8jnB6524gKM/bngAAAAAElFTkSuQmCC";
var alertsService = Components.classes["@mozilla.org/alerts-service;1"].getService(Components.interfaces.nsIAlertsService);

function tabscroll(event){
    if (pancount == 1) return;
    var tgw = document. getElementById ("tab-view"). contentWindow;
    var groupItems = tgw. GroupItems;
    if (event.detail > 0) {
    var tabItem = groupItems. getNextGroupItemTab (false);
    custombuttons.alertSlide("Предыдущая группа", "Группы вкладок Firefox"); }
        else {
    var tabItem = groupItems. getNextGroupItemTab (true);
        custombuttons.alertSlide("Следующая группа  ", "Группы вкладок Firefox"); }
    gBrowser. selectedTab = tabItem. tab;
        };

function gruppi(event){
    if(event.button == 1) {
        // Открыть новую группу
        TabView._window.GroupItems.newGroup().newTab("about:blank");
        TogglePict();
        alertsService.showAlertNotification(tabpicton, "Группа вкладок создана", "Всего групп:  " + TabView._window.GroupItems.groupItems.length, false, "", null, "");
                }
    if(event.button == 2) {
        // Закрыть текущую группу
        event.preventDefault();
        event.stopPropagation();
        if (pancount == 1) return;
        var tab = TabView._window.GroupItems.getNextGroupItemTab(true).tab;
        var group = TabView._window.GroupItems._activeGroupItem;
        group.fadeAwayUndoButtonDelay = 0;
        StopTabCloseHandler = true;
        group.closeAll();
        gBrowser.selectedTab = tab;
        setTimeout(function() {  
            TogglePict();
            alertsService.showAlertNotification(tabpictoff, "Группа вкладок удалена", "Всего групп:  " + TabView._window.GroupItems.groupItems.length, false, "", null, "");
                    }, 500)
                }
};


var PanButton = document.getElementById("tabview-button");
PanButton.onmouseover = function() { PanButton.setAttribute("tooltiptext", "Группы вкладок Firefox\nВсего групп: " + TabView._window.GroupItems.groupItems.length); };


function TogglePict(event) {
pancount = TabView._window.GroupItems.groupItems.length;
if (pancount == 1) PanButton.image = tabpict1;
if (pancount == 2) PanButton.image = tabpict2;
if (pancount == 3) PanButton.image = tabpict3;
if (pancount == 4) PanButton.image = tabpict4;
if (pancount == 5) PanButton.image = tabpict5;
return pancount;
};

TogglePict();

// циклическая проверка количества групп (1 сек)
var count = 0;
intervalID = setInterval(test, 1000);
   function test(){
    count = count + 1;
    if (count == 2000){clearInterval(intervalID);}else{TogglePict();}
        };

};

TabView._window ? afterInit() : TabView._initFrame(afterInit);



var tabs = gBrowser.tabContainer;
function tabCloseHandler(event) {
    if ( event.target.linkedBrowser.currentURI.spec == 'about:blank') return;
    if ( TabView._window.GroupItems._activeGroupItem._children.length == 1 && !StopTabCloseHandler) {
         gBrowser.removeAllTabsBut(gBrowser.addTab("about:blank"));
         setTimeout("gURLBar.focus()", 0);
         }
    StopTabCloseHandler = false;
}
tabs.addEventListener("TabClose", tabCloseHandler, false);

this.onDestroy = function() {
    tabs.removeEventListener("TabClose", tabCloseHandler, false);
}

Отсутствует

 

№504822-10-2012 08:46:17

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

Re: Custom Buttons

bunda1 пишет

Попробуй

после закрытия последней вкладки в группе вываливается в менеджер групп :(

Отсутствует

 

№504922-10-2012 11:18:50

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 10.0

Re: Custom Buttons

Infocatcher пишет

Да, неправильный.

Ты наверно говоришь про второй код ?
А я - про первый.
Прошу прощения, что не уточнил, виноват.

Отсутствует

 

№505022-10-2012 17:53:08

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

Re: Custom Buttons

Dumby пишет

Ты наверно говоришь про второй код ?
А я - про первый.
Прошу прощения, что не уточнил, виноват.

Да, про второй. Что-то я сразу не заметил, что в первом тоже onDestroy есть.
С первым кодом, на первый взгляд, все в порядке.


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

Отсутствует

 

Board footer

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