А как он у вас подключен?
Лично у меня он расположен в config.js.
P.S. Там чуть ниже ещё маленькая правочка от Dumby есть.
«The Truth Is Out There»
Отсутствует
А как он у вас подключен?
У меня подключён в custom_script_win после строки -> // Здесь может быть ваш код который сработает по событию "DOMContentLoaded"
Win7
Отсутствует
egorsemenov06
А как он у вас подключен?
в config.js.
Отсутствует
Dobrov
Ого, круто сделано. Получается на любой вкус и цвет, 3 пути выполнения кода, и особо разбираться в коде не нужно. Прям как конструктор. Пока не опробовал полностью, но уже нравится, удобно.
Отсутствует
Подскажите как в 120 убрать иконки в Панели меню? У меня установлен последний Lepton и раньше я делал всё как в этом сообщении, но сейчас этот способ не проходит...
Windows 10 LTSC
Отсутствует
Финальный вариант скрипта перехвата кликов-нажатий ucf_hookClicks.js — оптимизировал код и быстрые настройки.
Напоминаю, что в скрипте небольшие демо-шаблоны команд, менюшек, сочетаний клавиш — эти данные для удобства расположены в начале и подробно прокомментированы. Добавьте свои команды сами, это делается проще, чем в других скриптах (например можно сделать аналог кнопки Save+).
ucf_QuickToggle.js удалён и код перенесён в ucf_hookClicks.js (всё равно без него не работало), айдишник кнопки меню быстрых настроек изменён, менюшка команд вызывается кликом колёсика (все сочетания кликов мыши и горячие клавиши можно изменить).
Cкрипт сохранения страниц SingleHTML.jsm немного улучшен.
Black_Monk - вы ошиблись темой, в стилях надо спрашивать…
Отсутствует
Нельзя тут как-то добавить PanelUI-menu-button, чтобы он тоже мог переноситься? Пробовал, что-то не выходит. И что за кнопка alltabs-button, все время забываю?
// https://forum.mozilla-russia.org/viewtopic.php?pid=806232#p806232 806233#p806233 // установить для кнопок #alltabs-button и #unified-extensions-button атрибут "removable" как "true" (async topic => { var obs = doc => { doc.getElementById("alltabs-button")?.setAttribute("removable", true); doc.getElementById("unified-extensions-button")?.setAttribute("removable", true); doc.getElementById("PanelUI-menu-button")?.setAttribute("removable", true); } Services.obs.addObserver(obs, topic); Services.obs.addObserver(function quit(s, t) { Services.obs.removeObserver(quit, t); Services.obs.removeObserver(obs, topic); }, "quit-application-granted"); })("chrome-document-interactive");
Отредактировано b0ttle (26-11-2023 21:11:23)
Отсутствует
И что за кнопка alltabs-button, все время забываю?
Видимо, это кропка справа сверху в виде стрелки вниз ˅, при клике на ней покажет список открытых табов.
Отсутствует
Скрипт перехвата кликов-нажатий ucf_hookClicks.js — небольшие добработки и устранение ошибок:
1) Вернул сочетания кнопок мыши на вкладках и кнопке «Новая вкладка» — описание во всплывающих подсказках.
2) разблокировка перемещения #unified-extensions-button
3) добавлена команда alt в Меню пользователя. На строке «Закладка первая/последняя» клик правой кнопкой откроет последнюю ссылку.
В блоке «Menu = [{…» cmd имеет приоритет и сработает на клик колёсика или левой кнопки.
для alt возможны любые клики + управляющие клавиши (cmd при этом лучше убрать), пример есть в Mouse = {…B[6]…256 … btn.alt(btn)
4) Меню пользователя открывается колёсиком по кнопке «Быстрые опции» и правым кликом мыши на кнопке «Расширения» unified-extensions-button
В ucf_hookClicks треть объёма занимают блоки данных, которые можно менять «под себя»
Keys: нажатия клавиш, Menu: команды пользователя, Mouse: клики мыши, Setup быстрые опции.
Отредактировано Dobrov (28-11-2023 10:40:05)
Отсутствует
Прошу прощения, я тут отсутствовал какое-то время.
Dumby посмотрите пожалуйста код кнопки в ней тусклая иконка если svg.context-properties.content.enabled стоит в false
Конкретный цвет можно прямо в SVG'шке указать, там, где stroke
А если надо чтобы context-properties подхватывались,
то можно сменить протокол
/* bt.image = img; */ var subst = this.id + "-svg-image"; Services.io.getProtocolHandler("resource") .QueryInterface(Ci.nsIResProtocolHandler) .setSubstitution(subst, Services.io.newURI(img)); var url = `resource://${subst}/`; (this.onCreated = btn => btn.image = url)(bt);
Нельзя тут как-то добавить PanelUI-menu-button, чтобы он тоже мог переноситься?
Эта кнопка не сама по себе, а в составе родительского <toolbaritem>'а,
наверно лучше их не разлучать.
А сам toolbaritem находится за пределами кастомизационных зон,
поэтому только просто устанавливать ему атрибут "removable" бесполезно.
Можно попробовать регистрировать его как "custom" виджет,
а вместо создания подсовывать существующий.
Типа в custom_script.js
(async id => CustomizableUI.createWidget({ id, type: "custom", localized: false, defaultArea: CustomizableUI.AREA_NAVBAR, onBuild(doc) { var item = doc.getElementById(id); item.setAttribute("removable", true); return item; } }))("PanelUI-button");
Отсутствует
Прошу прощения, я тут отсутствовал какое-то время.
egorsemenov06 пишетDumby посмотрите пожалуйста код кнопки в ней тусклая иконка если svg.context-properties.content.enabled стоит в false
Конкретный цвет можно прямо в SVG'шке указать, там, где stroke
А если надо чтобы context-properties подхватывались,
то можно сменить протоколскрытый текстВыделить кодКод:
/* bt.image = img; */ var subst = this.id + "-svg-image"; Services.io.getProtocolHandler("resource") .QueryInterface(Ci.nsIResProtocolHandler) .setSubstitution(subst, Services.io.newURI(img)); var url = `resource://${subst}/`; (this.onCreated = btn => btn.image = url)(bt);
Большое Спасибо!!!!!
Отсутствует
Скрипт 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
Dumby - с возвращением!
Отредактировано Dobrov (30-11-2023 18:35:29)
Отсутствует
Dobrov
И еще один вопрос.
Подскажите, от чего зависит стиль начертания шрифта (обычный, наклонный) и его цвет в быстрых настройках ucf_hookClicks.js?
Например, я добавил свой пункт "Unblock addons.mozilla.org"
pref: ["privacy.resistFingerprinting.block_mozAddonManager","Unblock addons.mozilla.org",,"Enables scripts & addons to run on the addons.mozilla.org page"], Def3el: true, refresh: true, keys: [[true, "Unblock"], [false, "Block (default)"]]
он один в один повторяет "Выполнять скрипты Java"
pref: ["javascript.enabled", "Выполнять скрипты Java",,"Поддержка интерактивных сайтов, рекламы\nтакже разрешает действия горячих клавиш"], Def3el: true, refresh: true, keys: [[true, "Да"], [false, "Нет"]]
но у моего пункта, почему-то, стиль шрифта наклонный, в отличие пункта с обычным шрифтом у "Выполнять скрипты Java".
Отсутствует
iG0R
Отсутствует
b0ttle
Спасибо.
Я это уже сделал через userChrome.css
Просто хотелось бы, чтобы скрипты работали без всяких лишних дополнительных движений.
Отсутствует
iG0R. Так не бывает) Как это, без лишних движений?
У меня обычный шрифт, может не так вписали?
Setup = [ { pref: ["privacy.resistFingerprinting.block_mozAddonManager","Unblock addons.mozilla.org",,"Enables scripts & addons to run on the addons.mozilla.org page"], Def3el: true, refresh: true, keys: [[true, "Unblock"], [false, "Block (default)"]] },null, { // быстрые настройки. есть Def3el: несовпадения выделяются pref: ["dom.disable_open_during_load", "Всплывающие окна"], Def3el: true, Yellow: false, keys: [[true, "Блокировать"], [false, "Разрешить"]],
Отредактировано b0ttle (02-12-2023 13:44:09)
Отсутствует
Подскажите, от чего зависит стиль начертания шрифта (обычный, наклонный) и его цвет в быстрых настройках ucf_hookClicks.js?
Иконка зелёная или серая и шрифт обычный - значит опция в значении по-умолчанию, для вашей настройки это false.
Цвет других иконок задаётся для каждой строки подменю, например Blue ставлю, если опция изменена, но не критично. Пример всех цветов в строке: "Режим прокси"
если в pref:…… прописано значение для "Def3el", то текст будет красным, если опция не равна Def3el и не по-умолчанию. В новой версии скрипта вместо красного шрифта будет красный ореол текста.
По двойному разделителю в менюшке поиска не знаю, у меня на разных профилях этого нет.
Отредактировано Dobrov (02-12-2023 19:29:43)
Отсутствует
Dumby, здравствуйте.
Может есть у Вас мысли, которые можно записать в виде скрипта. Но с начала немного о прошлом, есть три расширения в которых есть такой функционал это DownThemAll, Download Manager (S3) и совсем старинное Preserve Download Modification Timestamp. Все они умеют сохранять дату создания (брать дату с сервера) у скачиваемых файлов и присваивать конечному (скаченному). Даже существует по этому поводу Bug 733954, ему уже 12 лет. Так вот есть ли такая возможность реализовать для UCF?
-
Real UA: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0
Жизнь иногда такое выкидывает, что хочется подобрать...
Отсутствует
умеют сохранять дату создания (брать дату с сервера) у скачиваемых файлов и присваивать конечному (скаченному)
В смысле присваивать как дату изменения?
Вроде как лиса не умееет присваивать файлам дату (именно) создания.
Я посмотрел как это сделано в S3, и, если правильно понял,
то там что-то типа такого (весьма упрощённый набросок),
но тестировать это мне особо негде.
В custom_script.js
(async (url, ...cc) => { var re = /^.*\//; var f = Components.Constructor(...cc); var setLastModified = (file, date) => { if (file.exists()) file.lastModifiedTime = date; } var {Downloads} = ChromeUtils.importESModule(url); (await Downloads.getList(Downloads.ALL)).addView({ onDownloadChanged(download) { if (download.succeeded) try { var date = new Date(download.saver.entityID.replace(re, "")); +date && setTimeout(setLastModified, 2e3, f(download.target.path), date); } //catch(ex) {console.error(ex);} catch {} } }); })( "resource://gre/modules/Downloads.sys.mjs", "@mozilla.org/file/local;1", "nsIFile", "initWithPath" );
Отсутствует