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

Список ответов на каверзные вопросы можно получить в FAQ-разделе форума.
  • Форумы
  •  » Сustom Buttons
  •  » Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

№117-11-2015 16:35:23

Openstar
Участник
 
Группа: Members
Зарегистрирован: 17-11-2015
Сообщений: 5
UA: Firefox 38.0

Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

Товарищи, приветствую. Если кто знает, подскажите пожалуйста коды таких кнопок: "закрыть все вкладки", "закрепить вкладку", "закрыть вкладки справа".
Закрыть все - имеется в виду, все кроме закрепленных. Плюс, у меня в about:config стоит твик "не закрывать браузер при закрытии последней вкладки", то есть браузер закрываться не должен.
Закрепить - та же команда что и в контекстном меню вкладки.
Закрыть справа - тоже, команда в контекстном меню вкладки. Я нашел тут тему с этой кнопкой, но у меня она закрывает вкладки или по щелчку правой кнопкой мыши, или если левой - то нужно кликать два раза. Можно ли сделать так, чтобы кликать один раз, и всегда левой кнопкой?

Отсутствует

 

№217-11-2015 19:29:59

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

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

закрыть все вкладки

Выделить код

Код:

[...gBrowser.tabs].forEach((tab)=> !tab.pinned && gBrowser.removeTab(tab));

закрыть вкладки справа

Выделить код

Код:

gBrowser.removeTabsToTheEndFrom(gBrowser.mCurrentTab);

закрепить вкладку

Выделить код

Код:

gBrowser.pinTab(gBrowser.mCurrentTab);

Отсутствует

 

№317-11-2015 20:25:04

Openstar
Участник
 
Группа: Members
Зарегистрирован: 17-11-2015
Сообщений: 5
UA: Firefox 38.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

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

Отсутствует

 

№417-11-2015 20:33:14

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

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

Openstar пишет:

Единственно, кнопка "закрепить" - есть ли такой код, чтобы и откреплял тоже, нажатием на ту же кнопку?

Выделить код

Код:

var currTab = gBrowser.mCurrentTab;
currTab.pinned ? gBrowser.unpinTab(currTab) : gBrowser.pinTab(currTab);

Отредактировано bunda1 (17-11-2015 20:33:51)

Отсутствует

 

№517-11-2015 20:49:01

Openstar
Участник
 
Группа: Members
Зарегистрирован: 17-11-2015
Сообщений: 5
UA: Firefox 38.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

Ну ваще, магия просто ) Спасибо.

Отсутствует

 

№624-05-2016 09:47:20

questman
Участник
 
Группа: Members
Зарегистрирован: 05-11-2011
Сообщений: 189
UA: Firefox 35.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

закрыть вкладки справа
gBrowser.removeTabsToTheEndFrom(gBrowser.mCurrentTab);

А можно кроме указанного адреса(адресов) или лэйбла?

Отредактировано questman (24-05-2016 14:25:43)

Отсутствует

 

№724-05-2016 12:32:19

turbot
Участник
 
Группа: Members
Зарегистрирован: 09-10-2011
Сообщений: 2529
UA: Firefox 49.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

questman

Выделить код

Код:

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%3EClose%20Tabs%20to%20the...%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDoAABSCAABFVgAADqXAAAXb9daH5AAAAEMSURBVHjazNO9SgNREAXgjdjE0uCDBBtryQtYWcQfRF/iwClOZR/ULhZWgqX4BmuKiEUgbyBGjChCqoRgxmYWhmWTFNkixRSXnfnmcC+bmFlSRiXrB4GKVQP1CGoEygpqBOoJ1E6cK4Iuw9DfHMxAtZZBHVAzUANQbVAfPjgAdQdq6OfXZdA3qCmoG1AVUGeg+qBOzCwBdeuLfhdB275t5knOHdsDtQnqOCS0eE95aD93Dy+g6p6kDqrrS7LvjXnQVWh6A3XgiXYdOwL1Hnqu81AV1CGocWh6ALUBqgmqB+rC0XZINQF1Cmorg9KC5/1x7NPPQ1D3oL4KetMMslWrdChdEXpe07+/LOh/AGypGZE0h3H2AAAAAElFTkSuQmCC%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bthis.setAttribute%28%22context%22%2C%20%22%22%29%3B%0Athis.onclick%20%3D%20e%20%3D%3E%20%7B%0A%20%20%20%20var%20tab%20%3D%20gBrowser.selectedTab%2C%20pinned%20%3D%20tab.pinned%2C%20ignored%20%3D%20%5B...self.Help.toLowerCase%28%29.split%28%27%5Cn%27%29%5D%3B%0A%20%20%20%20if%20%28pinned%20%26%26%20%21e.button%29%20return%3B%0A%20%20%20%20if%20%28e.button%20%3D%3D%202%20%26%26%20%28e.ctrlKey%20%7C%7C%20e.shiftKey%29%29%20%7B%0A%20%20%20%20%20%20%20%20gShowPopup%28this%29%3B%20return%3B%0A%20%20%20%20%7D%0A%20%20%20%20var%20tabs%20%3D%20gBrowser.visibleTabs.filter%28tab%20%3D%3E%20%21tab.pinned%20%26%26%20%28ignored.indexOf%28tab.label.toLowerCase%28%29%29%20%3D%3D%20-1%29%29%3B%0A%20%20%20%20if%20%28%21pinned%29%20%7B%0A%20%20%20%20%20%20%20%20var%20index%20%3D%20tabs.indexOf%28tab%29%3B%0A%20%20%20%20%20%20%20%20switch%28e.button%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20case%200%3A%20tabs%20%3D%20tabs.slice%280%2C%20index%29%3B%20break%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20case%201%3A%20tabs.splice%28index%2C%201%29%3B%20break%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20case%202%3A%20tabs%20%3D%20tabs.slice%28index%20+%201%29%3B%20break%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%20%20for%28var%20tab%20of%20tabs%29%20gBrowser.removeTab%28tab%2C%20%7Banimate%3A%20true%2C%20byMouse%3A%20false%7D%29%3B%0A%7D%0Athis.tooltipText%20%3D%20%22%u041B%u041A%u041C%3A%20%u0417%u0430%u043A%u0440%u044B%u0442%u044C%20%u0432%u043A%u043B%u0430%u0434%u043A%u0438%20%u0441%u043B%u0435%u0432%u0430%20%5Cn%u0421%u041A%u041C%3A%20%u0417%u0430%u043A%u0440%u044B%u0442%u044C%20%u0434%u0440%u0443%u0433%u0438%u0435%20%u0432%u043A%u043B%u0430%u0434%u043A%u0438%20%5Cn%u041F%u041A%u041C%3A%20%u0417%u0430%u043A%u0440%u044B%u0442%u044C%20%u0432%u043A%u043B%u0430%u0434%u043A%u0438%20%u0441%u043F%u0440%u0430%u0432%u0430%22%3B%0A%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%u0424%u043E%u0440%u0443%u043C%20Mozilla%20%u0420%u043E%u0441%u0441%u0438%u044F%0A%u041A%u043E%u043C%u043F%u044C%u044E%u0442%u0435%u0440%u043D%u044B%u0439%20%u0444%u043E%u0440%u0443%u043C%20Ru.Board%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Из кнопки Dumby.
ЛКМ: Закрыть вкладки слева от текущей (кроме защищенных и закрепленных).
СКМ: Закрыть все вкладки кроме текущей (и защищенных/закрепленных).
ПКМ: Закрыть вкладки справа от текущей (кроме защищенных и закрепленных), с shift или ctrl - открыть меню кнопки.
Названия (label) защищенных вкладок класть во вкладку "Помощь", каждую с новой строки. Название должно быть полным, но не зависимо от регистра.
Как с адресами сделать - не придумал.

Отредактировано turbot (24-05-2016 12:34:34)

Отсутствует

 

№824-05-2016 14:38:15

questman
Участник
 
Группа: Members
Зарегистрирован: 05-11-2011
Сообщений: 189
UA: Firefox 35.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

turbot пишет:

Из кнопки Dumby.
ЛКМ: Закрыть вкладки слева от текущей (кроме защищенных и закрепленных).
СКМ: Закрыть все вкладки кроме текущей (и защищенных/закрепленных).
ПКМ: Закрыть вкладки справа от текущей (кроме защищенных и закрепленных), с shift или ctrl - открыть меню кнопки.
Названия (label) защищенных вкладок класть во вкладку "Помощь", каждую с новой строки. Название должно быть полным, но не зависимо от регистра.
Как с адресами сделать - не придумал.

Просто прелесть!
Спасибо, всё чётко работает.

Отсутствует

 

№924-05-2016 20:55:36

turbot
Участник
 
Группа: Members
Зарегистрирован: 09-10-2011
Сообщений: 2529
UA: Firefox 49.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

questman
Вот еще, для пущей прелести (замените инициализацию):

Выделить код

Код:

this.setAttribute("context", "");
this.tooltipText = "ЛКМ: Закрыть вкладки слева \nСКМ: Закрыть другие вкладки \nПКМ: Закрыть вкладки справа \n\Игнорируемые вкладки:\n" + self.Help;
this.onclick = e => {
    var tab = gBrowser.selectedTab, pinned = tab.pinned, h = self.Help.toLowerCase(), ignored = [...h.split('\n')];
    if (pinned && !e.button) return;
    if (e.button == 2 && (e.ctrlKey || e.shiftKey)) {
        gShowPopup(this); return;
    }
    if (e.altKey) {
        var label = tab.label.toLowerCase().replace(/\t/g, "	").replace(/\n/g, "
").replace(/\r/g, "
");
        var link = custombuttons.makeButtonLink("edit", _id);
        var param = custombuttons.cbService.getButtonParameters(link);
        param = param.wrappedJSObject || param;
        if (e.button == 0) param.help = param.help.toLowerCase() + '\n' + label;
        else param.help = param.help.toLowerCase().replace('\n' + label, '').replace(label + '\n', '');
        custombuttons.cbService.installButton(param);
        return;
    }
    var tabs = gBrowser.visibleTabs.filter(tab => !tab.pinned && (ignored.indexOf(tab.label.toLowerCase()) == -1));
    if (!pinned) {
        var index = tabs.indexOf(tab);
        switch(e.button) {
            case 0: tabs = tabs.slice(0, index); break;
            case 1: tabs.splice(index, 1); break;
            case 2: tabs = tabs.slice(index + 1); break;
        }
    }
    for(var tab of tabs) gBrowser.removeTab(tab, {animate: true, byMouse: false});
}

Alt + ЛКМ на кнопке - добавляет активную вкладку в игнорируемые, Alt + ПКМ - удаляет активную вкладку из игнорируемых. (Также подсмотрено в другой кнопке Dumby)
В подсказке кнопки будет выводиться список игнорируемых.

Отредактировано turbot (24-05-2016 20:56:23)

Отсутствует

 

№1006-03-2017 12:07:43

mahtanoronra
Участник
 
Группа: Members
Зарегистрирован: 08-03-2009
Сообщений: 59
UA: Firefox 45.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

turbot
отличная кнопка,работает хорошо, за исключением 1 минуса. если скажем вкладки слева защищены или закреплены то при закрытие все вкладок слева ,он видимо делает какой то круг и закрывает все вкладки справа,типа от того что слева не может..

Отсутствует

 

№1106-03-2017 16:08:02

mokujin
Участник
 
Группа: Members
Зарегистрирован: 17-02-2017
Сообщений: 156
UA: unknown 0.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

Зачем это

Выделить код

Код:

this.setAttribute("context", "");

нечасто вижу, но иногда вижу в кнопках. Что-для-чего?

Отсутствует

 

№1206-03-2017 20:15:51

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

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

mokujin пишет:

Зачем это

Выделить код

Код:

this.setAttribute("context", "");

нечасто вижу, но иногда вижу в кнопках. Что-для-чего?

Что бы заблокировать дефолтный ПКМ на кнопке.

Отсутствует

 

№1321-05-2017 15:53:47

Quartz1t
Участник
 
Группа: Members
Зарегистрирован: 25-11-2013
Сообщений: 94
UA: Palemoon 27.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

Выделить код

Код:

this.setAttribute("context", "");
this.onclick = e => {
    var tab = gBrowser.selectedTab, pinned = tab.pinned, ignored = [...self.Help.toLowerCase().split('\n')];
    if (pinned && !e.button) return;
    if (e.button == 2 && (e.ctrlKey || e.shiftKey)) {
        gShowPopup(this); return;
    }
    var tabs = gBrowser.visibleTabs.filter(tab => !tab.pinned && (ignored.indexOf(tab.label.toLowerCase()) == -1));
    if (!pinned) {
        var index = tabs.indexOf(tab);
        switch(e.button) {
            case 0: tabs = tabs.slice(0, index); break;
            case 1: tabs.splice(index, 1); break;
            case 2: tabs = tabs.slice(index + 1); break;
        }
    }
    for(var tab of tabs) gBrowser.removeTab(tab, {animate: true, byMouse: false});
}
this.tooltipText = "ЛКМ: Закрыть вкладки слева \nСКМ: Закрыть другие вкладки \nПКМ: Закрыть вкладки справа";

Помогите, пожалуйста.
Хотелось бы, чтобы СКМ закрывала все вкладки.
Спасибо.

Отредактировано Quartz1t (21-05-2017 15:56:01)

Отсутствует

 

№1422-05-2017 19:45:10

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

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

Quartz1t пишет:

Хотелось бы, чтобы СКМ закрывала все вкладки.

Выделить код

Код:

this.setAttribute("context", "");
this.onclick = e => {
    var tab = gBrowser.selectedTab, pinned = tab.pinned, ignored = [...self.Help.toLowerCase().split('\n')];
    if (pinned && !e.button) return;
    if (e.button == 2 && (e.ctrlKey || e.shiftKey)) {
        gShowPopup(this); return;
    }
    var tabs = gBrowser.visibleTabs.filter(tab => !tab.pinned && (ignored.indexOf(tab.label.toLowerCase()) == -1));
    if (!pinned) {
        var index = tabs.indexOf(tab);
        switch(e.button) {
            case 0: tabs = tabs.slice(0, index); break;
            case 2: tabs = tabs.slice(index + 1); break;
        }
    }
    for(var tab of tabs) gBrowser.removeTab(tab, {animate: true, byMouse: false});
}
this.tooltipText = "ЛКМ: Закрыть вкладки слева \nСКМ: Закрыть другие вкладки \nПКМ: Закрыть вкладки справа";

Отсутствует

 

№1522-05-2017 21:37:52

Quartz1t
Участник
 
Группа: Members
Зарегистрирован: 25-11-2013
Сообщений: 94
UA: Palemoon 27.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

Спасибо. Кнопка - мечта. Всё отлично работает.

bunda1 пишет:

nСКМ: Закрыть другие вкладки

В описании поправить на "Закрыть все вкладки".

Отредактировано Quartz1t (22-05-2017 21:39:44)

Отсутствует

 

№1629-05-2017 20:21:14

_zt
Участник
 
Группа: Members
Зарегистрирован: 10-11-2014
Сообщений: 150
UA: Firefox 52.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

bunda1, а можно кнопочку "Закрыть другие вкладки" по ЛКМ, без всего остального?

Отсутствует

 

№1729-05-2017 20:50:19

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

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

_zt
Вкладка - Код

Выделить код

Код:

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

Отредактировано villa7 (29-05-2017 20:51:07)


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

Отсутствует

 

№1831-05-2017 00:31:35

_zt
Участник
 
Группа: Members
Зарегистрирован: 10-11-2014
Сообщений: 150
UA: Firefox 52.0

Re: Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

villa7
Спасибо, так удобнее, чем через контекстное меню.
Три кнопочки над вертикальной панелью вкладок - http://s018.radikal.ru/i506/1705/9b/3d8e2ccae28b.png.

Отсутствует

 
  • Форумы
  •  » Сustom Buttons
  •  » Кнопки: закрыть все вкладки, закрепить вкладку, закрыть вкладки справа

Board footer

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