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

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

Firefox » Ищу расширение для Firefox (ищу дополнение) » Сегодня 06:17:38

xrun1
Да, у меня это и на клик замка в строке адреса подключено, НО это работает, только если картинка уже загружена.
Часто при просмотре видны только эскизы, а фото открывется только по клику. Так сделано в галерее doramatv.live.

Firefox » Ищу расширение для Firefox (ищу дополнение) » Сегодня 04:31:16

На многих сайтах картинки нельзя сохранить, они заблокированы прозрачными элементами, в контекстном меню картинок нет пункта "Сохранить изображение…" — 2gis.ru, doramatv.live (Галерея по клику на фото актрисы)


Нужно расширение или UserScript, который разблокирует графику на странице, чтобы картинки можно было сохранять.
Не нужны расширения типа Download all Images, показывающие и сохраняющие все картинки, нужно именно разблокировать элементы, закрывающие графику.

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » Сегодня 01:47:00

Dumby пишет

Для Fifefox 125+ вместо win уже нужен win.browsingContext (Bug 1878401)

А как сделать, чтоб скрипт SingleHTML.mjs был совместим с FF115+ …… FF125+ ?
не понимаю, как этот win.browsingContext прописывать! SingleHTML править или из других скриптов вызывать иначе ?
1) fp.init(win || win.browsingContext, "", fp.modeSave);
2) Cu.getGlobalForObject(Cu)[Symbol.for("SingleHTML")](to, window.browsingContext)


посмотрел custom_buttons-0.0.7.0.0.33-fx. У тебя в SelfHelper.jsm:
picker(doc) { ……… var win = doc.ownerGlobal;
в SingleHTML (почти весь код твой): async SingleHTML(to, win = this.ownerGlobal)
[spoiler=SingleHTML.mjs (или JSM, если child: {moduleURI: __URI__})][code]/* SingleHtml © Лекс, правка Dumby, mod Dobrov
вызов: Cu.getGlobalForObject(Cu)[Symbol.for("SingleHTML")](to, window)
scriptsbackground [System Principal], «to» пуст: выбор пути */

var self, name = "SingleHTML", EXPORTED_SYMBOLS = [name

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 17-03-2024 13:57:49

Vitaliy V. пишет

Скрипты же тем более могут определить OS, я не против добавить но в каких случаях это необходимо?

Для портабельного или личного профиля, запускаемого и используемого на всяких OS.
В идеале лучше так: грузим стили из custom_styles, затем дополнительные CSS из папки, соответствующий имени операционки.
если браузер на MacOS находит папку custom_styles/macosx, догружаем custom_styles_all_agent.css и прочие CSS из неё.


Примеры стилей обычно только для винды, я пробовал @media (-moz-platform:, но неудобство в том, что придётся править стили при каждом их обновлении.
В стилях от aris-t2 есть совместимость для разных OS, но для Linux и MacOS всё же требуются дополнительные правки.
Проще разные CSS держать, т.к. CSS для MacOS и Windows слишком различаются, да и разные стили для AGENT_SHEET и USER_SHEET увеличивают число файлов.
из-за несовместимости версий Firefox я держу разные папки, например aris-t2-115+ и aris-t2-97…, но это уже другая история

Firefox » Добавить пункт в меню возможность "Отправить ярлык на рабочий стол" » 17-03-2024 10:43:48

Это нужно искать дополнение с возможностью создать ярлык сайта в указанной папке.
Или установить расширение UCF, к которому подключить скрипт создания ярлыка.

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 17-03-2024 07:08:48

Vitaliy V. - пожелание:
добавить подключение стилей по имени в зависимости от OS – иногда нужно использовать один профиль на разных системах, для которых CSS не совпадают.
вот так работает в CustomStylesScripts.mjs (на MacOS подключается custom_styles_all_user_macosx.css):

Выделить код

Код:

const {AppConstants} = ChromeUtils.import("resource://gre/modules/AppConstants.jsm");
var os = name => `${name.replace(/\.[^.$]+$/,'')}_${AppConstants.platform}${name.lastIndexOf('.') > 0 ? "."+ name.split('.').pop() : ""}`;
…………
	stylesall: [ // Для всех документов
		{ path: "custom_styles_all_user.css", type: "USER_SHEET", sheet() { registerSheet(this); }, },
	// стиль для вашей операционной системы: *_macosx.css, *_linux.css, *_win.css
		{ path: os("custom_styles_all_user.css"), type: "USER_SHEET", sheet() { registerSheet(this); }, },
	],

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 17-03-2024 04:13:31

Dumby :beer: такой глупый вопрос: JS скрипты будут дóльше поддерживаться в Firefox, чем JSM-ки?


Если это так, то возможно переделать в JS скрипт сохранения страниц SingleHTML.JSM (в custom_scripts UCF 2024 тоже JS-скрипты)
Его функции используют два скрипта (а могут и другие): ClickPicSave.jsm и ucf_hookClicks.js


b0ttle пишет

ucf_hookClicks.js Удобная штука. Все что хотел раньше от скриптов, все в одном флаконе
а что за сборка 116? esr?

в ucf_hookClicks.js код слишком компактный, чтоб легко подстроить «под себя» строки меню/нажатия клавиш/клики мыши в первых блоках. Позже отформатирую по правилам, разграничив блоки разных назначений.
[color=#888888][i]А браузер обычный

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 16-03-2024 18:56:23

Vitaliy V. - спасибо!
забываю проверять обновления UCF…
и теперь новый упрощённый config.js не загружает user_chrome.js от старого UCF

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 16-03-2024 16:59:51

Dumby - спасибо, добавил примеры в пользовательское меню, где меняются иконки, текст и подсказки в зависимости от настроек.
Изменяемые по клику строки меню отличаются выделенным шрифтом.


Обновил меню в ucf_hookClicks.js и исправил совместимость с UCF 2024.
Firefox/config.js может грузить старую и новую версию UCF.

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 15-03-2024 05:20:16

Dumby - поправь код менюшки! Не работает upd(){… для подменю!
Одинаковый код обновления не пашет в подменю, но работает в первой и последней строках меню.
screen-2024-03-15-10-11-19.png
[code](async id => { // forum.mozilla-russia.org/viewtopic.php?pid=808738#p808738

MyMenu = { //массив команд пользователя, alt() клик правой кнопкой
    Pics: { // Графика сайтов Вкл/Выкл permissions.default.image

        upd() { // обновлять сроку перед показом меню
            // var {G} = this.ownerGlobal;
            var val = G.pref(G.v), s = val == 1, i = G.pdi; s ? i = i.replace("-blocked","") : 0;
            this.label = `Графика сайтов ${s ? "загружается" : val == 3 ? "кроме сторонних" : "отключена"}`;
            this.image = i || G.chk;
            this.tooltipText = G.v +" "+ val +"\nRClick – кроме сторонних";
        },
        cmd(){
            G.pref(G.v, G.pref(G.v) == 2 ? 1 : 2);
            BrowserReload();
        },
        // alt(){ //для RClick нужен ucf_hookClicks.js
        //     G.pref(G.v, 3); BrowserReload();
        // },
    },
    "SubMenu":

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 02-03-2024 02:34:07

Dumby пишет

Оказывается, что если вписан sub, код прогоняет через [for in] объект в который вписан sub.
То есть, и для ключей, упомянутых в этом регулярном выражении тоже создаётся (ненужный) элемент (как минимум <menuitem>)

Спасибо! Я делал так же: (обработать только объект), но результат разный:
for (key in o) { if (typeof o[key] != "object") continue; // Dumby
if (typeof o == "object") for (key in o){ // Dobrov


Dumby пишет

Всё потому, что у строки есть sub. Вот проверь с консоли: var {sub} = "bla-bla"; alert(sub);
Это будет — String.prototype.sub().

Исправил свой код менюшки и убрал имя переменной sub.
Но тогда js-код для var {sub} работает нелогично, ведь var {lab} = "bla-bla"; alert(lab); (и другие имена) возвращают «undefined» !

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 29-02-2024 15:59:36

Dumby пишет

Ничего себе «немного». Как там задумана обработка структуры MyMenu я сходу понять не могу, субменю вообще в примере нет.

Спасибо за помошь! :beer:
P.S. Массив вместе с субменю есть в ucf_hookClicks.js, вложенность любая.

Поддержка пользователей » MacOS, Dock, сохранение табов » 29-02-2024 14:00:06

maximus324 непонятно, каким образом вы теряете ранее открытые вкладки, распишите действия подробней…
Если браузер завершить из Dock, вкладки сохраняются, кроме того Firefox резервирует сессии каждую минуту.


в MacOS приложение не закрывается при закрытии окна, окно не является приложением – это лучший подход для приложений на основе редактирования документов. Если системе понадобиться память, MacOS закроет старые приложения сама.
В Windows окно — это приложение, поэтому оконные приложения закрываются при нажатии кнопки «Закрыть».

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 29-02-2024 06:06:58

Dumby возникла хотелка для менюшки кнопки, которую я немного доработал.


это меню создаётся однократно и перед кликом на кнопке его не существует, т.е. однократно выполняется menu.render = this.render;
Нужно, чтоб менялись строки меню перед его открытием в зависимости от опций about:config и прочих проверок, например "Графика сайтов включена" вместо "Графика сайтов вкл/выкл"


Прошу доработать код, чтоб ключи «lab» могли быть с backticks-кавычками и текст мог обновляться перед каждым открытием меню:
lab: `${проверка условия ? "√ Да, всё OK" : "Х Нет"}`
[spoiler=Автономное меню для тех, кому не нужен ucf_hookClicks.js][code](async id => { // by Dumby forum.mozilla-russia.org/viewtopic.php?pid=807581#p807581

MyMenu = { //массив команд пользователя, alt() клик правой кнопкой
    Pics: {
        lab: `Графика сайтов вкл/выкл | Right Click`,
        inf: 'текст обновляется перед открытием меню',
        c

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 29-02-2024 01:50:06

Northtech пишет

есть возможность сделать в ucf_contextsearch.js открытие вкладки поиска фоном? Или зависящим от этой настройки: user_pref("browser.search.context.loadInBackground", true);

Поиск и так открывается в фоновой вкладке по клику правой кнопкой или колёсиком на любых строках меню и подменю.

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 27-02-2024 15:22:40

Dumby пишет

.jsm
А вот и баг о временах и сроках.

когда JSM уберут, то UCF практически перестанет работать!
Я не осилю добавить ESM в UCF-user_chrome.js и в CustomStylesScripts.jsm загрузчик скриптов/стилей…

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 25-02-2024 06:52:58

b0ttle пишет

В шапке бы поправить ссылку на рабочую - "Восстановить фавиконки закладок".

Раз это не в скрипте проблема, шапку пока не менял.


Dumby пишет

Это баг 1872673 - Remove 'console' export from Console.sys.mjs
То есть, дело не в коде кнопки, а в само́м UCF.

Dumby - Благодарю! :beer:
Обновил на гитхабе chrome/user_chrome_files/user_chrome.js
в Demo-профиле - сборке полезных скриптов немного поправил:
user_chrome.js, UcfPrefs.jsm, ucf_UrlTooltip, ucf_contextmenuopenwith, ucf_contextsearch, ucf_hookClicks

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 31-12-2023 22:03:49

Northtech пишет

в новой версии ucf_hookClicks.js пропадает блок кнопок закрытия окна (#minimize-button, #restore-button, #close-button).

Попробуй включить "Кнопки управления окна" в диалоге "Настройки UserChromeFiles"

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 31-12-2023 13:27:12

Обновил скрипта перехвата кликов-нажатий ucf_hookClicks.js — исправил ошибки несрабатывания некоторых команд пользовательского меню по клику из кнопок.


Cкрипт сохранения страниц SingleHTML.jsm исправлена связка Путь сохранения <-> установка пути из Опций быстрых настроек.


Всех с наступающим праздником!

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 17-12-2023 19:00:50

b0ttle пишет

попап таких расширений как ublock, tampermonkey, про это меню имелось ввиду, чтобы вместо двух кнопок была одна.

Нет, менюшки расширений не рассматриваются, и я не проверял их открытие над другой кнопкой, если кнопка расширения не закреплена на панели инструментов.
Правым кликом на unified-extensions-button открывается меню пользовательских команд (отлажу скрипт и для "add-ons-button" это меню добавлю)

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 16-12-2023 05:48:28

b0ttle пишет

Можно эти дополнения с меню, отдельно выделять используя тот шарик с цветом.

Не понял, нужен скриншот или подробные разьяснения.
Сделал, но пока не публиковал (ucf_hookClicks.js в процессе отладки):
Дополнения к меню опций от Dumby (работает, но переделываю по-своему, ещё изменю формат Setup = [{…)
Меню пользователя и прочие клики для unified_extensions_button работают и на старой кнопке Расширений "add-ons-button"


b0ttle пишет

Можно в ucf_aom-button.js как-то добавить функцию, как у unified_extensions_button, чтобы при клике вылазило окно, не настройки?

Вообще-то удобнее иконку скрипта ucf_aom-button.js убрать, а на правый клик unified_extensions_button назначить меню управления расширениями от ucf_aom-button (но не разбирался, как в этом скрипте привязать клики по меню, открытому из другой кнопки).

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 07-12-2023 15:44:30

Сделал отдельный скрипт на основе кнопки от Dumby «Быстрые опции about:config»: (меньше оригинала + некоторые улучшения)


Dumby, раз ты на связи, вот мои Хотелки и Проблемы к скрипту Быстрые опции:
1) сделать ввод значения текущей опции вручную через диалог ввода. Например в UserAgent > при клике по строке: "ваши данные…" нужно открыть диалог, где вводим нужные данные аналогично уже вшитым в другие строки этого подменю. После ввода или перезапуска браузера при открытии этого подменю строка "ваши данные…" должна быть выбрана флажком. Такой ввод данных пользователя нужен не для одной опции, а для многих: например в строке «Загрузки» нужна строка своих настроек…


2) надо, чтобы radio-строка подменю была выбрана (с флажком), если опция сброшена и отсутствует.
сделал костыль: pref.undef = [val,str] для pref: pref,lab,key,hint,[val,str],code
костыль делает строку меню такой: "Заголовок - str", но radio-строка подменю остаётся не выбранной.


3) при клике по родительской строк

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 02-12-2023 13:46:37

iG0R пишет

Подскажите, от чего зависит стиль начертания шрифта (обычный, наклонный) и его цвет в быстрых настройках ucf_hookClicks.js?

Иконка зелёная или серая и шрифт обычный - значит опция в значении по-умолчанию, для вашей настройки это false.
Цвет других иконок задаётся для каждой строки подменю, например Blue ставлю, если опция изменена, но не критично. Пример всех цветов в строке: "Режим прокси"
если в pref:…… прописано значение для "Def3el", то текст будет красным, если опция не равна Def3el и не по-умолчанию. В новой версии скрипта вместо красного шрифта будет красный ореол текста.


По двойному разделителю в менюшке поиска не знаю, у меня на разных профилях этого нет.

Скрипты » UCF - ваши кнопки, темы, дополнения, скрипты… » 30-11-2023 18:18:36

Скрипт ucf_hookClicks.js — изменил меню пользователя, чтобы проще подключать команды, устранил пару ошибок.
Справка по жестам мыши создаётся автоматически в ucf_mousedrag.js, и добавленные вами жесты тоже видны:
Меню пользователя > Правый клик по строке "Краткая справка | Жесты мыши"


обновлены скрипты: ucf_hookClicks.js ucf_mousedrag.js SingleHTML.jsm ClickPicSave.jsm и файлы профиля: prefs.js custom_styles_all_user.css userChrome.css userChrome_macosx.css
Firefox-Menu-Expert.png
Dumby - с возвращением!

Сustom Buttons » Custom Buttons » 30-11-2023 06:27:19

Опять я с вопросами по Java-коду ! (не знаю форум для JS-кодеров) :)
Надо сэкономить иконку, чтобы ссылаться на одну строку в разных свойствах объекта. (есть и другие дубли данных)


Как во вложенном объекте получить вышестоящее свойство ? get() для this не смог настроить…

Выделить код

Код:

Menu = {
Cfg: { submenu: 1,
    img: "chrome://devtools/skin/images/settings.svg",
    "Настройки UCF": { // вложение обязательно!
        img: "chrome://devtools/skin/images/settings.svg"
        } // эту иконку надо брать из Menu.Cfg.img
    }
}

Board footer

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