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

Многие проблемы быстрее решаются поиском по форуму и чтением FAQ, чем созданием новой темы и томительным ожиданием ответа.

№1512629-01-2021 10:05:42

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

Re: Custom Buttons

solombala

"network.dns.echconfig.enabled" и "network.dns.use_https_rr_as_altsvc".  Так true или false ? И проверить как?

У меня 78, в ней ничего не изменилось, так что - не знаю.

Отсутствует

 

№1512730-01-2021 12:37:02

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 85.0

Re: Custom Buttons

Dumby
Добавка поискрвиков чнрез кнопку можете посмотреть? Если нет ,то как свои без кноки поставить?

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

Выделить код

Код:

//Services.search.addEngine("data:text/xml," + encodeURIComponent(`
(Services.search.addOpenSearchEngine || Services.search.addEngine)("data:text/xml," + encodeURIComponent(`
    <SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
        <ShortName>Seasonvar.ru</ShortName>
        <Description>Сериалы ТУТ! Сериалы онлайн смотреть бесплатно. Смотреть онлайн.</Description>
        <InputEncoding>UTF-8</InputEncoding>
        <Image width="16" height="16">data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADvklEQVRYhb1XTYgcRRR+JtNVr0ail0gUPLkehBwEVwgakMHNdr1XKwQ8RFQwF39uOXnxtkIwieAhetWLeoh7VVBE3IPgYY1gCIFA0OzOdL0aMYoH4y5xZsrDdjUzk91sz8BsQTFU09Pfz3uvXhXAjEax2FjoWP34MsCBWWHsDm7VKWGMwrh+7SiofScQnAlC+j9xeHvfwQvSbwnpO4FxIKTveKs+2TcXCsKF4EwMjINqOhODM1Fs9tRMwX9fgCPCGIX0oLvUjNV0ZhCciZ7wh5stwJkR6OTq1aR+hMBSs3LEW/3tzAh4q04OExj+DYwDYYxi8fWZgLcXG7kwbg6rT2S2y1H3hPRXMwEHABBnLgeH/cA46DozSLEvc+LrmQGn4UlfGY99cuD6cTg0U/B23nhOGO9OvtKB4PD7iT/qc/PsXu8I45vC2E3gaQ470HVmIKT/XgE4WAt4I89OF6S2PKnPA+ON3xbgyPg7geGhwPidMMauM4NU5+Oll1zwpLc6z4Cpp5zwlif9MwDAagsaweEXI6pz9YQn1R9Rm5Juh7ldBbp3JYf7axEorLoa2HwEALACcLCwahMA7gMA2DiBjw3bvRvoeAg84a3aIbg8D9ly2b9XW9DwrP8FAFi38Ig47EsqtaGNZjflVRISnq4FPj6uH4dDnvESAIA4c7FUFMO9Yj629QpjmAocAKCTq/eFtF0GODCJ9SkptxuQvjg1AWGMNxgeEMazeyneKfbBmbg+bQsubPakt7oLACCEa7XVjzlwswUPT6ee8LOCcAEAILCRWolXKq+2YWeitODw5ODz0PSkN9M6LDX/qhuC6gRUdsGC4dEp1OszwmatWrP5sxaBdPKx+K6w7gVnYnsxe3oKAihC+oO09ozFXvYPh6G92MiFUIQxetZvTwTeZj3nScci1y8MEVqrcuAeTlSll6uXOqReFMZYkFqZiMC2fRglz+bTs8KqT9PH99r3gzOxsOoUAIA4vO1J/zIZAdIfCmP0uV5Mzzp5dqzqfLspT1sv6UEnz44BAHjGS5701kQEpLTO8+jptTxY9HcsvSo/TN9b9U/6T5vUy9v3AfXKZC6w/rK81/306wl4sHTm4+FsHwF3JnaXTF8YY/t5mFttQWO5bGjCGAurrso8NKHsqjWd0Gc84x/pRBsc9kZuPCknqqOX7gVnup5xQxi3POGPJfFvSjEjeVVrXDsKqs16zlt1smOzN4TUO8J41hOe86wveNYXvFXnPalzBeF7aXqL54s8q1qwkLaFzV5Lbo6P/wEF7JeDr5SEggAAAABJRU5ErkJggg==</Image>
        <Url type="text/html" method="GET" template="http://seasonvar.ru/search">
            <Param name="q" value="{searchTerms}"/>
        </Url>
        <SearchForm>http://seasonvar.ru/</SearchForm>
    </SearchPlugin>

`), null, null);

Отсутствует

 

№1512830-01-2021 14:59:33

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

Re: Custom Buttons

solombala пишет

Добавка поискрвиков чнрез кнопку можете посмотреть?

Могу. Запустил код на 87.0a1 — поисковик добавился.
Перезапустил браузер — поисковик никуда не исчез.
Так что всё работает.


Или вот ещё, взял (от балды) поисковик, из встроеных в лису,
заменил https на http (просто чтобы проверить встанет или нет).
И, вполне себе установился.

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

Выделить код

Код:

Services.search.addPolicyEngine({

	iconURL: "data:image/x-icon;base64,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",
	chrome_settings_overrides: {
		search_provider: {
			name: "Ecosia",
			search_url: "http://www.ecosia.org/search",
			search_form: "http://www.ecosia.org/",
			search_url_get_params: "tt=mzl&q={searchTerms}",
			suggest_url: "https://ac.ecosia.org/autocomplete",
			suggest_url_get_params: "type=list&q={searchTerms}"
		}
	}
});

solombala пишет

Если нет ,то как свои без кноки поставить?

Что значит «без кноки»? Это установочный код, предназначен быть исполненным один раз.
Из кнопки, или любым другим доступным способом, например с Консоли браузера.


И что значит «свои поставить»? А как вообще люди у себя в лисе поисковики разводят?
Может кто-то редактирует search.json.mozlz4. На ESR кто-то может через тот же policies.json


И, как-бы, в браузере есть встроенная система добавления, ну и, наверняка, для этого
должны существовать WebExtensions, как чисто-поисковики как таковые, так и развесистые,
специально предназначеные для их добавления и какого-то управления.
Короче, странный какой-то вопрос.

Отсутствует

 

№1512930-01-2021 16:02:50

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 85.0

Re: Custom Buttons

Dumby
Я итак замучался этим 85 , эта дебильна панель закладок .еле уделал. Короче как самому добавлять поисковик?  Вот код в кнопку СВ или в скрипт можно

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

Выделить код

Код:

//Services.search.addEngine("data:text/xml," + encodeURIComponent(`
(Services.search.addOpenSearchEngine || Services.search.addEngine)("data:text/xml," + encodeURIComponent(`
    <SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
        <ShortName>HDRezka-ag</ShortName>
        
        <InputEncoding>UTF-8</InputEncoding>
        <Image width="16" height="16">data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAMCAYAAAADFL+5AAADxUlEQVR42sVUaUiUURR9M86oiUgLKIEWTomlZAaFWKLmkJBjpqI2uZCiiTu4ZwtjY5iiqDguKO6GBjZqof6wxEkTF1osUChntFQ0MwO1zHGbzpP56ssf4b8eXOZ+99333rnnnjscQsgemCQ0NPSUgYHBQktLi2Z6eroBsXbyZxnA7ri6up62tbX9PDAwsKenp0eBWBHsHGK37Ozsfq6srCyurq7y9PX1uXw+n4M97vLy8rpSqfyuUqneLS0tNSP2hXUvoUlny8rK2sLDw/fRwNraGnF0dHw4ODh4lZV3XCwWv2hsbNzPBBITE1/m5eVdCAwMvFlfX59MdrFGRkZISUmJApaAzzcMANu6urpHQUFBR2gAFRAnJ6d7Q0NDd1hn+V5eXn3Nzc1naApMPzk5uSs3N/dSVFRUanFxsYRJHBsbU+fn5/eDkY8CgWCvWq0WWFpa2piZmf2+rKqqSg3G7SkICuBkYWGhPDY2lgLQzMzMEFD6YH5+PgPfGzA9mImbm5usvb39BAMAD3eVlpaK/P39U6urq+/q6upuX56VlTWalpbmDneCVYBnU1NTvY+PjyH8Ldoaa2vrutHR0WsUgE1RUZE8Ojr66G5o1ILiIf8ZqHQPCAhIqa2tlero6Ggoo/CVwcHBFMB7toZQ8dOKioqz8NW0qLi4OIVMJju/3QI48piYGAFlQNsWAsEQIyOj7dObm5sEDzCXrcF0AaALAEQAcAMMpEN025s1NTWfQkJCvOG+ppXSio2Njfd5eno2QWtC5nx8fLyioKBAuBPA1uzsLMfBwaF1fHw8h0mGmaGq+3iI5vykk4OWdYE5EUR4A4+mMwxUVlaOhYWFXYSvYjFwMCkp6XlOTo4Fcyc01dLa2uq9swVbc3NzHHt7+4yJiQkJ6wLi7Ow80N3dbQd3hVIaERHxDBW5QQMUgFTLgAYCVCUkJIjhv9IePYXqpRhvd+YujCWxsLCIgyujAM5A3Y+A6BCTIBKJKk1NTa+Xl5drtCHLyMjITlBOczZhOlKpVCGRSDxSsLKzs2+zwfb19S2hfd8NDQ0PmJub67H3JicnCUb6SX9//2VmDIVQbWdmZibtFxkeHiZ+fn6PMU5XtIKhy0ooFL5ua2vTw58MWVxcJJgCZUNDgzNGNg3Aoq2srP6p3KmpKdLR0TEJ5grwmc/EOdpfL2wcMzEx+YF2qBcWFroR+8A6z6Oj5OHhcdzFxeWbXC7n9/b2DiOmgB1GlWJfX98NAFvGHxlnfX2dw+VyNTwejwMx07Z+Rf7bHbr4C8B/W78AXEWcHlto5ucAAAAASUVORK5CYII=</Image>
        <Url type="text/html" method="GET" template="https://hdrezka-ag.com/index.php?do=search">
            <Param name="subaction" value="search"/>
            <Param name="q" value="{searchTerms}"/>
        </Url>
        <SearchForm>https://hdrezka-ag.com</SearchForm>
    </SearchPlugin>

`), null, null);

И он работает , но в search-extensions как , если по старому в модуле рихтую SearchService.jsm и мои поисковики в search-extensions  становятся , код в кнопке падает...
Добавил бы в  search-extensions , но seasonvar через http  , где бы разрешить? Может код подправить  верхний?

Отредактировано solombala (30-01-2021 17:58:13)

Отсутствует

 

№1513030-01-2021 19:13:49

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

Re: Custom Buttons

solombala пишет

Добавил бы в  search-extensions , но seasonvar через http  , где бы разрешить?

%Папка_установки%\browser\omni.ja\chrome\browser\content\browser\schemas\chrome_settings_overrides.json
Поиск:

Выделить код

Код:

"pattern": "^(https://|http://(localhost|127

Во всех трёх найденых вхождениях добавляем вопросительный знак после https
Чтобы получилось так:

Выделить код

Код:

"pattern": "^(https?://|http://(localhost|127

Отредактировано Dumby (30-01-2021 19:15:57)

Отсутствует

 

№1513130-01-2021 19:55:53

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 85.0

Re: Custom Buttons

Dumby
Класс , все получилось...Благадао,брате! Хвала! ...В кнопке скриншот - иконку веб-сайта не того (не сохраняет), може мой косяк? Да черт сним, много чего не сохраняет(png и т.д)
Не помню, чья эта кнопка "скиншот" ? Есть продвинуты ,может кто рихтанет ?

Отредактировано solombala (31-01-2021 12:22:16)

Отсутствует

 

№1513230-01-2021 22:03:51

melkichelik
Участник
 
Группа: Members
Зарегистрирован: 25-01-2021
Сообщений: 30
UA: Chrome 88.0

Re: Custom Buttons

Добрый день, нужна кнопка которая бы копировала HTML содержимое текущей страницы в буфер обмена, при этом всё это должно быть с динамическим содержимым, то есть обычное "Исходный код страницы не подойдёт".
То есть не ctrl + u, а как-то через инспектора (F12)/ Выбрать  <html></html> и как-то это скопировать, но вроде очень сложная задача.

Отредактировано melkichelik (31-01-2021 11:20:49)

Отсутствует

 

№1513301-02-2021 09:28:36

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

Re: Custom Buttons

Не ставится CustomButtons - ошибка: Firefox заблокировал установку непроверенного расширения.
Ставил на Firefox 78.7 esr и 84.0.2, пробовал разные версии, например custom_buttons-0.0.7.0.0.17-fx-paxmod и bootstrap...
Добавлял config.js из разных инструкций, результат тот же - CustomButtons не ставится.

Выделить код

Код:

//
try {(nsvo => {
    var o = Cu.getGlobalForObject(nsvo).Object, {freeze} = o;
    o.freeze = obj => {
        if (Components.stack.caller.filename != "resource://gre/modules/AppConstants.jsm")
            return freeze(obj);
        obj.MOZ_REQUIRE_SIGNING = false;
        obj.MOZ_ALLOW_LEGACY_EXTENSIONS = true;
        return (o.freeze = freeze)(obj);
    }
    lockPref("extensions.legacy.enabled", true);
    lockPref("xpinstall.signatures.required", false);
    lockPref("extensions.langpacks.signatures.required", false);

    nsvo = Cu.import("resource://gre/modules/addons/XPIInstall.jsm", {});
    var shouldVerify = nsvo.shouldVerifySignedState;
    nsvo.shouldVerifySignedState = addon => !addon.id && shouldVerify(addon);

})(Cu.import("resource://gre/modules/WebRequestCommon.jsm", {}));}
catch(ex) {Cu.reportError(ex);}

//
try {({
    ids: [
        "custombuttons@xsms.org",
    ],
    init(xrt) {
        if (xrt.inSafeMode) return;
        Cu.import("resource://gre/modules/addons/XPIProvider.jsm", this);
        var load = async file => {
            var rootURI = this.XPIInternal.getURIForResourceInFile(file, "");
            Cu.import(rootURI.resolve("startup.jsm"), {}).start(rootURI);
        }
        var proto = this.XPIInternal.BootstrapScope.prototype;
        var func = proto._beforeCallBootstrapMethod;

        proto._beforeCallBootstrapMethod = () => {
            proto._beforeCallBootstrapMethod = func;
            for(var addon of this.XPIInternal.XPIStates.enabledAddons())
                this.ids.includes(addon.id) && !addon.loader && load(addon.file);
        }
    }
}).init(Cc["@mozilla.org/xre/app-info;1"].getService(Ci.nsIXULRuntime));}
catch(ex) {Cu.reportError(ex);}

Отредактировано Dobrov (01-02-2021 12:06:58)

Отсутствует

 

№1513401-02-2021 13:13:42

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

Re: Custom Buttons

Dobrov пишет

Ставил на Firefox Setup 78.7 esr, 84.0.2

Для этих версий антиподписячья (первая) часть приведённого кода старовата.
Не содержит правок для
Firefox 74+ Bug 1524327 - reconsider MOZ_ALLOW_LEGACY_EXTENSIONS behavior
Firefox 77+ Bug 1631933 - Remove or revisit support for data:-URLs in the webRequest API
Ладно, ещё раз

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

Выделить код

Код:

//
try {(nsvo => {
	var o = Cu.getGlobalForObject(nsvo).Object, {freeze} = o, NEW;
	o.freeze = obj => {
		if (Components.stack.caller.filename != "resource://gre/modules/AppConstants.jsm")
			return freeze(obj);
		obj.MOZ_REQUIRE_SIGNING = false;
		if ((NEW = "MOZ_ALLOW_ADDON_SIDELOAD" in obj))
			lockPref("extensions.experiments.enabled", true);
		else
			obj.MOZ_ALLOW_LEGACY_EXTENSIONS = true,
			lockPref("extensions.legacy.enabled", true);

		return (o.freeze = freeze)(obj);
	}
	lockPref("xpinstall.signatures.required", false);
	lockPref("extensions.langpacks.signatures.required", false);

	nsvo = Cu.import("resource://gre/modules/addons/XPIInstall.jsm", {});
	var shouldVerify = nsvo.shouldVerifySignedState;
	nsvo.shouldVerifySignedState = addon => !addon.id && shouldVerify(addon);

	if (NEW) nsvo.XPIDatabase.isDisabledLegacy = () => false;
})(
	"permitCPOWsInScope" in Cu
		? Cu.import("resource://gre/modules/WebRequestCommon.jsm", {}) : Cu
);}
catch(ex) {Cu.reportError(ex);}


Справедливости ради, следует отметить, что на 78 ESR paxmod можно
поставить и только на одних настройках.
Но запускатор (вторая часть кода) всё равно настоятельно рекомендуется.


melkichelik пишет

но вроде очень сложная задача

Зависит от задачи. Описание совсем непонятным не назовёшь, тем не менее, весьма скудное.
Вот набросал кой-что, а какая подходящьность — без понятия.

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

Выделить код

Код:

(this.mcopy || (this.mcopy = (() => {
	var copy = win => win.navigator.clipboard
		.writeText(new XMLSerializer().serializeToString(win.document));
	var func = (copy, id) => copy(
		Cc["@mozilla.org/appshell/window-mediator;1"]
			.getService(Ci.nsIWindowMediator)
			.getOuterWindowWithId(id)
	);
	var url = "data:charset=utf-8," + encodeURIComponent(`(${func})(${copy}, `);
	return () => {
		if (gBrowser.selectedBrowser.isRemoteBrowser) {
			var pmm, {osPid, outerWindowId} = Services.focus
				.focusedContentBrowsingContext.currentWindowGlobal;
			for(var ind = 1, num = Services.ppmm.childCount; ind < num; ind++) {
				var child = Services.ppmm.getChildAt(ind);
				if (child.osPid == osPid) {pmm = child; break;}
			}
			return pmm?.loadProcessScript(url + outerWindowId + ");", false);
		}
		var data = {};
		Services.focus.getFocusedElementForWindow(content, true, data);
		copy(data.value);
	}
})()))();

Отсутствует

 

№1513501-02-2021 16:20:40

melkichelik
Участник
 
Группа: Members
Зарегистрирован: 25-01-2021
Сообщений: 30
UA: Chrome 88.0

Re: Custom Buttons

Dumby
Спасибо за скрипт, как я понимаю это не для https://github.com/VitaliyVstyle/Vitali … rome_files, или я ошибаюсь? Просто до этого все кнопки пытался делать через него обновляя custom_script.js. Буду разбираться.

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

Выделить код

Код:

var html = document.documentElement.innerHTML;
var ndoc = window.open("","");
ndoc.document.write('<xmp>', html, '</xmp>');

И кнопка должна быть типо.

try {
    CustomizableUI.createWidget({
        id: "ucf-view-source",
        label: "Код",
        tooltiptext: "Исходный код страницы",
        localized: false,
        defaultArea: CustomizableUI.AREA_NAVBAR,
        onCreated(btn) {
            btn.setAttribute("image", "data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16'><g><rect x='0' y='0' width='16' height='16' rx='1' ry='1' style='fill:rgb(0, 120, 173);'/><path style='fill:white;' d='M 9.32,1 5.82,14.8 6.68,15 10.2,1.22 Z M 4.72,3.62 1,8 4.72,12.4 6.25,11.7 3.04,8 6.25,4.25 Z M 11.3,3.62 9.75,4.25 12.9,8 9.75,11.7 11.3,12.4 15,8 Z'/></g></svg>");
        },
        onCommand(e) {
            var html = document.documentElement.innerHTML;
            var win = e.view;
            win.document.write('<xmp>', html, '</xmp>');
        }
    });
} catch(e) {}

Но видимо всё сложнее...

Отредактировано melkichelik (01-02-2021 16:30:10)

Отсутствует

 

№1513601-02-2021 20:21:49

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

Re: Custom Buttons

melkichelik пишет

как я понимаю это не для

Ага, зашёл в тему конкретного расширения,
а о том, что код нужен для ucf ни словом не обмолвился.
Тут и понимать нечего.


melkichelik пишет

И кнопка должна быть типо.

Ну, можно попробовать какой-нибудь микс составить, такого же статуса подходящности.

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

Выделить код

Код:

try {CustomizableUI.createWidget({
	id: "ucf-view-source",
	label: "Код",
	tooltiptext: "Serialized document",
	localized: false,
	defaultArea: CustomizableUI.AREA_NAVBAR,
	onCreated(btn) {
		btn.creator = this;
		btn.setAttribute("oncommand", "creator.start(event)");
		btn.setAttribute("image", "data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16'><g><rect x='0' y='0' width='16' height='16' rx='1' ry='1' style='fill:rgb(0, 120, 173);'/><path style='fill:white;' d='M 9.32,1 5.82,14.8 6.68,15 10.2,1.22 Z M 4.72,3.62 1,8 4.72,12.4 6.25,11.7 3.04,8 6.25,4.25 Z M 11.3,3.62 9.75,4.25 12.9,8 9.75,11.7 11.3,12.4 15,8 Z'/></g></svg>");
	},
	observe(s, topic) {
		Services.ppmm.removeMessageListener(this.msgName, this);
		Services.obs.removeObserver(this, topic);
	},
	addTab(win, src, type) {
		var url = `view-source:data:${type};charset=utf-8,${encodeURIComponent(src)}`;
		var gb = win.gBrowser, pos = gb.selectedTab._tPos;
		gb.moveTabTo(gb.selectedTab = gb.addTrustedTab(url), pos + 1);
	},
	receiveMessage(msg) {
		this.addTab(Services.wm.getMostRecentWindow("navigator:browser"), ...msg.data);
	},
	start(e) {
		Services.ppmm.addMessageListener(this.msgName = "UCF:VS:SerializedDocArrived", this);
		Services.obs.addObserver(this, "quit-application-granted", false);

		var func = (serialize, id) => {
			var win = Cc["@mozilla.org/appshell/window-mediator;1"]
				.getService(Ci.nsIWindowMediator).getOuterWindowWithId(id);
			win && sendAsyncMessage("NAME", serialize(win));
		}
		var serialize = (win, doc = win.document) => [
			new win.XMLSerializer().serializeToString(doc),
			win.HTMLHtmlElement.isInstance(doc.documentElement)
				? "text/html" : doc.contentType
		];
		var url = "data:charset=utf-8," + encodeURIComponent(
			`(${func})(${serialize}, `.replace("NAME", this.msgName)
		);
		(this.start = e => {
			var win = e.view, br = win.gBrowser.selectedBrowser;
			if (br.isRemoteBrowser) {
				var pmm, {osPid, outerWindowId} = Services.focus
					.focusedContentBrowsingContext.currentWindowGlobal;
				for(var ind = 1, num = Services.ppmm.childCount; ind < num; ind++) {
					var child = Services.ppmm.getChildAt(ind);
					if (child.osPid == osPid) {pmm = child; break;}
				}
				return pmm?.loadProcessScript(url + outerWindowId + ");", false);
			}
			var data = {};
			Services.focus.getFocusedElementForWindow(br.contentWindow, true, data);
			this.addTab(win, ...serialize(data.value));
		})(e);
	}
});} catch(ex) {Cu.reportError(ex);}

Отсутствует

 

№1513701-02-2021 20:56:54

melkichelik
Участник
 
Группа: Members
Зарегистрирован: 25-01-2021
Сообщений: 30
UA: Chrome 88.0

Re: Custom Buttons

Dumby пишет

Ага, зашёл в тему конкретного расширения,
а о том, что код нужен для ucf ни словом не обмолвился.

Не знал, открыл 1-е сообщение в теме, там все ссылки битые, думал, что тема общая для создания "Custom Buttons", буду знать.
Вот это получается самая актуальная? https://forum.mozilla-russia.org/viewtopic.php?pid=787753#p787753
Как я понимаю официально в магазине её нету?
Спасибо за код, буду смотреть.

Отредактировано melkichelik (01-02-2021 21:03:49)

Отсутствует

 

№1513802-02-2021 06:38:41

vending_machine
Участник
 
Группа: Members
Зарегистрирован: 10-01-2020
Сообщений: 522
UA: Firefox 85.0

Re: Custom Buttons

Можно ли создать кнопку, эмулирующую нажатие мультимедийной клавиши "Стоп/Воспроизведение", которой нас одарил новый[firefox]?

Отсутствует

 

№1513904-02-2021 16:12:13

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 85.0

Re: Custom Buttons

Dumby
Как в этот код

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

Выделить код

Код:

/*Initialization Code*/

this.onclick = this.oncontextmenu = function(event) {
    
      
      if (event.button == 0) { 
       
        var file = Services.dirsvc.get('ProfD', Ci.nsIFile);
         file.initWithPath(file.path + "\\memred\\start.vbs"); 
         file.launch(); 
         
         
     }
     if(event.button == 2 && !event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey){
CustomizableUI.setToolbarVisibility("PersonalToolbar", document.querySelector("#PersonalToolbar").collapsed);
}                  
};

this.oncontextmenu =e=> { e.button && !e.ctrlKey && e.preventDefault() };
this.tooltipText = "Л: Очистка-Сброс\nП: Панель Закладок "; 


(ps => {
    var s = "media.autoplay.default";

    this._handleClick = () => ps.setIntPref(s, ps.getIntPref(s, 0) ? 5 : 5);
 

})(Services.prefs);

еще вставить это

скрытый текст
(ps => {
    var s = "extensions.long_left_click.timeContent";

    this._handleClick = () => ps.setIntPref(s, ps.getIntPref(s, 350) ? 0 : 350);


Или это
скрытый текст
cbu.setPrefs("extensions.long_left_click.timeContent", val ? 350 : 0);

Ладно,вроде справился. А паузу сюда можно поставить? "setTimeout(()=> alertsService.closeAlert(), 2000);"

Отредактировано solombala (04-02-2021 20:08:59)

Отсутствует

 

№1514005-02-2021 22:02:05

egorsemenov06
Участник
 
Группа: Members
Зарегистрирован: 12-06-2018
Сообщений: 378
UA: Firefox 85.0

Re: Custom Buttons

del

Отредактировано egorsemenov06 (06-02-2021 20:53:31)

Отсутствует

 

№1514106-02-2021 05:56:47

vending_machine
Участник
 
Группа: Members
Зарегистрирован: 10-01-2020
Сообщений: 522
UA: Firefox 85.0

Re: Custom Buttons

egorsemenov06
ну уж скриншотеры-то в 21году 21 века уж можно как-нибудь найти программки-то
Image Uploader, KiberInfinity's Screen Shooter


а вот эмулировать нажатие мультимедийной клавиши "Стоп/Воспроизведение"-  это находиться в самых передовых областях технологий[mozilla]:o[android]

Отсутствует

 

№1514206-02-2021 10:07:25

egorsemenov06
Участник
 
Группа: Members
Зарегистрирован: 12-06-2018
Сообщений: 378
UA: Firefox 85.0

Re: Custom Buttons

vending_machine пишет

egorsemenov06
ну уж скриншотеры-то в 21году 21 века уж можно как-нибудь найти программки-то
Image Uploader, KiberInfinity's Screen Shooter


а вот эмулировать нажатие мультимедийной клавиши "Стоп/Воспроизведение"-  это находиться в самых передовых областях технологий[mozilla]:o[android]

Кому что,на вкус и цвет товарищей нет .Кнопка то очень практичная а расширение ставить или целую программу зачем ?только систему засирать

Отсутствует

 

№1514306-02-2021 10:57:10

vending_machine
Участник
 
Группа: Members
Зарегистрирован: 10-01-2020
Сообщений: 522
UA: Firefox 85.0

Re: Custom Buttons

egorsemenov06 пишет

Кому что,на вкус и цвет товарищей нет .Кнопка то очень практичная а расширение ставить или целую программу зачем ?только систему засирать

Можно в портабельном виде поставить.[windows]:iron:

Отсутствует

 

№1514406-02-2021 11:09:26

sonyas75
Участник
 
Группа: Members
Откуда: Ставрополь
Зарегистрирован: 22-03-2011
Сообщений: 557
UA: Firefox 78.0

Re: Custom Buttons

vending_machine пишет

эмулировать нажатие мультимедийной клавиши "Стоп/Воспроизведение"-  это находиться в самых передовых областях технологий

a какой клавиши? я не знаю что там придумали, я на ЕСР сижу, меня интересует что они намудрили и что надо будет править в следующем ЕСР. а то у меня куча клавиатур на разных устройствах, соответственно разные клавиши управления мультимедиа и разные коды нажатия этих клавиш. можно ли в КастомБаттонс эмулировать нажатие Fn+Ё или Fn+F5/F6?

Отредактировано sonyas75 (06-02-2021 11:19:24)

Отсутствует

 

№1514506-02-2021 20:30:48

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 85.0

Re: Custom Buttons

Dumby
Не посмотришь фичу, никак не у кого....
https://forum.mozilla-russia.org/viewto … 66#p787966

Отсутствует

 

№1514607-02-2021 08:40:23

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

Re: Custom Buttons

vending_machine пишет

Можно ли создать кнопку, эмулирующую нажатие мультимедийной клавиши "Стоп/Воспроизведение"

Вот у меня на клавиатуре нет таких аппаратных клавиш,
и гарнитуры нет, и вообще Windows 7
Ну, попробовал что-то сделать в виртуалке, но без толку.
SendInput через ctypes — не сработало, есть ещё какой-то
MediaControlService.generateMediaControlKey() — ноль реакции (настройку включал).


Тут под новый год завёл себе AHK, просто чтобы парочку клавиш переопределить,
так вот, подумал, может хотя-бы его подрядить — и снова неудача,
то есть, я даже не смог увидеть как бы оно могло бы работать вообще, какая уж там эмуляция.


solombala пишет

Не посмотришь фичу, никак не у кого....
https://forum.mozilla-russia.org/viewto … 66#p787966

Смотреть надо тебе, на свой же скриншот, ноды-то красные.
Две последние (popupgroup и tooltip) чуть с синевой — это вообще NAC.
А остальные, чисто красные, — это Shadow DOM.
Их добавляет лисья машинерия кустомэлементщины,
это так в любом <dialog>'е будет, и они этому диалогу ни разу не потомки.


Чем @-moz-document не угодил?
Вот, селектор, наверно, чемодан излишеств, так, просто для примера

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

Выделить код

Код:

@-moz-document url-prefix(chrome://custombuttons/content/editor.xul) {
	link[href="chrome://global/skin/dialog.css"] + vbox + hbox.dialog-button-box {
		background-color: red !important;
	}
}

Отсутствует

 

№1514707-02-2021 13:36:48

solombala
Забанен
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 652
UA: Firefox 85.0

Re: Custom Buttons

Dumby
А так тоже пошло.Кстати, а в сам XPI CВ нельзя вставить?

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

Выделить код

Код:

@-moz-document url-prefix(chrome://custombuttons/content/editor.xul) {
 .dialog-button-box {
      margin-bottom: 4px !important;
      padding: 3px!important;
      margin-top: 22px !important;
	
	}
}

Отсутствует

 

№1514807-02-2021 20:15:41

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

Re: Custom Buttons

solombala пишет

Кстати, а в сам XPI CВ нельзя вставить?

Если имеется в виду добавить в какой-нибудь .css-файл,
то сильно сомневаюсь, там всё круго́м AUTHOR_SHEET.
А если в .js-файл, то и сам знаешь что можно.
Примеров загрузки стилей на форуме несметное множество.


Если не как загрузку, то можно в editor2.js
что-нибудь добавить в Editor.prototype.init()
Например, получаем ссылку на .dialog-button-box
и устанавливаем ему атрибут "style", или сеттер ref.style.cssText


Или, там же, можно воткнуть правило прямо в ShadowRoot,
типа на борту созданного элемента <style>, возможно <link>,
или, вообще даже так

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

Выделить код

Код:

...
		var [ss] = document.documentElement.shadowRoot.styleSheets;
		ss.insertRule(
			`.dialog-button-box {
				margin-bottom: 4px !important;
				padding: 3px !important;
				margin-top: 22px !important;
			}`,
			ss.cssRules.length
		);


Но это тоже будет "author", в смысле чувствительно к внешним стилям.

Отсутствует

 

№1514907-02-2021 21:40:37

SeVlad
Участник
 
Группа: Members
Зарегистрирован: 03-12-2008
Сообщений: 112
UA: Chrome 83.0

Re: Custom Buttons

Первый раз в жизни установил custom_buttons-0.0.7.0.0.17-fx-paxmod.xpi из №15124. До сего дня не имел с ним дел.
Попробовал несколько готовых кнопок из Готовые кнопки для Custom Buttons, но ни одна не заработала.
Где-то можно взять актуальные коды (для 85)? Или как самому писать - мануалы есть?

Как например сделать кнопку прокрутки вверх?

Отсутствует

 

№1515007-02-2021 23:04:09

vending_machine
Участник
 
Группа: Members
Зарегистрирован: 10-01-2020
Сообщений: 522
UA: Firefox 85.0

Re: Custom Buttons

SeVlad пишет

Как например сделать кнопку прокрутки вверх?

add_toolbar_buttons.2021.1.25.xpi
3ffa2b76184b5e9d9485b0677fee8201.png

но ни одна не заработала

Могу предложить пургуру
[CB]Undo Close Tabs | Форум Mozilla Россия
[CB]Двойным левым кликом добавить закладку в папку закладок. | Форум Mozilla Россия

Отредактировано vending_machine (07-02-2021 23:21:49)

Отсутствует

 

Board footer

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