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

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

№47617-09-2022 11:29:08

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

Re: UCF - ваши кнопки, скрипты…

Dobrov
autohide_tabstoolbar
Оффтоп


Win7

Отсутствует

 

№47717-09-2022 12:43:32

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

Re: UCF - ваши кнопки, скрипты…

Dobrov пишет

есть в профиле profile_ucf_dobrov

Если ты про этот код, то его подкосил баг 1767802.

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

Выделить код

Код:

/*
			.tabbrowser-tab[first-visible-tab="true"][last-visible-tab="true"] ~ #tabs-newtab-button {
*/
			.tabbrowser-tab[first-visible-tab="true"][last-visible-tab="true"] ~ #tabs-newtab-button,
			.tabbrowser-tab[first-visible-tab="true"][last-visible-tab="true"] ~ #tabbrowser-arrowscrollbox-periphery > #tabs-newtab-button {

Отсутствует

 

№47817-09-2022 14:14:00

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

Re: UCF - ваши кнопки, скрипты…

Dumby - спасибо, заработало! :beer: Исправил также этот ucf_autohidetabstoolbar.js в шапке.

Отсутствует

 

№47917-09-2022 18:49:53

LGS
Участник
 
Группа: Members
Зарегистрирован: 17-09-2022
Сообщений: 101
UA: Firefox 78.0

Re: UCF - ваши кнопки, скрипты…

Dumby, подскажите, что можно изменить в скрипте Simple Session Manager, чтобы заработало в FF68 и 78..?
В 68 после замены btn.type = "menu"; на btn.setAttribute("type", "menu"); и правки @-moz-document url-prefix(chrome://browser/content/browser.xul) кнопка появляется, по щелчку ЛКМ предлагает сохранить сессию, но не сохраняет. В 78 кнопка появляется без ковыряния в коде, но тоже не работает.

Отсутствует

 

№48017-09-2022 19:46:23

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

Re: UCF - ваши кнопки, скрипты…

LGS
Скрипты у Dobrov-а  работают с перехватом кликов hookClicks, его нужно добавить в CustomStylesScripts.jsm, иначе ни один из этих скриптов работать не будет.
Это для 78. А в 68 новые UCF, к сожалению, не работают.

Отредактировано kazarin (17-09-2022 19:47:26)

Отсутствует

 

№48117-09-2022 20:30:24

LGS
Участник
 
Группа: Members
Зарегистрирован: 17-09-2022
Сообщений: 101
UA: Firefox 78.0

Re: UCF - ваши кнопки, скрипты…

kazarin
Здесь, вроде, родной от Dumby, но все равно не работает.

Отсутствует

 

№48217-09-2022 20:53:13

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

Re: UCF - ваши кнопки, скрипты…

LGS пишет

В 68 после замены btn.type = "menu"; на btn.setAttribute("type", "menu"); и правки @-moz-document url-prefix(chrome://browser/content/browser.xul) кнопка появляется, по щелчку ЛКМ предлагает сохранить сессию, но не сохраняет.

Что-то я не понял, там же четыре «?.» оператора, которые надо выгребать,
а об этом ни слова. Ладно, будем считать что сделал, но не написал.


Патч на сохранение. Только это, я не буду там всё тестировать,
а если ещё что-то всплывёт, то пиши доходчивый STR, попробую посмотреть.

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

Выделить код

Код:

/*
	async save(excWin) {
		var io = Cu.getGlobalForObject(Cu).IOUtils;
*/
	io: {
		get OS() {
			delete this.OS;
			Cu.import("resource://gre/modules/osfile.jsm", this);
			return this.OS;
		},
		makeDirectory(path) {
			return (this.makeDirectory = this.OS.File.makeDir)(path);
		},
		writeJSON(path, obj) {
			var wa = this.OS.File.writeAtomic;
			return (this.writeJSON = (path, obj) => wa(path, JSON.stringify(obj)))(path, obj);
		}
	},
	async save(excWin) {
		var io = Cu.getGlobalForObject(Cu).IOUtils || this.io;

Отредактировано Dumby (17-09-2022 21:39:51)

Отсутствует

 

№48317-09-2022 21:15:27

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

Re: UCF - ваши кнопки, скрипты…

LGS
Оказывается, SSM не работает и в профиле Dobrov-а (тестовый профиль для [firefox] 78 от 12.04.2022). Есть кнопка, но ничего не сохраняется, а через клик выскакивает сообщение:

скрытый текст
HlnRCYh.png

(окно одно, в профиле всё as is, ничего не менялось)
Проверил отдельный скрипт из шапки. Отлично работает на 102. На 68 на старых UCF ожидаемо не завёлся. На 78 - есть кнопка, подхватывает .json от CB, но не сохраняет, не переименовывает и не удаляет сессии. Покопался немного по форуму и нашёл следующее.
То есть этот скрипт, по-видимому, ниже 91 работать и не будет, а более ранние версии существуют только в виде кастомной кнопки.


Dumby
На 78 фикс не помог, по-прежнему не сохраняет.

Отредактировано kazarin (17-09-2022 21:17:51)

Отсутствует

 

№48417-09-2022 21:42:50

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

Re: UCF - ваши кнопки, скрипты…

kazarin пишет

фикс не помог

Точно. Это я глупость написал. Вторая попытка.

Отсутствует

 

№48517-09-2022 21:53:43

LGS
Участник
 
Группа: Members
Зарегистрирован: 17-09-2022
Сообщений: 101
UA: Firefox 78.0

Re: UCF - ваши кнопки, скрипты…

Dumby

Dumby пишет

Патч на сохранение

На 78 (esr и Вин10 x64) заработало все: сохранение, восстановление, удаление, переименование и даже иконки у менюшек.
На 68 (форке и ВинХР) заработало сохранение и восстановление. Спасибо!

68esr и Вин10 x64 кнопка не создается, наверное что-то локальное у меня.

Dumby пишет

Только это, я не буду там всё тестировать,
а если ещё что-то всплывёт, то пиши доходчивый STR, попробую посмотреть.

Конечно, сам погоняю, посмотрю что всплывет. Только мне стыдно спросить - что такое STR..?

Add: Оказывается, работало (попытка 1) до перезагрузки компа. Теперь проверяю "попытку 2".

Отредактировано LGS (17-09-2022 22:06:31)

Отсутствует

 

№48617-09-2022 22:26:40

LGS
Участник
 
Группа: Members
Зарегистрирован: 17-09-2022
Сообщений: 101
UA: Firefox 68.0

Re: UCF - ваши кнопки, скрипты…

kazarin

kazarin пишет

этот скрипт, по-видимому, ниже 91 работать и не будет

На 78 попытка 2 тоже работает, как и первая. Только не знаю как будет после перезагрузки компьютера.
На 68esr кнопка не создается, на Еноте68 работает сохранение и восстановление.

Отсутствует

 

№48717-09-2022 22:28:20

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

Re: UCF - ваши кнопки, скрипты…

Dumby
"Вторая попытка" работает и на 78, и на 68! Большое спасибо!))

LGS
В 68 нет иконки на функции удаления, потому что самой такой картинки в браузере нет, вы там пропишите своё что-нибудь))
Нет, есть, но почему-то не отображается.
От перезагрузки компа кнопки не зависят, только от очистки кэша скриптов.
А вот на 68 esr не проверял, счаз гляну.

Да, у меня тоже не появляется в 68. А в Еноте есть))

Отредактировано kazarin (17-09-2022 22:51:57)

Отсутствует

 

№48817-09-2022 22:50:16

LGS
Участник
 
Группа: Members
Зарегистрирован: 17-09-2022
Сообщений: 101
UA: Firefox 78.0

Re: UCF - ваши кнопки, скрипты…

kazarin

kazarin пишет

От перезагрузки компа кнопки не зависят, только от очистки кэша скриптов

Значит кэш не очистился. После правки "попытки 1" браузер (78) однозначно перезагружался с кнопки очистки кэша и все работало. После перезагрузки компа (нужно было на ВинХР енот проверить) все слетело.

Отсутствует

 

№48917-09-2022 22:58:41

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

Re: UCF - ваши кнопки, скрипты…

LGS пишет

На 68esr кнопка не создается, на Еноте68 работает

Конечно не создаётся. Оператор «?.» это не какая-то там ошибка в работе кода,
это сразу SyntaxError, весь код встанет враскоряку.


Уж не знаю что за Енот68, но значит там поддержка этого оператора есть.

Только мне стыдно спросить - что такое STR..?

Steps To Reproduce (шаги по воспроизводству),
типа делай раз, делай два, делай три. Багзильский такой формат.


Пример. Допустим, обсуждаемый код работает.


STR: Запускаем Firefox 78. Инициируем в кнопке сохранение сессии.
В открывшемся окошке ввода имени вызываем контекстное меню (ПКМ) на строке «Сохранить:».
Жмём пункт «Выделить всё».


AR: Выделение не происходит.
ER: Выделение происходит.


Ну, это баг такой в лисе, можно и в простом alert'е увидеть.
Воспроизводится и в 106.0a1

Отсутствует

 

№49017-09-2022 23:25:57

LGS
Участник
 
Группа: Members
Зарегистрирован: 17-09-2022
Сообщений: 101
UA: Firefox 68.0

Re: UCF - ваши кнопки, скрипты…

Dumby

Dumby пишет

Steps To Reproduce (шаги по воспроизводству)

Благодарю за науку и помощь со скриптами!

Dumby пишет

Уж не знаю что за Енот68

Это MyPal, человек его на базе 68esr делает для ХР и уже, вроде, кое-что от 78 туда впихнул. Поэтому скрипт и работает.

Отсутствует

 

№49118-09-2022 00:01:16

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

Re: UCF - ваши кнопки, скрипты…

LGS
Ну, то есть, в изначальном вопросе «В 68 после замены» «и правки» это был енот.
У меня нет никакого енота, а сохранение надо было смотреть, поэтому,
на скорую руку, чисто формально, запихал код в Firefox 68 так

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

Выделить код

Код:

....
		//if (old != trg) old?.removeAttribute("boot");
		if (old != trg) old && old.removeAttribute("boot");
....
		//if (arg.constructor.isInstance?.(arg)) {
		if (arg.constructor.isInstance && arg.constructor.isInstance(arg)) {
....
		//win.document.querySelector(this.skd)?.removeAttribute("maxwidth");
		var menu = win.document.querySelector(this.skd);
		menu && menu.removeAttribute("maxwidth");
....
			//: this.dragData?.mouse && e.preventDefault()
			: this.dragData && this.dragData.mouse && e.preventDefault()

Отсутствует

 

№49218-09-2022 00:14:26

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

Re: UCF - ваши кнопки, скрипты…

Dumby
Проверил, в 68 работает. Спасибо!:)

LGS
Исправил иконку так

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

Выделить код

Код:

#${pid} [value=removeSession] {
					list-style-image: url("resource://usercontext-content/cart.svg");
				} 
				
				#${pid} [value=deleteAllSessions] {
					list-style-image: url("resource://usercontext-content/cart.svg");
				}


Разнёс на две, 68, видимо, не понимает перечисления, что обычный esr, что енот.

Отредактировано kazarin (18-09-2022 00:42:03)

Отсутствует

 

№49318-09-2022 00:40:21

LGS
Участник
 
Группа: Members
Зарегистрирован: 17-09-2022
Сообщений: 101
UA: Firefox 68.0

Re: UCF - ваши кнопки, скрипты…

Dumby

Dumby пишет

Ну, то есть, в изначальном вопросе «В 68 после замены» «и правки» это был енот.

Да, извиняюсь, не совсем точно сформулировал. Думал, что ESR не так важно. А про енота вы и так не знали.

kazarin пишет

на скорую руку, чисто формально, запихал код в Firefox 68

На 68esr заработало: сохраняет, восстанавливает, переименовывает. Только не удаляет.
Благодарю!

Добавлено 18-09-2022 00:47:20
kazarin

kazarin пишет

Исправил иконку так

Спасибо, теперь совсем красиво.

Отредактировано LGS (18-09-2022 00:47:20)

Отсутствует

 

№49418-09-2022 02:14:40

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

Re: UCF - ваши кнопки, скрипты…

Dumby - спасибо за адаптацию ucf_SessionManager!
Как сделать прокрутку вкладок колёсиком мыши ? (аналогично Ctrl+Page Up|Down)
твой код работает, только если его запустить из консоли. Разные способы запуска из CustomStylesScripts.jsm не пашут:

Выделить код

Код:

(async (tc) => addEventListener("wheel", e => {
	if (e.shiftKey || e.ctrlKey || e.altKey || e.metaKey)
		return;
	e.stopPropagation(); e.preventDefault();
	tc.advanceSelectedTab(e.deltaY < 0 ? 1 : -1, true);
}, true, tc || 1))(gBrowser.tabContainer);
kazarin пишет

Скрипты у Dobrov-а  работают с перехватом кликов hookClicks, его нужно добавить в CustomStylesScripts.jsm, иначе ни один "из этих" скриптов работать не будет.

LGS спрашивал про ucf_SessionManager.js, которому не нужен ucf_hookClicks. "Из этих" зависят только attrsInspector.js, ucf_mousedrag.js, ucf_QuickToggle.js.
Но глобальный скрипт значительно упрощает код других кнопок и добавляет много функций, подсказки, клики, перехват при наведении мыши на кнопки/панели. Например, расширяет возможности кнопок Загрузки, Печать, PanelUI-menu, Замок и многих других, в том числе можно добавить горячие клавиши и расширить клики/подсказки любых дополнений, как это сделано для Single Save, VideoDownloadHelper, ReaderView.

Отсутствует

 

№49518-09-2022 22:54:40

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

Re: UCF - ваши кнопки, скрипты…

Dobrov пишет

Разные способы запуска из CustomStylesScripts.jsm не пашут

Что там может не пахать

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

Выделить код

Код:

(async tc => {
	var args = ["wheel", e => {
		if (e.shiftKey || e.ctrlKey || e.altKey || e.metaKey)
			return;
		e.stopPropagation(); e.preventDefault();
		tc.advanceSelectedTab(e.deltaY < 0 ? 1 : -1, true);
	}, true];
	tc.addEventListener(...args);
	var id = Symbol();
	this.unloadlisteners.push(id);
	this[id] = {destructor: () => tc.removeEventListener(...args)};
})(gBrowser.tabContainer);
Выделить код

Код:

var UcfStylesScripts = {
    .......
    scriptschrome: { // Для докум. окна браузера [ChromeOnly]
        domload: [ // По событию "DOMContentLoaded"

        ],
        load: [ // По событию "load"
            .......
            { path: "advanceSelectedTab.js", ucfobj: true },
        ],
    },

Отсутствует

 

№49619-09-2022 01:39:48

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

Re: UCF - ваши кнопки, скрипты…

Dobrov пишет

LGS спрашивал про ucf_SessionManager.js, которому не нужен ucf_hookClicks

Да мы уже разобрались)) Просто моей первой мыслью, раз иконка есть, а скрипт не пашет, было, что взят скрипт, который работает с перехватом.

Dobrov пишет

добавляет много функций, подсказки, клики, перехват при наведении мыши на кнопки/панели

А неужели так много там экономится, чтоб он был так уж нужен?
Мне кажется, таки hookClicks это для мастеров. Которые сами умеют писать скрипты, и им так удобнее. Мне вот как простому юзеру hookClicks потенциально не нравится тем, что если вдруг UCF перестанут работать на FF, то их уже по-другому не подключишь (hookClicks работает только с UCF, я проверял). Скрипты для UCF не всегда дружат с другими загрузчиками, но большая часть - да.
Ну и порой бывает, что сам скрипт может работать на более низкой версии FF со старым UCF, а без hookClicks он не заработает.
Кстати, а вы не можете пояснить, почему на 78 выскакивает вот такое сообщение? В профиле ничего не менял, просто запустил. На самом свежем профиле тоже выскакивает.

Отсутствует

 

№49719-09-2022 13:16:24

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

Re: UCF - ваши кнопки, скрипты…

kazarin пишет

неужели так много там экономится, чтоб "ucf_hookClicks.js" был так уж нужен?

Да, например отдельно в кнопке меню ucf_QuickToggle.js такое очень сложно сделать, а используя hookClicks всё намного проще:
Спасибо Dumby - код обработки предельно прост: 2(trg, forward) { bright(trg, forward);}, // яркость роликом мыши на кнопке ±
1) клики трёх кнопок мыши, б) их долгое нажатие с) прокрутка колёсика мыши д) + комбинации с Ctrl, Alt, Shift, Win
2) различные действия, в зависимости, где событие мыши: на самой кнопке или в её меню опций
3) различные подсказки, обновляемые при наведении курсора мыши на кнопку или разные пункты меню и подменю
4) сообщения в строке статуса при наведении на кнопку или при изменении режимов работы браузера
5) цвет кнопки в зависимости от режима прокси и многое другое (скрипт подробно комментирован)
6) всё работает на любых панелях и кнопках, не нужно в каждую кнопку прописывать клики, подсказки и прочее...
в обычном скрипте для обработки клика левой кнопки мыши нужна не одна строка, а больше. Если добавить правую кнопку и колёсико, код значительно усложняется.


kazarin пишет

почему на 78 выскакивает вот такое сообщение? В профиле ничего не менял, просто запустил. На самом свежем профиле тоже выскакивает.

проверил, получается, нужен Firefox 84+, на нём всё ОК, на FF78 получил ошибку создания массива:
hmap = new Map([ ["downloads-button", // тексты: кнопка «Загрузки» (в firefox_profile_ucf_dobrov.html указано: рекомендуется Firefox 90+)

Отредактировано Dobrov (19-09-2022 13:47:15)

Отсутствует

 

№49819-09-2022 15:53:30

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

Re: UCF - ваши кнопки, скрипты…

Dobrov, спасибо, понятно. Ну в общем это облегчает работу для скриптодела))

Dobrov пишет

рекомендуется Firefox 90+

Да это понятно, интересна была работа на 78.

Отсутствует

 

№49922-09-2022 13:05:02

LGS
Участник
 
Группа: Members
Зарегистрирован: 17-09-2022
Сообщений: 101
UA: Firefox 78.0

Re: UCF - ваши кнопки, скрипты…

Подскажите, кто знает... или как думает, можно ли этот скрипт, или этот, или вот такой скрипт+стиль впихнуть в заголовок фокса..?  Ну, т.е. чтобы версия, дата и время отображались в заголовке, а не в панели меню. Или такое технически невозможно..?
Вопрос актуален для всех версий ФФ с 68 по текущую релизную.

Отсутствует

 

№50024-09-2022 11:34:52

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

Re: UCF - ваши кнопки, скрипты…

Dumby
Сделайте пожалуйста скрипт для авто... открытия панели загрузок при старте закачки.


Win7

Отсутствует

 

Board footer

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