Может у тебя какое то расширение или Сustom Buttons кнопка или код конфликтует с моим кодом.
Проверяю на виртуалке на голой 31 лисе. Поставил только custom buttons, custom tab width, no close tab buttons и super tab mode. Всё кроме custom buttons отключил, но поведение прежнее. Что делать?
Отредактировано KOT040188 (29-07-2014 21:15:36)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
Проверяю на виртуалке на голой 31 лисе. Поставил только custom buttons, custom tab width, no close tab buttons и super tab mode. Всё кроме custom buttons отключил, но поведение прежнее. Что делать?
Мистика однако, может попробуй чистый профиль Localization | PortableApps.com - Portable software for USB, portable and cloud drives
Отсутствует
Попробую завтра. Но ведь профиль в виртуалке и так почти чистый (не считая установки парочки расширений, которые я отключил) и совсем непользованый
Отредактировано KOT040188 (30-07-2014 00:17:55)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
В общем удалил на виртуалке профиль и ваша кнопка заработала как надо, но на этот раз убило фишку лисы (при открытии СКМ ссылок с одной страницы каждая новая вкладка открывается правее предыдущей) Можно ли это как-то поправить?????????????????? Дополнительно решил выяснить в чём было дело раньше. Установил те расширения список которых я приводил. Последним установил Super Tab Mode. Он то и оказался подозрительным. Поведение вашей кнопки на этот раз не нарушилось, но после установки Super Tab Mode, возник другой глюк: ссылки из "управления дополнениями" открываются по две вкладки сразу. Видимо Super Tab Mode в прошлый раз даже в выключенном состоянии влиял на поведение вкладок. Странное какое-то влияние, нестабильное. В связи с этим просьба, можно ли заменить Super Tab Mode всё той же кнопкой (добавить в ту же), а именно следующий его функционал: при закрытии вкладки фокус переходит на предыдущую использованную вкладку, а не как по умолчанию в лисе на соседнюю? Вопрос как раз по теме
Отредактировано KOT040188 (30-07-2014 21:01:39)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
Можно ли заменить Super Tab Mode кнопкой, а именно следующий его функционал: при закрытии вкладки фокус переходит на предыдущую использованную вкладку, а не как по умолчанию в лисе на соседнюю? Теперь это расширение не совместимо с последней лисой, да и глючное оно…
Отредактировано KOT040188 (25-09-2014 19:29:03)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
Можно ли заменить Super Tab Mode кнопкой, а именно следующий его функционал: при закрытии вкладки фокус переходит на предыдущую использованную вкладку, а не как по умолчанию в лисе на соседнюю? Теперь это расширение не совместимо с последней лисой, да и глючное оно…
const st = gBrowser.selectedTab; const tc = gBrowser.tabContainer; var pTab = st, cTab = st; function onTabSelect(e) { pTab = cTab; cTab = e.target; } function onTabClose(e) { if (e.target == cTab) gBrowser.selectedTab = pTab; } addEventListener("TabSelect", onTabSelect, false, tc); addEventListener("TabClose", onTabClose, false, tc);
Отсутствует
bunda1
Спасибо, но срабатывает почему-то один раз. Тоесть закрыл владку - перешёл на предыдущую использованную, закрыл эту - перешёл на соседнюю
Отредактировано KOT040188 (25-09-2014 20:48:41)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
KOT040188
const tc = gBrowser.tabContainer; var tabs = []; function onTabSelect(e) { for (let i = 0; i < tabs.length; i++) { if (e.target != tabs[i]) continue; tabs.splice(i, 1); break; } tabs.push(e.target); } function onTabClose(e) { if (tabs.length > 1) gBrowser.selectedTab = tabs[tabs.length - 2]; tabs.splice(tabs.length - 1, 1); } addEventListener("TabSelect", onTabSelect, false, tc); addEventListener("TabClose", onTabClose, false, tc);
Отсутствует
2k1dmg
Уже лучше, но срабатывает чётко через раз. Извините за назойливость
Отредактировано KOT040188 (26-09-2014 07:44:08)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
KOT040188
ещё лучше я уже не сделаю
const tc = gBrowser.tabContainer; let tabs = []; function onTabSelect(e) { for (let i = 0; i < tabs.length; i++) { if (e.target.linkedPanel != tabs[i]) continue; tabs.splice(i, 1); break; } tabs.push(e.target.linkedPanel); } function onTabClose(e) { let allTabs = Array.slice(tc.childNodes); let allTabsLP = allTabs.map(function(tab) { return tab.linkedPanel; }); if (e.target == gBrowser.selectedTab && tabs.length >= 1) { let tab; let lp = tabs[tabs.length - (tabs.length == 1 ? 1 : 2)]; for (let i = 0; i < allTabsLP.length; i++) { if (lp != allTabsLP[i]) continue; tab = allTabs[i]; break; } if (tab) gBrowser.selectedTab = tab; } if (tabs.length != 0) { tabs = tabs.filter(function(tab) { return allTabsLP.indexOf(tab) != -1 ? true : false; }); tabs.splice(tabs.length - (tabs.length == 1 ? 1 : 2), 1); } } addEventListener("TabSelect", onTabSelect, false, tc); addEventListener("TabClose", onTabClose, false, tc);
Отсутствует
2k1dmg
Большое спасибо! Почти идеально Первый раз после создания кнопки перескакивает на соседнюю и потом бывает изредка перескакивает…
Отредактировано KOT040188 (26-09-2014 16:18:57)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
Софорумчане,
А не встречал ли кто кнопку - аналог вот этого расширения: https://addons.mozilla.org/ru/firefox/a … -dl-rating?
Буду благодарен за указку или за создание таковой
Отсутствует
Осталось как-то поправить этот код:
// Открывать любую новую вкладку справа от текущей, от 08.04.2014. ................................ addEventListener("TabOpen", function(e) { var newTab = e.target; var lab = newTab.label; var tabpos = gBrowser.selectedTab._tPos; var newTabLab = gBrowser.mStringBundle.getString("tabs.emptyTabTitle"); if ( tabpos == 0 && lab == newTabLab ) return; // если восстановление сессии if ( new Error().stack.indexOf("openContainer") !== -1 ) return; // если открыть всё во вкладках из папки закладок lab == newTabLab ? setTimeout(function() gBrowser.moveTabTo( e.target, tabpos + 1 ), 50) // если восстановление вкладки : gBrowser.moveTabTo( e.target, tabpos + 1 ); // автоматически закрывать "custombutton" вкладку if ( lab.startsWith("custombutton://%") ) setTimeout(function() gBrowser.removeTab( newTab ), 0); }, false, gBrowser.tabContainer );
что бы он не действовал в случаях: восстановление закрытой вкладки (восстанавливается не там где была, а рядом с текущей), открытие нескольких ссылок подряд СКМ. И тогда будет вообще идеально. Я уже отказался от тормозного и глючного TMP, в последней его версии полностью поломали функционал, который я сейчас заменяю этими кнопками…
Отредактировано KOT040188 (27-09-2014 17:48:22)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
что бы он не действовал в случаях: восстановление закрытой вкладки (восстанавливается не там где была, а рядом с текущей), открытие нескольких ссылок подряд СКМ.
// Открывать любую новую вкладку справа от текущей, от 27.09.2014. ................................ addEventListener("TabOpen", function(e) { var newTab = e.target; var lab = newTab.label; var tabpos = gBrowser.selectedTab._tPos; var newTabLab = gBrowser.mStringBundle.getString("tabs.emptyTabTitle"); if ( tabpos == 0 && lab == newTabLab ) return; // если восстановление сессии if ( new Error().stack.indexOf("openContainer") !== -1 ) return; // если открыть всё во вкладках из папки закладок if ( /handleLinkClick/.test(new Error().stack) ) return; // если открыть ссылку по СКМ gBrowser.moveTabTo( e.target, tabpos + 1 ); // автоматически закрывать "custombutton" вкладку if ( lab.startsWith("custombutton://%") ) setTimeout(function() gBrowser.removeTab( newTab ), 0); }, false, gBrowser.tabContainer );
Отсутствует
bunda1
Вкладки теперь вроде вкладки восстанавливает нормально, но если открывать ссылки СКМ - ничего не поменялось. Хотелось бы во втором случае получить поведение по умолчанию в лисе
Отредактировано KOT040188 (27-09-2014 21:23:12)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
Вкладки теперь вроде вкладки восстанавливает нормально, но если открывать ссылки СКМ - ничего не поменялось. Хотелось бы во втором случае получить поведение по умолчанию в лисе
Я проверил и у меня работает, но может я тебя не правильно понял, объясни подробней где должны открываться ссылки по СКМ.
Отсутствует
Я проверил и у меня работает, но может я тебя не правильно понял, объясни подробней где должны открываться ссылки по СКМ.
Странно как-то. Действительно требуемое мне поведение работает на страницах и вы правильно меня поняли, но вот из библиотеки открытой во вкладке (не люблю окна) не работает - это меня и спутало… Но это мелочь, как и то, что при закрытии вкладки изредка перебрасывает на соседнюю (не могу понять заканамеерность)… Всё равно спасибо
Отредактировано KOT040188 (28-09-2014 02:15:00)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
bunda1
Ну так я ж написал, что почти хорошо. Но всегда хочется идеального Ну если лучше нельзя…
но вот из библиотеки открытой во вкладке (не люблю окна) не работает
Вот это бы ещё поправить. Ну и редкие переключения на соседнюю вкладку при закрытии. Но если нельзя, то нельзя…
Отредактировано KOT040188 (28-09-2014 02:54:54)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
bunda1
Ну так я ж написал, что почти хорошо. Но всегда хочется идеального Ну если лучше нельзя…но вот из библиотеки открытой во вкладке (не люблю окна) не работает
Вот это бы ещё поправить. Ну и редкие переключения на соседнюю вкладку при закрытии. Но если нельзя, то нельзя…
// Открывать любую новую вкладку справа от текущей, от 27.09.2014. ................................ addEventListener("TabOpen", function(e) { var newTab = e.target; var lab = newTab.label; var tabpos = gBrowser.selectedTab._tPos; var newTabLab = gBrowser.mStringBundle.getString("tabs.emptyTabTitle"); if ( tabpos == 0 && lab == newTabLab ) return; // если восстановление сессии if ( new Error().stack.indexOf("openContainer") !== -1 ) return; // если открыть всё во вкладках из папки закладок if ( /handleLinkClick|CT_onClick/.test(new Error().stack) ) return; // если открыть ссылку или закладку по СКМ gBrowser.moveTabTo( e.target, tabpos + 1 ); // автоматически закрывать "custombutton" вкладку if ( lab.startsWith("custombutton://%") ) setTimeout(function() gBrowser.removeTab( newTab ), 0); }, false, gBrowser.tabContainer );
Отсутствует
bunda1
Теперь из библиотеки открывает в крайней правой позиции Откатился на предыдущий код
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
Ну так и должно быть по умолчанию, разве нет?
Ну вообще-то да. Извиняюсь за неточное поставленную задачу. Просто уже сам путаюсь. Но в данной ситуации я хотел бы такое же поведение как и со страницами. Тоесть первая закладка открывается справа от библиотеки, вторая справа от уже открытой и т.д.
bunda1
Ну так можно такое осуществить или нет? АУ!
Отредактировано KOT040188 (01-10-2014 18:24:05)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует
bunda1 откликнитесь! Прошу помощи. Долго не мог понять почему лиса восстанавливая вкладки при запуске зеркалирует их, то есть разворачивает их задом на перёд. Оказалось виноват этот код:
// Открывать любую новую вкладку справа от текущей, от 27.09.2014. ................................ addEventListener("TabOpen", function(e) { var newTab = e.target; var lab = newTab.label; var tabpos = gBrowser.selectedTab._tPos; var newTabLab = gBrowser.mStringBundle.getString("tabs.emptyTabTitle"); if ( tabpos == 0 && lab == newTabLab ) return; // если восстановление сессии if ( new Error().stack.indexOf("openContainer") !== -1 ) return; // если открыть всё во вкладках из папки закладок if ( /handleLinkClick/.test(new Error().stack) ) return; // если открыть ссылку по СКМ gBrowser.moveTabTo( e.target, tabpos + 1 ); // автоматически закрывать "custombutton" вкладку if ( lab.startsWith("custombutton://%") ) setTimeout(function() gBrowser.removeTab( newTab ), 0); }, false, gBrowser.tabContainer );
Можно это как-то поправить? И заодно открытие закладок из библиотеки (открытой во вкладке), чтобы они открывались так же как ссылки со страницы в лисе по умолчанию (ну вы в курсе про последовательность: сначала справа от текущей вкладки, затем справа от толькоо что открытой…)
Отредактировано KOT040188 (21-10-2014 18:43:21)
Вы думаете у котов лёгкая жизнь? А вы попробуйте целый день лизать меховую шапку!
Отсутствует