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

Общайтесь со знакомыми и друзьями в нашем сообществе в Facebook.

№892604-08-2020 19:35:39

Duche
Участник
 
Группа: Members
Зарегистрирован: 07-02-2016
Сообщений: 198
UA: unknown 0.0

Re: Настройка внешнего вида Firefox в userChrome.css

kokoss пишет

Значит что то не так сделали

Полтергейст какой то.

Путь.C:\Firefox_Good_NB\Profile\chrome\Icons

Код. #library-button { 
    list-style-image: url("./icons/book1.png") !important;
}

Отсутствует

 

№892704-08-2020 20:20:57

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

Re: Настройка внешнего вида Firefox в userChrome.css

Duche пишет

Полтергейст какой то.

Проверьте только с этим кодом! Если и тогда не будет работать, тогда не знаю...


Add, если используйте "Firefox Good", то попробуйте добавить этот код в файл "FG_userChrome.css".

Отредактировано kokoss (04-08-2020 20:31:55)


Win7

Отсутствует

 

№892804-08-2020 20:34:26

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 80.0

Re: Настройка внешнего вида Firefox в userChrome.css

_zt
custom_script.js

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

Выделить код

Код:

(async () => {
    var id = "ucf-toggle-tooltip-url",
    label = "Тултипы с URL",
    tooltiptext = "Переключить тултипы",
    img = "data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' style='fill:context-fill rgb(142, 142, 152);'><path d='M9.618 6.721a2.483 2.483 0 0 0-.39-.317l-.735.734A1.486 1.486 0 0 1 8.91 9.55l-2.12 2.122a1.486 1.486 0 0 1-2.122 0 1.486 1.486 0 0 1 0-2.121l.605-.605a3.53 3.53 0 0 1-.206-1.209L3.961 8.843a2.506 2.506 0 0 0 0 3.535 2.506 2.506 0 0 0 3.535 0l2.122-2.121a2.506 2.506 0 0 0 0-3.536z'/><path d='M6.79 9.55c.12.121.25.226.389.317l.734-.734a1.486 1.486 0 0 1-.417-2.411L9.618 4.6a1.486 1.486 0 0 1 2.121 0 1.486 1.486 0 0 1 0 2.121l-.605.605c.137.391.211.798.206 1.209l1.106-1.107a2.506 2.506 0 0 0 0-3.535 2.506 2.506 0 0 0-3.535 0L6.789 6.014a2.506 2.506 0 0 0 0 3.536z'/><circle style='fill:none;stroke:context-fill rgb(142, 142, 152);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round' cx='8' cy='8' r='7.4'/></svg>",
    imgcolordisable = "color-mix(in srgb, currentColor 20%, #e31b5d)";

    var branch = "extensions.ucf.", pref = "tooltip_url_enable";
    var tpurl = {
        initialised: false,
        tooltip_url_enable: true,
        get ext_branch() {
            delete this.ext_branch;
            return this.ext_branch = Services.prefs.getBranch(branch);
        },
        init() {
            if (this.initialised) return;
            Services.prefs.getDefaultBranch(branch).setBoolPref(pref, true);
            Services.prefs.addObserver(`${branch}${pref}`, this);
            if (this.tooltip_url_enable = this.ext_branch.getBoolPref(pref))
                this.registerActor();
            this.initialised = true;
        },
        observe(subject, topic, data) {
            var fill = "";
            if ((this.tooltip_url_enable = this.ext_branch.getBoolPref(pref)) === true)
                this.registerActor();
            else {
                fill = imgcolordisable;
                this.unregisterActor();
            }
            this.callWithEachWindow(id, {fill: fill});
        },
        callWithEachWindow(buttonID, atr) {
            var getW = CustomizableUI.getWidget(buttonID);
            if (getW.instances.length)
                for (let {node} of getW.instances) {
                    if (!node) continue;
                    for (let a in atr)
                        node.style.setProperty(a, atr[a]);
                }
            else
                for (let win of CustomizableUI.windows) {
                    let node = getW.forWindow(win).node;
                    if (!node) continue;
                    for (let a in atr)
                        node.style.setProperty(a, atr[a]);
                }
        },
        registerActor() {
            ChromeUtils.registerWindowActor("UcfTooltipUrl", {
                child: {
                    moduleURI: "chrome://user_chrome_files/content/custom_scripts/UcfTooltipUrlChild.jsm",
                    events: {
                        mouseover: { capture: true },
                    },
                },
                allFrames: true,
                matches: ["<all_urls>"],
                messageManagerGroups: ["browsers"],
            });
        },
        unregisterActor() {
            ChromeUtils.unregisterWindowActor("UcfTooltipUrl");
        },
    };
    CustomizableUI.createWidget({
        id: id,
        label: label,
        tooltiptext: tooltiptext,
        localized: false,
        defaultArea: CustomizableUI.AREA_NAVBAR,
        onCreated(btn) {
            tpurl.init();
            btn.style.setProperty("list-style-image", `url("${img}")`, "important");
            if (!tpurl.tooltip_url_enable)
                btn.style.setProperty("fill", imgcolordisable);
        },
        onCommand(e) {
            tpurl.ext_branch.setBoolPref(pref, !tpurl.ext_branch.getBoolPref(pref));
        },
    });
})();


UcfTooltipUrlChild.jsm
скрытый текст

Выделить код

Код:

var EXPORTED_SYMBOLS = ["UcfTooltipUrlChild"];
ChromeUtils.defineModuleGetter(this, "Services", "resource://gre/modules/Services.jsm");
var timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
class UcfTooltipUrlChild extends JSWindowActorChild {
    handleEvent(e) {
        timer.cancel();
        timer.initWithCallback(() => {
            var elm = e.isTrusted && e.composedTarget, el, titl;
            if (!elm) return;
            do {
                if (!elm.matches) continue;
                if (elm.matches(":any-link")) {
                    if (elm.matches("[href='#'], [href^='javascript']"))
                        return;
                    el = elm;
                    if (elm.matches("[title]"))
                        titl = elm;
                    else
                        while (elm = elm.flattenedTreeParentNode) {
                            if (!elm.matches) continue;
                            if (elm.matches("[title]")) {
                                titl = elm;
                                break;
                            }
                        }
                    break;
                }
                if (elm.matches("[title]")) {
                    titl = elm;
                    while (elm = elm.flattenedTreeParentNode) {
                        if (!elm.matches) continue;
                        if (elm.matches(":any-link")) {
                            if (elm.matches("[href='#'], [href^='javascript']"))
                                return;
                            el = elm;
                            break;
                        }
                    }
                    break;
                }
            } while (elm = elm.flattenedTreeParentNode);
            if (!el) return;
            var href = el.href;
            if (titl) el = titl;
            titl = (el.title || "");
            var title = titl.trim(), pre = "", path = "";
            try {
                href = Services.io.newURI(href);
                pre = href.displayPrePath;
                path = `\n${href.pathQueryRef}`;
                if (path === "\n/") path = "";
                href = `${pre}${path}`;
            } catch (e) {}
            try {
                href = decodeURIComponent(href);
            } catch (e) {}
            el.title = title = `${href}${title === "" ? "" : `\nTitle: ${title}`}`;
            this.contentWindow.addEventListener("mouseout", () => {
                try {
                    if (!el || title !== el.title) return;
                    if (titl !== "")
                        el.title = titl;
                    else
                        el.removeAttribute("title");
                } catch (e) {}
            }, { once: true });
        }, 400, Ci.nsITimer.TYPE_ONE_SHOT);
    }
    didDestroy() {
        timer.cancel();
    }
}


по идее должен работать с пуникодом, в shadow dom, с динамически подгружаемым контентом, и т.д.

Отредактировано Vitaliy V. (16-10-2021 13:47:27)

Отсутствует

 

№892904-08-2020 21:39:50

Duche
Участник
 
Группа: Members
Зарегистрирован: 07-02-2016
Сообщений: 198
UA: unknown 0.0

Re: Настройка внешнего вида Firefox в userChrome.css

kokoss пишет

этот код в файл "FG_userChrome.css".

Он там и есть.

Отсутствует

 

№893004-08-2020 22:06:46

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

Re: Настройка внешнего вида Firefox в userChrome.css

Duche
Ну тогда не знаю, у меня работает:

скрин
4ad9797bc5f4.png


Win7

Отсутствует

 

№893104-08-2020 22:23:41

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

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет

Вот такое придумалось

скрытый текст
О, я тоже пытался придумать, и показалось приемлимым
использовать переопределение. Но не знаю, собственно,
что написать в контентской части, так, от балды разместил кой-что.


Вобщем, никаких эвент и мессадж листенеров,
вместо этого — врезка в TooltipTextProvider.prototype.
Ну, я просто на интерес показать, не как продукт, а как концепцию.

Выделить код

Код:

try {CustomizableUI.createWidget(({
	label: "Href in tooltip",
	icons: {
		true: "data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQ==",
		false: "data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AMgA/wDIAP8AyAD/AACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQ=="
	},
	id: "ucf-HrefInTooltip",
	pref: "ucf.HrefInTooltip.enabled",
	localized: false,
	get state() {
		return Services.prefs.getBoolPref(this.pref, false);
	},
	setIcon(btn, state = this.state) {
		btn.setAttribute("image", this.icons[state]);
	},
	onCreated(btn) {
		btn.owner = this;
		this.setIcon(btn);
		btn.tooltipText = this.label;
		btn.setAttribute("oncommand", "owner.toggle()");
	},
	toggle() {
		Services.prefs.setBoolPref(this.pref, !this.state);
	},
	observe(s, topic) {
		if (topic.startsWith("q")) return this.destroy();
		var {state} = this;
		for(var {node} of CustomizableUI.getWidget(this.id).instances)
			this.setIcon(node, state);
		state ? this.initTooltip() : this.destroyTooltip();
	},
	init() {
		Services.prefs.addObserver(this.pref, this);
		Services.obs.addObserver(this, "quit-application-granted", false);
		this.state && this.initTooltip();
		delete this.init; return this;
	},
	destroy() {
		Services.prefs.removeObserver(this.pref, this);
		Services.obs.removeObserver(this, "quit-application-granted");
	},
	initTooltip() {
		var url = this.initURL = this.createURL("psInit");
		(this.initTooltip = () => Services.ppmm.loadProcessScript(url, true))();
	},
	destroyTooltip() {
		var url = this.createURL("psDestroy");
		(this.destroyTooltip = () => {
			Services.ppmm.removeDelayedProcessScript(this.initURL);
			Services.ppmm.loadProcessScript(url, false);
		})();
		delete this.createURL;
	},
	createURL: function createURL(meth) {
		var subst = this.id + "-" + meth;
		(createURL.rph || (createURL.rph = Services.io.getProtocolHandler("resource")
				.QueryInterface(Ci.nsIResProtocolHandler)
		)).setSubstitution(subst, Services.io.newURI("data:text/javascript;charset=utf-8," + encodeURIComponent(
			`(${this[meth]})(ChromeUtils.import("resource://gre/modules/TooltipTextProvider.jsm").TooltipTextProvider.prototype)`
		)));
		delete this[meth]; return "resource://" + subst;
	},
	psInit: proto => {
		if (proto.getTextPlus) return proto.getNodeText = proto.getTextPlus.newGetNodeText;

		//================[ start content ]================

		proto.getTextPlus = node => {
			var href = getHref(node);
			if (!href || href == "#" || skipRe.test(href)) return;
			if (href.startsWith("data:")) return crop(href, 64);
			return crop(decode(href));
		}
		var skipRe = /^(?:javascript|addons):/;

		var getHref = node => {do {
			if (HTMLAnchorElement.isInstance(node) && node.href) return node.href;
		} while (node = node.flattenedTreeParentNode)}

		var crop = (url, max = 128) => url.length <= max
			? url : url.slice(0, --max) + "\u2026"; // ellipsis

		var decode = url => {
			var ios = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService);
			var ldu = Cu.import("resource:///modules/UrlbarInput.jsm", {}).losslessDecodeURI;
			return (decode = url => {try {return ldu(ios.newURI(url));} catch {return url;}})(url);
		}

		//================[ end content ]==================

		var func = proto.getTextPlus.getNodeText = proto.getNodeText;
		proto.getTextPlus.newGetNodeText = proto.getNodeText = function(node, text) {
			var res = func.apply(this, arguments);
			if (!res && !(node?.localName != "browser" && node.ownerGlobal && node.ownerDocument))
				return false;
			var txt = this.getTextPlus(node);
			return txt ? text.value = res ? txt + "\n" + text.value : txt : res;
		}
	},
	psDestroy: proto => {
		proto.getNodeText = proto.getTextPlus.getNodeText;
	}
}).init())} catch(ex) {Cu.reportError(ex);}

Отредактировано Dumby (04-08-2020 22:28:31)

Отсутствует

 

№893204-08-2020 23:35:09

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3036
UA: Firefox 79.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет

Вот такое придумалось, но надо тестить
custom_script.js

Прикольно, спасибо. А как бы тогда убрать тултип в строке статуса? Чтоб небыло лишнего мелькания и дублирования.



_zt
Хотел ответить, но после скрипта от Vitaliy V. это потеряло смысл. Тем более что вы скатились к откровенным глупостям.

Отредактировано voqabuhe (04-08-2020 23:39:47)

Отсутствует

 

№893304-08-2020 23:55:35

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

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V.
Dumby
Спасибо за скрипт !!!


Win7

Отсутствует

 

№893405-08-2020 00:00:10

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3036
UA: Firefox 79.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V.
Заметил, что скрипт не срабатывает, если вкладку выгрузить, а потом снова загрузить.

Добавлено 05-08-2020 00:19:27
Dumby
У меня почему-то твой скрипт не работает [firefox] 79.0. Засунул его в custom_script.js, правильно, или куда его?

Отредактировано voqabuhe (05-08-2020 00:19:27)

Отсутствует

 

№893505-08-2020 00:43:35

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

Re: Настройка внешнего вида Firefox в userChrome.css

voqabuhe пишет

У меня почему-то твой скрипт не работает [firefox] 79.0. Засунул его в custom_script.js, правильно, или куда его?

Да, засунул правильно.
И да, вот прям после установки не работает.
Нужно либо создать true настройку, либо вытащить и нажать кнопку.

Отсутствует

 

№893605-08-2020 01:21:51

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

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V.
Вроде хорошо. Поставил буду смотреть и сообщу если что. Спасибо.
   
Как убрать переход на новую строку после базового адреса? Достаточно, только в первой строке или во второй тоже?

Выделить код

Код:

path = `\n${href.pathQueryRef}`;
if (path === "\n/") path = "";

Хочу посмотреть как удобнее будет.
   
Обработку атрибута alt= добавлять не думаете? На предыдущей странице у моих картинок он есть (если для теста). Если вдруг надумаете, то возможно, alt стоит показывать, только если title нет, а то иногда в alt title дублируют.
   
voqabuhe

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

Отредактировано _zt (05-08-2020 01:22:59)


Fx 91 esr

Отсутствует

 

№893705-08-2020 01:27:53

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 80.0

Re: Настройка внешнего вида Firefox в userChrome.css

voqabuhe пишет

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

А на [nightly] не заметил такого, значит пусть будет DOMContentLoaded а не pageshow, заменил.

Dumby пишет

я тоже пытался придумать, и показалось приемлимым

Ну вот, если бы знал то и время бы не стал тратить на это, но два варианта лучше.
Будет время разберусь что это за концепция.

Добавлено 05-08-2020 01:33:09

_zt пишет

Как убрать переход на новую строку после базового адреса?

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

Выделить код

Код:

//path = `\n${href.pathQueryRef}`;
//if (path === "\n/") path = "";
path = href.pathQueryRef;
if (path === "/") path = "";


P.S. И это не базовый домен...
Добавлено 05-08-2020 01:36:42

_zt пишет

Обработку атрибута alt= добавлять не думаете?

А зачем, какой от него прок, когда картинки не загрузятся?

Отредактировано Vitaliy V. (05-08-2020 01:47:14)

Отсутствует

 

№893805-08-2020 01:38:17

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3036
UA: Firefox 79.0

Re: Настройка внешнего вида Firefox в userChrome.css

Dumby

Dumby пишет

Да, засунул правильно.
И да, вот прям после установки не работает.
Нужно либо создать true настройку, либо вытащить и нажать кнопку.

Ах вон оно чё, ну кто ж  знал, что это целая кнопка. :) Спасибо, ну это совсем идеально. 


_zt

не скатывайтесь, как баба базарная, до откровенного хамства

Вот поэтому и не стал отвечать, и как вижу не ошибся. И на этом прекращаю, даже под спойлером


Добавлено 05-08-2020 01:41:23

Vitaliy V. пишет

А на [nightly] не заметил такого, значит пусть будет DOMContentLoaded а не pageshow, заменил.

Спасибо.  Ну а нижний то тултип как скрыть, подскажете?

Отредактировано voqabuhe (05-08-2020 01:42:44)

Отсутствует

 

№893905-08-2020 01:51:30

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 80.0

Re: Настройка внешнего вида Firefox в userChrome.css

voqabuhe
стилем

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

Выделить код

Код:

#statuspanel[type="overLink"] {
    transition: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

Отсутствует

 

№894005-08-2020 01:56:16

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

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V.

alt

А он только у картинок используется? Значит я чего то не понял. Тогда вопрос снимается. Просто я пока скрипты гонял несколько раз наткнулся, но не понял, что только у картинок.

P.S. И это не базовый домен...

Я писал базовый адрес, а не домен. Не знаю как правильно его назвать.


Fx 91 esr

Отсутствует

 

№894105-08-2020 10:28:10

Neytrino
Участник
 
Группа: Extensions
Зарегистрирован: 05-02-2006
Сообщений: 132
UA: Firefox 79.0

Re: Настройка внешнего вида Firefox в userChrome.css

Всем привет, есть:
Расширения Classical Search Bar и Purple Private Windows
Когда (в приватном режиме) активно второе, иконки поисковых систем из первого и иконки поисковых систем в самом фоксе - не инвертируются (а хотелось бы чтобы они не выбивались из общего дизайна).

скрытый текст
9d10278bd9f1af4948aa502b2e58f2c3.jpg

Можно ли что-нибудь с этим сделать..? (p.s. если это имеет значение, все иконки поисковых систем у меня в *.svg)

Отредактировано Neytrino (05-08-2020 11:52:55)


© уважением Neytrino.

Отсутствует

 

№894205-08-2020 12:12:20

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 80.0

Re: Настройка внешнего вида Firefox в userChrome.css

_zt
ну да для ссылок он бесполезен,  используется в тегах
<img>
<area>
<input type="image">
Neytrino
Ну не знаю разве что фильтр применить но будет всё одним цветом

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

Выделить код

Код:

*|*:root[privatebrowsingmode] .searchbar-engine-image,
*|*:root[privatebrowsingmode] .searchbar-engine-one-off-item > .button-box > .button-icon {
    filter: url("data:image/svg+xml;charset=utf-8,<svg height='0' xmlns='http://www.w3.org/2000/svg'><filter id='fill'><feComposite in='FillPaint' in2='SourceGraphic' operator='in'/></filter></svg>#fill") !important;
    fill: currentColor !important;
    color: inherit !important;
}


@-moz-document url("moz-extension://XXXXXXXX-XXXX-UUID-XXXX-XXXXXXXXXXXX/popup/popup.html") {
    :root[style] .menuitem .icon img {
        filter: url("data:image/svg+xml;charset=utf-8,<svg height='0' xmlns='http://www.w3.org/2000/svg'><filter id='fill'><feComposite in='FillPaint' in2='SourceGraphic' operator='in'/></filter></svg>#fill") !important;
        fill: var(--popup-text) !important;
    }
}


второй код для Classical Search Bar, в userContent.css

Отсутствует

 

№894305-08-2020 12:22:28

qwerty1956
Участник
 
Группа: Members
Зарегистрирован: 30-06-2020
Сообщений: 2
UA: Firefox 69.0

Re: Настройка внешнего вида Firefox в userChrome.css

После нажатии звездочки в адресной строке, в открывшемся окне нужно выбрать место сохранения и нажать Готово для закрытия. Недавно пробегал способ (стиль? / скрипт?) автозакрытия окна сразу после выбора места сохранения. Никак не могу теперь найти. Кто знает, подскажите, пожалуйста

Отсутствует

 

№894405-08-2020 12:35:52

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

Re: Настройка внешнего вида Firefox в userChrome.css

qwerty1956 пишет

После нажатии звездочки в адресной строке, в открывшемся окне нужно выбрать место сохранения и нажать Готово для закрытия. Недавно пробегал способ (стиль? / скрипт?) автозакрытия окна сразу после выбора места сохранения.

После выбора места сохранения закладки, кликните ЛКМ на пустом месте страницы и это окно закроется.


Win7

Отсутствует

 

№894505-08-2020 12:56:50

qwerty1956
Участник
 
Группа: Members
Зарегистрирован: 30-06-2020
Сообщений: 2
UA: Firefox 69.0

Re: Настройка внешнего вида Firefox в userChrome.css

kokoss пишет

После выбора места сохранения закладки, кликните ЛКМ на пустом месте страницы и это окно закроется.

Чем отличается от клика ЛКМ по кнопке Готово? То же лишнее действие. Вопрос про

автозакрытие окна

Отредактировано qwerty1956 (05-08-2020 12:58:42)

Отсутствует

 

№894605-08-2020 13:02:44

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

Re: Настройка внешнего вида Firefox в userChrome.css

qwerty1956 пишет

Чем отличается от клика ЛКМ по кнопке Готово?

Тем что для меня так удобнее :)


Win7

Отсутствует

 

№894705-08-2020 14:33:40

Neytrino
Участник
 
Группа: Extensions
Зарегистрирован: 05-02-2006
Сообщений: 132
UA: Firefox 79.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V., как всегда - очень круто, спасибо! но второй код (в "userContent.css" почему-то не работает)

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

Выделить код

Код:

@-moz-document url("moz-extension://6905b838-e843-4ee3-9df0-b4c79673b21c/popup/popup.html") {
    :root[style] .menuitem .icon img {
        filter: url("data:image/svg+xml;charset=utf-8,<svg height='0' xmlns='http://www.w3.org/2000/svg'><filter id='fill'><feComposite in='FillPaint' in2='SourceGraphic' operator='in'/></filter></svg>#fill") !important;
        fill: var(--popup-text) !important;
    }
}


© уважением Neytrino.

Отсутствует

 

№894805-08-2020 15:16:39

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 80.0

Re: Настройка внешнего вида Firefox в userChrome.css

Neytrino
Должен работать если в настройках Classical Search Bar
оформление auto + тема [firefox] в данном случае расширение Purple Private Windows
или тёмное - тема не обязательна.
А если так заменить
:root[style] --> удалить
var(--popup-text) --> currentColor
если нет, то возможно что-то с файлом userContent.css не того
или UUID не тот

Отредактировано Vitaliy V. (05-08-2020 15:21:19)

Отсутствует

 

№894905-08-2020 18:32:33

Neytrino
Участник
 
Группа: Extensions
Зарегистрирован: 05-02-2006
Сообщений: 132
UA: Firefox 79.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V., и так - тоже не хочет...

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

Выделить код

Код:

@-moz-document url("moz-extension://6905b838-e843-4ee3-9df0-b4c79673b21c/popup/popup.html") {
    .menuitem .icon img {
        filter: url("data:image/svg+xml;charset=utf-8,<svg height='0' xmlns='http://www.w3.org/2000/svg'><filter id='fill'><feComposite in='FillPaint' in2='SourceGraphic' operator='in'/></filter></svg>#fill") !important;
        fill: currentColor !important;
    }
}


Остальное содержимое userContent - работает корректно, пробовал перемещать код  в начало файла (если там дальше по тексту есть какие ошибки - в самом начале они не должны его затрагивать)...
UUID - тот, ну по крайней мере у *.xpi расширения (в папке "extensions") такое же имя (в фигурных скобках)...


© уважением Neytrino.

Отсутствует

 

№895005-08-2020 18:48:11

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2027
UA: Firefox 80.0

Re: Настройка внешнего вида Firefox в userChrome.css

Neytrino пишет

UUID - тот, ну по крайней мере у *.xpi расширения (в папке "extensions") такое же имя (в фигурных скобках)...

А понятно, не обратил внимания - вы использовали ID расширения это не то.
Откройте about:debugging#/runtime/this-firefox и скопируйте Внутренний UUID

Отсутствует

 

Board footer

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