Привет All!
Вот есть кнопка с командой

Выделить код

Код:

gBrowser.removeAllTabsBut(gBrowser.mCurrentTab);

которая делает всё хорошо, но ежели вкладка закреплена, то ничего не происходит. Закреплена именно функцией бравзера, не TabUtilities (!). Ежели через TabUtilities сделать "только иконка" то кнопка работает, закрывает другие вкладки нормально.
Но ежели именно сделать через меню "Закрепить вкладку"(это ф-ция бравзера

Выделить код

Код:

oncommand = gBrowser.pinTab(gBrowser.mContextTabs, true);

) то вкладки не закрываются. Переходить нужно на любую "незакреплённую" вкладку, тогда срабатывает.
Можно сделать шобы и так-и-так срабатывало ? Ну т.е. когда находишься на закрепленной вкладке, тоже закрывались другие.
зы. бравзер PaleMoon, это может быть связано...? хз.

HaGEN

Выделить код

Код:

[...gBrowser.tabs].forEach(function(tab) !tab.selected && gBrowser.removeTab(tab) );

или только для текущей группы вкладок:

Выделить код

Код:

gBrowser.visibleTabs.forEach(function(tab) !tab.selected && gBrowser.removeTab(tab) );
okkamas_knife пишет

при нажатии кнопки должны закрываться вообще все вкладки кроме активной независимо от закрепления? так?

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

bunda1 благодарю, именно так!
Первый вариант сразу поставил и все как надобно. Ну вот на картинке активна вкладка закрепленная и при нажатии на кнопку кот. написал bunda1 закрываются две вкладки справа, слева всё остаётся. Всё как дОлжно!
5638806m.jpg
Благодарю господа :)
Вопрос решен.

Добавлю одно: чтобы не закрывались такие же закрепленные уже вкладки, но не активные(те что влево строятся) нужно добавить к кнопке один парам. !tab.pinned

Выделить код

Код:

[...gBrowser.tabs].forEach(function(tab) !tab.selected & !tab.pinned && gBrowser.removeTab(tab) );