Страницы: 1
Dumby, спасибо, теперь в секции по событию "load" работает. А в данном случае это имеет значение? Предыдущий вариант, перемещённый в конец custom_script_win ведь тоже работал.
Может кэш залип?
Нет, это я в первую очередь проделал, не работает из секции по событию "load", переместил код в конец custom_script_win.js — заработало. Большое спасибо!
просто пощёкать подряд чтоб отмотать
Почему-то у меня не "отматывает", всё одно между двумя последними активными переключается. Открыл поочерёдно четыре вкладки, клацнул по четвёртой — переключился на третью, клацнул по третьей — обратно на четвёртую.
Как-то это поперёк концепции.
В данном случае похоже на то. А вообще — аналогично сворачиванию окон. В древней [opera] была такая настройка вкладок: "сворачивать щелчком по вкладке". В своё время привык к такому поведению и сейчас его несколько не хватает.
Если нет простого решения, поперёк концепции ломиться не стоит, мышиная замена ctrl+tab тоже вполне себе. Спасибо.
Krtec пишет...такое же поведение при ЛКМ по активной вкладке
[spoiler][code](async ucf => {
await delayedStartupPromise;
var set = new Set([gBrowser.selectedTab]);
var bt = gBrowser._blurTab;
gBrowser._blurTab = tab => tab.selected && blur(tab);
var blur = (tab, click) => {
set.delete(tab);
var res; for(var t of set) t.hidden || (res = t);
click && set.add(tab);
res ? gBrowser.selectedTab = res : bt.call(gBrowser, tab);
}
var skip, arr = [
["TabClose", e => set.delete(e.target)],
["TabSelect", e => set.add(e.target, set.delete(e.target))],
["mousedown", e => skip = e.button || !e.target.matches(
"tab[selected] :scope:not(.tab-close-button):not(.tab-icon-sound), tab[selected]"
), true],["click", e => skip || e.ctrKey || e.shiftKey || e.altKey
…
|| e.detail != 1 || blur(e.target.closest("tab"), true)
]
];
var id, tc = gBrowser.tabContainer;
for(var args of arr) tc.addEventListener(...args);
ucf.unloadlisteners.push(id = Symbol
Пользуюсь такой кнопкой для перевода: [spoiler][code]/*Initialization Code*/
var lc = navigator.lastClick = {};
addEventListener("mouseup", e => {
if (e.button) return;
lc.X = e.screenX - mozInnerScreenX;
lc.Y = e.screenY - mozInnerScreenY;
}, false, gBrowser.tabpanels || 1);
var createWindow = function(text, status, title, id, pos, size){
var win = window, doc = win.document, wId = 'ujs_window'+(id || ''), w = doc.getElementById(wId);
var keyDown = function(e){if(!e.shiftKey && !e.ctrlKey && !e.altKey && e.keyCode == 27)doc.getElementById(wId).closeWin()};
// закрыть окно переводчика кликом мимо окна
gBrowser.addEventListener("click", function c() {
this.removeEventListener("click", c );
try { doc.getElementById(wId).closeWin() } catch(e) {};
}, true );
if(w)w.closeWin();
w = doc.createElementNS(xhtmlns, 'div');
w.setAttribute('style', 'position:fixed;display:block;visibility:hidden;left:0;top:0;width:auto;height:auto;border:1p
Допустим, под «предыдущей посещенной вкладкой»,
подразумевается предыдущая (по времени)
активировавшаяся вкладка, не скрытая и не закрытая.
Следует понимать, что такой может не быть,
тогда переход пойдёт туда, куда перейдёт сам браузер.
Добавьте пожалуйста в этот скрипт (p798193) такое же поведение при ЛКМ по активной вкладке, если возможно. [firefox] 78.
Спасибо.
Страницы: 1