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

Будьте в курсе последних изменений в мире Mozilla, следя за нашим микроблогом в Twitter.

№1657619-08-2022 23:53:12

Stkvsky
Участник
 
Группа: Members
Зарегистрирован: 26-06-2012
Сообщений: 1700
UA: Firefox 78.0

Re: Custom Buttons

Dumby
Здравствуйте, вы бы не могли пожалуйста помочь, если можно так сделать, чтобы при открытии закладки, если она уже открыта во вкладке, автоматически переключать на эту вкладку, а не открывать новую

Отсутствует

 

№1657721-08-2022 23:45:12

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

Re: Custom Buttons

Stkvsky пишет

так сделать, чтобы при открытии закладки, если она уже открыта во вкладке, автоматически переключать на эту вкладку, а не открывать новую

Хорошо, попробую

скрытый текст

Выделить код

Код:

(popup => {
	var puu = `/PlacesUIUtils.${
		parseInt(Services.appinfo.platformVersion) >= 104 ? "sys.mjs" : "jsm"
	}:`;
	var skipRe = /\nopenMultipleLinksInTabs@|\/historySidebar.xhtml:/;
	var treeRe = /@chrome:\/\/browser\/content\/places\/(places|bookmarksSidebar)\.xhtml:/;

	var timestamp = 0, activate = 0, placesNode;

	addEventListener("activate", () => activate = Cu.now());
	addEventListener("DOMMenuItemActive", e => placesNode = e.target._placesNode);

	var check = url => {
		for(var win of BrowserWindowTracker.orderedWindows)
			if (win.toolbar.visible) for(var tab of (win.gBrowser?.tabs || []))
				if (tab.linkedBrowser?.currentURI?.spec == url)
					return win.focus(), win.gBrowser.selectedTab = tab;
	}
	var sels = [
		"menuitem[_moz-menuactive]",
		"#panelMenu_bookmarksMenu > toolbarbutton:is(:active,:focus)",
		"toolbarbutton.bookmark-item:is(:hover,:-moz-focusring)"
	];
	addEventListener("TabBrowserInserted", e => {
		if (timestamp - (timestamp = Cu.now()) > -500) return;

		var stack = Components.stack.formattedStack;
		if (!stack.includes(puu) || skipRe.test(stack)) return;

		if (treeRe.test(stack)) {
			var win;
			if (RegExp.$1.startsWith("p") && timestamp - activate < 500)
				win = Services.wm.getMostRecentWindow("Places:Organizer");
			var view = (win || window).document.commandDispatcher.focusedElement?.view;
			if (view) var node = view.nodeForTreeIndex(view.selection.currentIndex);
		} else {
			for(var node of sels) if (node = document.querySelector(node)) break;
			node = node?._placesNode || popup._view?.selectedNode || placesNode;
		}
		if (node && PlacesUtils.nodeIsBookmark(node) && check(node.uri)) {
			var tab = e.target, br = tab.linkedBrowser;
			var {loadURI} = br;
			br.loadURI = () => {
				br.loadURI = loadURI;
				gBrowser.removeTab(tab);
			}
		}
	}, true, gBrowser.tabContainer);

})(document.getElementById("placesContext"));

Отсутствует

 

№1657822-08-2022 00:33:04

Stkvsky
Участник
 
Группа: Members
Зарегистрирован: 26-06-2012
Сообщений: 1700
UA: Firefox 78.0

Re: Custom Buttons

Dumby
Превосходно работает, благодарю

Отсутствует

 

№1657922-08-2022 01:20:52

Dobrov
Участник
 
Группа: Members
Зарегистрирован: 04-10-2011
Сообщений: 394
UA: Firefox 97.0

Re: Custom Buttons

Dumby пишет

при открытии закладки, если она уже открыта во вкладке, автоматически переключать на эту вкладку, а не открывать новую

Хорошо, попробую

Не работает на UserChromeFiles 2021-9-23! Скрипт подключал так:

Выделить код

Код:

// здесь тоже не пашет - scriptsbackground: [ // В фоне [System Principal]
	scriptschrome: { // Для докум. окна браузера [ChromeOnly]
		domload: [ // По событию "DOMContentLoaded"
		{ path: "select-open-fav.js", ucfobj: true, },

А почему привязка только к панели закладкок? Тут по идее нужен такой подход (наверное на форуме был подобный код?):
в неактивной вкладке открыта страница, допустим ya.ru. Кликаем эту же ссылку в id="personal-bookmarks" или эту же ссылку на странице текущей вкладки - в результате выбирается ранее неактивная вкладка с ya.ru


ещё Вопрос: как получить первую (или последнюю) ссылку из Меню закладок? (код должен работать с UCF)
Firefox-Favorites-Menu.png

Отредактировано Dobrov (22-08-2022 01:38:14)

Отсутствует

 

№1658022-08-2022 13:02:22

ВВП
Участник
 
Группа: Members
Зарегистрирован: 13-03-2021
Сообщений: 332
UA: Firefox 103.0

Re: Custom Buttons

Stkvsky

Stkvsky пишет

Превосходно работает, благодарю

Что работает ? Фишка в чем ?

Отсутствует

 

№1658122-08-2022 19:14:57

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

Re: Custom Buttons

Dobrov
Я не понимаю чего ты говоришь.

скрытый текст
«Не работает на UserChromeFiles»
При чём тут UCF? Просьбу-то видел? Там что-то сказано про UCF?
Нет? Тогда может просьба оставлена в UCF-теме? Нет? А в какой тогда?


«А почему привязка только к панели закладкок?»
Где ты это увидел?


«Тут по идее нужен такой подход»
По какой идее? Идея в просьбе уже есть. Видимо речь про новую.


«Кликаем эту же ссылку в id="personal-bookmarks" ...»
Вот и повесь на него листенеры событий "click" и "command",
анализируй target, и, при необходимости, останавливай event.


«... или эту же ссылку на странице»
А это, в одном и том же предложении, смотрится странно,
поскольку совершенно разные вещи. Тут уже нужен модуль,
JSWindowActor и всё такое прочее межпроцессное взаимодействие.

ещё Вопрос: как получить первую (или последнюю) ссылку из Меню закладок?

Вариант

скрытый текст

Выделить код

Код:

var alert = msg => Services.prompt.alert(null, "Test", msg);

var guid = PlacesUtils.bookmarks.menuGuid;

var query = {}, options = {};
PlacesUtils.history.queryStringToQuery(`place:parent=${guid}&excludeQueries=1`, query, options);
var folder = PlacesUtils.history.executeQuery(query.value, options.value).root;

folder.containerOpen = true;
var max = folder.childCount - 1;
var type = Ci.nsINavHistoryResultNode.RESULT_TYPE_URI;

var first;
for(var ind = 0; ind <= max; ind++) {
	var node = folder.getChild(ind);
	if (node.type == type) {
		first = node.uri;
		break;
	}
}
alert("First:   " + (first || "Nothing"));


var last;
for(var ind = max; ind >= 0; ind--) {
	var node = folder.getChild(ind);
	if (node.type == type) {
		last = node.uri;
		break;
	}
}
alert("Last:   " + (last || "Nothing"));

Отсутствует

 

№1658223-08-2022 13:06:03

Dobrov
Участник
 
Группа: Members
Зарегистрирован: 04-10-2011
Сообщений: 394
UA: Firefox 97.0

Re: Custom Buttons

Dumby пишет

«Не работает на UserChromeFiles»
При чём тут UCF? Просьбу-то видел? Там что-то сказано про UCF?

Ну, раз расширение CustomButtons безнадёжно устарело, в этой теме уже много скрипов адаптировано под UCF. Поэтому я и надеялся…

Отсутствует

 

№1658323-08-2022 17:22:38

kokoss
Участник
 
Группа: Members
Зарегистрирован: 15-02-2018
Сообщений: 1728
UA: Firefox 104.0

Re: Custom Buttons

Dobrov пишет

Ну, раз расширение CustomButtons безнадёжно устарело

С чего вы взяли, Dumby его периодически обновляет!!!


Win7

Отсутствует

 

№1658423-08-2022 22:35:12

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

Re: Custom Buttons

Dobrov пишет

Ну, раз расширение CustomButtons безнадёжно устарело, в этой теме уже много скрипов адаптировано под UCF.

Это ты всё верно говоришь, однако,
встревать, а-ля «ты дал человеку огурец, а он не синий», неуместно.


Так же, как неуместно добавлять подобный скрипт в сандбокс.
И в окно по событию "DOMContentLoaded"
(поскольку gBrowser'а в окне ещё нет, да и вообще, куда здесь спешить).


Код для этого не предназначен, но я попробовал на Firefox 97 добавить его в custom_script_win.js
в «по событию "load"», и, на первый взгляд, вполне себе работает, только деструктора нет.

Отсутствует

 

№1658524-08-2022 18:16:47

Stkvsky
Участник
 
Группа: Members
Зарегистрирован: 26-06-2012
Сообщений: 1700
UA: Firefox 78.0

Re: Custom Buttons

Dumby пишет
Stkvsky пишет

так сделать, чтобы при открытии закладки, если она уже открыта во вкладке, автоматически переключать на эту вкладку, а не открывать новую

Хорошо, попробую

скрытый текст

Выделить код

Код:

(popup => {
	var puu = `/PlacesUIUtils.${
		parseInt(Services.appinfo.platformVersion) >= 104 ? "sys.mjs" : "jsm"
	}:`;
	var skipRe = /\nopenMultipleLinksInTabs@|\/historySidebar.xhtml:/;
	var treeRe = /@chrome:\/\/browser\/content\/places\/(places|bookmarksSidebar)\.xhtml:/;

	var timestamp = 0, activate = 0, placesNode;

	addEventListener("activate", () => activate = Cu.now());
	addEventListener("DOMMenuItemActive", e => placesNode = e.target._placesNode);

	var check = url => {
		for(var win of BrowserWindowTracker.orderedWindows)
			if (win.toolbar.visible) for(var tab of (win.gBrowser?.tabs || []))
				if (tab.linkedBrowser?.currentURI?.spec == url)
					return win.focus(), win.gBrowser.selectedTab = tab;
	}
	var sels = [
		"menuitem[_moz-menuactive]",
		"#panelMenu_bookmarksMenu > toolbarbutton:is(:active,:focus)",
		"toolbarbutton.bookmark-item:is(:hover,:-moz-focusring)"
	];
	addEventListener("TabBrowserInserted", e => {
		if (timestamp - (timestamp = Cu.now()) > -500) return;

		var stack = Components.stack.formattedStack;
		if (!stack.includes(puu) || skipRe.test(stack)) return;

		if (treeRe.test(stack)) {
			var win;
			if (RegExp.$1.startsWith("p") && timestamp - activate < 500)
				win = Services.wm.getMostRecentWindow("Places:Organizer");
			var view = (win || window).document.commandDispatcher.focusedElement?.view;
			if (view) var node = view.nodeForTreeIndex(view.selection.currentIndex);
		} else {
			for(var node of sels) if (node = document.querySelector(node)) break;
			node = node?._placesNode || popup._view?.selectedNode || placesNode;
		}
		if (node && PlacesUtils.nodeIsBookmark(node) && check(node.uri)) {
			var tab = e.target, br = tab.linkedBrowser;
			var {loadURI} = br;
			br.loadURI = () => {
				br.loadURI = loadURI;
				gBrowser.removeTab(tab);
			}
		}
	}, true, gBrowser.tabContainer);

})(document.getElementById("placesContext"));


Скажите пожалуйста, а возможно ли еще добавить эту функцию не только для закладок, но и вообще для всех ссылок, то есть например если открывается в новой вкладке ссылка, которая уже открыта в какой то вкладке, то автоматически переключать на эту вкладку, а не открывать новую?

Отсутствует

 

№1658624-08-2022 23:39:11

ВВП
Участник
 
Группа: Members
Зарегистрирован: 13-03-2021
Сообщений: 332
UA: Firefox 104.0

Re: Custom Buttons

Dumby

Stkvsky пишет

Хорошо, попробую
скрытый текст

А у меня аддон Long Left Click . Он этой фиче мешает, могу выключить закладки , тогда - да,но там общая настройка и на историю- в новой вкладке.
Курочить аддон что ли ? Нет в префке на историю в новой...
Можно в этот код : ссылки истории - в новой вкладке ...? В идеале , конечно, лучше эту фишку загнать в сам Long Left Click , из закладок и истории с тем же успехом(не открывать новую,если уже открыта)

Отредактировано ВВП (25-08-2022 11:35:29)

Отсутствует

 

№1658725-08-2022 14:50:24

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

Re: Custom Buttons

Stkvsky пишет

Скажите пожалуйста, а возможно ли еще добавить эту функцию не только для закладок, но и вообще для всех ссылок, то есть например если открывается в новой вкладке ссылка, которая уже открыта в какой то вкладке, то автоматически переключать на эту вкладку, а не открывать новую?

С моей стороны, скорее, нет.
Вот, попробовал добавить клики по обычной ссылке и открытие из контекстного меню.
Как грузятся ссылки target="_blank" вообще не смог понять.
Если для открытия ссылок во вкладках используется что-то посторонее, то лучше даже не смотреть.

скрытый текст

Выделить код

Код:

(popup => {
	var puu = `/PlacesUIUtils.${
		parseInt(Services.appinfo.platformVersion) >= 104 ? "sys.mjs" : "jsm"
	}:`;
	var skipRe = /\nopenMultipleLinksInTabs@|\/historySidebar.xhtml:/;
	var treeRe = /@chrome:\/\/browser\/content\/places\/(places|bookmarksSidebar)\.xhtml:/;

	var timestamp = 0, activate = 0, placesNode;

	addEventListener("activate", () => activate = Cu.now());
	addEventListener("DOMMenuItemActive", e => placesNode = e.target._placesNode);

	var check = (url, id) => {
		for(var win of BrowserWindowTracker.orderedWindows)
			if (win.toolbar.visible) for(var tab of (win.gBrowser?.tabs || []))
				if (tab.linkedBrowser?.currentURI?.spec == url && tab.userContextId == id)
					return win.focus(), win.gBrowser.selectedTab = tab;
	}
	var removeTab = tab => gBrowser.removeTab(tab);
	var sels = [
		"menuitem[_moz-menuactive]",
		"#panelMenu_bookmarksMenu > toolbarbutton:is(:active,:focus)",
		"toolbarbutton.bookmark-item:is(:hover,:-moz-focusring)"
	];
	var linkStrs = [
		"\ncontentAreaClick@resource:///actors/ClickHandlerParent.",
		"\nopenLinkInTab@chrome://browser/content/nsContextMenu.js:"
	];
	var hasLinkStr = function(str) {
		return this.includes(str);
	}
	addEventListener("TabBrowserInserted", e => {
		if (timestamp - (timestamp = Cu.now()) > -500) return;

		var stack = Components.stack.formattedStack, node;
		if (stack.includes(puu)) {
			if (skipRe.test(stack)) return;
			if (treeRe.test(stack)) {
				var win;
				if (RegExp.$1.startsWith("p") && timestamp - activate < 500)
					win = Services.wm.getMostRecentWindow("Places:Organizer");
				var view = (win || window).document.commandDispatcher.focusedElement?.view;
				if (view) node = view.nodeForTreeIndex(view.selection.currentIndex);
			} else {
				for(node of sels) if (node = document.querySelector(node)) break;
				node = node?._placesNode || popup._view?.selectedNode || placesNode;
			}
			node = node && PlacesUtils.nodeIsBookmark(node);
		}
		if (node || linkStrs.some(hasLinkStr, stack)) {
			var tab = e.target, br = tab.linkedBrowser;
			var {loadURI} = br;
			br.loadURI = (...args) => {
				br.loadURI = loadURI;
				check(args[0], tab.userContextId)
					? Promise.resolve(tab).then(removeTab) : loadURI(...args);
			}
		}
	}, true, gBrowser.tabContainer);

})(document.getElementById("placesContext"));

ВВП пишет

загнать в сам Long Left Click

Если бы дал bootstrap.js, то может и посмотрел бы, если время будет.

Отсутствует

 

№1658825-08-2022 15:26:48

ВВП
Участник
 
Группа: Members
Зарегистрирован: 13-03-2021
Сообщений: 332
UA: Firefox 104.0

Re: Custom Buttons

Dumby

Dumby пишет

Если бы дал bootstrap.js

Там background.js . Давать ? Его Vitaliy мастырил, я только время рихтовал в нем...

Отсутствует

 

№1658925-08-2022 15:55:56

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

Re: Custom Buttons

ВВП пишет

background.js

Я думал bootstrap. Тогда сам аддон, рихтованный xpi.

Отсутствует

 

№1659025-08-2022 16:15:21

ВВП
Участник
 
Группа: Members
Зарегистрирован: 13-03-2021
Сообщений: 332
UA: Firefox 104.0

Re: Custom Buttons

Dumby
Короче,если получиться, то хотя бы закладки, как в вашей фиче, а если по уму, то все, в смысле все(ссылки,история, закладки)
https://anonfiles.com/P2jfr653y4/long_l … liy.ru_xpi
Да,под этот аддон есть кнопка: URL кнопки (скопировать и в адрес, мало ли кто тормозит)

Выделить код

Код:

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%3E%u0412%u0441%u0435%20%u0441%u044B%u043B%u043A%u0438%20%u0432%20%u043D%u043E%u0432%u043E%u0439%20%u0432%u043A%u043B%u0430%u0434%u043A%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABEAAAARCAYAAAA7bUf6AAADV0lEQVR42n1SfUyNYRT/Pe91b7ndqFBUUkq2xpTdxFZpPmPWfP7ho5GkYZEh84dhtKKrUOljNFbRsJvSLuLahKZcmTZU0ih30tWHppu6930fz/uW5CPPdrZzznOe33N+5/wIRjjdlGKypzpzVuCM1RXlJXp0d20aqZb8nbIJOp9bfHVHzDKv6lfNeFxVARuVDSZ7eeKGVmvKT07eyorKRgRxcnLyKSwseBgevsxVjA3VT/C2vg7rI6Ol+y+fW7E7fm/31aKitSy89y8QzsHB4XFpSem8kNAQKfGsppG+rjNi84b5P2tpRno62RMfX8zz/GpCyC8QMaCU3mLuiuzsHMTGbhfT9EzmXcILwL64pTC29dPv5jaalZ7KnU5Na2b3M8XRDYHI5XJYLBYq+j4+3khKSkFwaDge3FkFf+Vd+C0pQMI5M/IyDtPOts9EkCpxUwmsMv9Bp4OZo+hsiYrGuYws2NMw4FslqIsOmhIlElaGideCSJ1ZCzMPqROlUplva2vb29HRESMmIiIikJamwdSp01j5HbzauwP2o0/AI3kjblU/p8XXiyCvrSWt5eWdbEXrGKKeMIBalUpFZDLZDLVajbIyaXtiw6RBo8W7A2swd3oQHLVawM91oOeuLgGLF3NHDQbLMUAxRMfR0Ynq9XoEBPhLcS8zU+RGOFRWYkxtHdBvBtWkgLq5UW7nLokFjY5+yOXlhQ2fyVOLlQ8aJePQYzajWRCoa2EBGXtbB+TkAi4TIdy/T+mkSQQeHrxw5IhMbjA8IY8eBQ+BUFo/G/B9Lvot75vwSSHHlPRMuCSfBLWzg3DtGrB8Oazsg56QENpXUyO+rWYEg35TLNPKthYTEl+/aXBuV8io+vgh4qu7Dqu4EkaVLFhAhY8fSU9sLM/rdDIZUDUOmEsGHgNL5plcc0vH86ZPuNTeZQr/rlII/on7OU/tBeDKDWD9GvBJSaCBgeAWLQLn7Q00Nb1gALMHQdYx0AlWSYS9DJFnklE5AweL0H/qARSXr7BW+oCoKLDdA3FxbMgaNBqNRl/AfRCEaaeH6fADC8TebfEFLvhatw/9xosgC+3tWE7B1tUprR5j7FHf16s822ctzwJihg12QB2UqYcbhf8eUbJkjhrGFy/hbrHgB6hFWiHKp+RKAAAAAElFTkSuQmCC%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B%28ps%20%3D%3E%20%7B%0A%20%20%20%20var%20s%20%3D%20%22extensions.long_left_click.timeContent%22%3B%0A%0A%20%20%20%20this._handleClick%20%3D%20%28%29%20%3D%3E%20ps.setIntPref%28s%2C%20ps.getIntPref%28s%2C%20350%29%20%3F%200%20%3A%20350%29%3B%0A%0A%20%20%20%20var%20toggleImage%20%3D%20val%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20this.icon.src%20%3D%20%28val%20%3D%20ps.getIntPref%28s%2C%20350%29%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%3F%20this.image%0A%20%20%20%20%20%20%20%20%20%20%20%20%3A%20%22data%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABEAAAARCAYAAAA7bUf6AAADPElEQVR42o1TbUhTYRR+3ntb2ebKj7QcrQ8zFe2H0Ae4haVpFpplUCQZiUVFFkZkWUFBkZZY4BdZZiFGaf0oKfwsokJlTVyC6bIvSZvaXDXXptm8b++dpmYSvXC4555z7nOe87znEvzjqIKjq0PVgRF3i3O0bT02NQv9nKyOTAxMkfhH3bpzu2zLpiDeahmATquB3GkQSsUcFN0owOEzObtZWeG/QAIbtJq6pctWzBBfdDoNeo29iFgb5UhSZsmHDg3mZGXFMrd8MhCpTCbT1tRUBwQHqxyBlhYjfdthJjGRPnSkVigpLeXitm17wPyYv0AIIbWUUlVhYSESExMdjW8Ua4ggdGPXzo0w9TEiQ1Z6Pu0Ul5l5qZvl/ZmZJzIRu8HX1wd5eVcQHh6GmvIoeNvLsSjiMlLTBWRfTKX9Nsvv7yqZrZ8IYhVHEsH27k0i+fm5gM0XMLwB3Epx//FMxG5dJ9YJzDhmn5jNHUWUy+VWi8WyWQwkJCTQc+fOEoViLu7py9D52YYDIXGOwtqn9bToXgV8PHhimupizjj6cR9wqUTMPfLy8oJUKl0TFhaKq1cLRqmVsF7aLiDWm+2MGyP11oanPVJsVw+zKakFjVtJuNFx3N1nUZ2uEUqlckQfSlqNg6jskiDIlUMoCzc1d6P4xQANCJ+PXkqIgUN91jyiGq9Jrd0+oOL5acMqf+2gWa/l5Eq7C9TuAk6v5qDkzDj28Acyej0p+tiEBuE5MvmQURBKLYsB5zbR//7NBN5qwJ7G2bjZ5gn0DyE7nsdB1yasutiDZ/3hFJ5sCkLrkMKp/9hYtiexTMfcdr1R4WTvEo7qFFyVfhbwZQjH9/NI86zC8vR3aJDsolg4jWAq6pBMxkCOpOj90jP8rO8NuPatB5Eekj6cbJ2B2xpgOrvIl3vYDkm1SL/eiRP6aMBHAokMTT/jSRAZZrCDPV2Z4gscPyrt/woyXUBmRRRSKkNQfRqIcBsRzghsKAM82KbQ+lev31xb4j+miQV2fAaPIXxgd2OAM0ypSS4DF963kuVn5+BVO4XNzMplrJUX6Mwnzc5NBZGMp+HMOGHhIm4jIUz3/ziJRiq77mFzYqimXzW5QyHvbotZAAAAAElFTkSuQmCC%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20this.tooltipText%20%3D%20%60%24%7Bval%20%3F%20%22%u041D%u0435%20%u0432%22%20%3A%20%22%u0412%22%7D%u0441%u0451%20%u0441%u0441%u044B%u043B%u043A%u0438%20%u0432%20%u043D%u043E%u0432%u043E%u0439%60%3B%20%0A%20%20%20%20%20%0A%20%20%20%20%20%20%0A%20%20%20%20%7D%0A%20%20%20%20toggleImage%28%29%3B%0A%20%20%20%20ps.addObserver%28s%2C%20toggleImage%2C%20false%29%3B%0A%20%20%20%20addDestructor%28%28%29%20%3D%3E%20ps.removeObserver%28s%2C%20toggleImage%29%29%3B%0A%7D%29%28Services.prefs%29%3B%0Athis.onclick%20%3D%20e%20%3D%3E%20e.button%20%21%3D%201%20%7C%7C%20gShowPopup%28this%29%3B%20%0Athis.oncontextmenu%20%3De%3D%3E%20%7B%20e.button%20%26%26%20%21e.ctrlKey%20%26%26%20e.preventDefault%28%29%20%7D%3B%0A%0A%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%0A%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%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Отредактировано ВВП (25-08-2022 20:46:07)

Отсутствует

 

№1659126-08-2022 01:37:13

Stkvsky
Участник
 
Группа: Members
Зарегистрирован: 26-06-2012
Сообщений: 1700
UA: Firefox 78.0

Re: Custom Buttons

Dumby пишет

С моей стороны, скорее, нет.
Вот, попробовал добавить клики по обычной ссылке и открытие из контекстного меню.
Как грузятся ссылки target="_blank" вообще не смог понять.
Если для открытия ссылок во вкладках используется что-то посторонее, то лучше даже не смотреть.

Понял, спасибо

Отсутствует

 

№1659226-08-2022 08:08:06

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

Re: Custom Buttons

ВВП пишет

хотя бы закладки, как в вашей фиче, а если по уму, то все, в смысле все(ссылки,история, закладки)

Фича не моя, и довольно сомнительная, при некоторых раскладах.
Ладно, вот модификация (104+), надеюсь ничего не сломал.

скрытый текст

Выделить код

Код:

data:application/x-zip-compressed;base64,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

Отсутствует

 

№1659326-08-2022 08:20:43

ВВП
Участник
 
Группа: Members
Зарегистрирован: 13-03-2021
Сообщений: 332
UA: Firefox 104.0

Re: Custom Buttons

Dumby
Dumby
Шедеврально ! И ссылки тоже. Не постоje речи...

Отсутствует

 

№1659426-08-2022 17:31:38

kazarin
Участник
 
Группа: Members
Зарегистрирован: 23-11-2016
Сообщений: 83
UA: unknown 0.0

Re: Custom Buttons

Помогите пожалуйста найти кнопку (или скрипт?) "Заменить эту закладку текущей", примерно как-то так называлось. Думал, что сохранил себе код, оказалось, нет. Запрос, видимо, тоже даю неправильно, форум не находит.

Отсутствует

 

№1659527-08-2022 19:11:51

ВВП
Участник
 
Группа: Members
Зарегистрирован: 13-03-2021
Сообщений: 332
UA: Firefox 104.0

Re: Custom Buttons

Dumby

Dumby пишет

Ладно, вот модификация (104+)

Точно...Вставил в 101 и привет...ссылки в новой накрылись. куды рыть ?

Отредактировано ВВП (29-08-2022 09:06:56)

Отсутствует

 

№1659613-09-2022 18:19:50

Deriax
Участник
 
Группа: Members
Зарегистрирован: 27-03-2021
Сообщений: 37
UA: Yandex 22

Re: Custom Buttons

Пожалуйста, подскажите код "реконнект прокси" или расширение. Без перезагрузки браузера. Браузер: pale moon v. 31.1.1.

Отредактировано Deriax (13-09-2022 19:02:13)

Отсутствует

 

№1659716-09-2022 08:17:08

momo2000
Участник
 
Группа: Members
Зарегистрирован: 03-09-2015
Сообщений: 228
UA: Firefox 104.0

Re: Custom Buttons

Dumby
А можно сделать горячую клавишу на функцию "Картинка в картинке"?
Официально клавиши нет, есть только закрыть Ctrl+W, а вот включить (отделить) нет, а  сам значок на видео появляется не сразу а через пару секунд, неудобно(

Отсутствует

 

№1659817-09-2022 08:13:24

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

Re: Custom Buttons

momo2000 пишет

Официально клавиши нет, есть только закрыть Ctrl+W, а вот включить (отделить) нет

Разве? Я вижу, что, для русской локали, работает переключатель Ctrl+Shift+*
Ctrl+Shift+] ещё есть, но я не знаю как такое с моей клавиатуры вызвать.

Отсутствует

 

№1659917-09-2022 16:22:18

momo2000
Участник
 
Группа: Members
Зарегистрирован: 03-09-2015
Сообщений: 228
UA: Firefox 104.0

Re: Custom Buttons

Dumby
:) Ctrl+Shift+* работает, а как тогда сменить, какой  код у функции?
addEventListener("keydown", e => e.ctrlKey && e.altKey && e.code=="KeyT" && e.preventDefault() + ????????());

Отсутствует

 

№1660017-09-2022 17:49:35

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

Re: Custom Buttons

momo2000
Ну, например,
var ???????? = PictureInPicture.onCommand.bind(null, {target: window});
Но переключать обратно с PiP-окна не будет, в нём же нет CB-кнопок.

Отсутствует

 

Board footer

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