egorsemenov06 пишетНо в кнопке так и не появились пункты от "Сохранить всю страницу как PNG"
О даже не посмотрел что там иконки ещё есть думал они в начале только
а можно их сделать что бы они были не такого траурного цвета а вот такого rgb(142, 142, 152) на светлой теме
Отсутствует
egorsemenov06
Иконки зависят от цвета текста, их конечно можно перекрасить но тогда зачем все эти танцы с resource://
Лучше добавить им прозрачности fill-opacity: так цвет разбавится с фоном
var arr = [ "@-moz-document url(chrome://browser/content/browser.xhtml) {", ` #${this.id} menuitem, #content-baseItem, #content-saveItem, #content-editorItem {`, " fill: currentColor !important;", " fill-opacity: .8 !important;", " -moz-context-properties: fill, fill-opacity !important;", " }", " @media (-moz-platform: windows) {", ` #${this.id} menugroup > menuitem {`, " padding-block: .5em !important;", " padding-inline-start: 1em !important;", " }", " }", "}" ];
Отсутствует
Как убрать из персонализации кнопку перезапуска (появилась после установки UserChromeFiles) или хотя бы перекрасить ее в тот же цвет, что и соседние значки (она красная и этим сильно выделяется из ряда остальных кнопок)?
Отсутствует
egorsemenov06
Иконки зависят от цвета текста, их конечно можно перекрасить но тогда зачем все эти танцы с resource://
Лучше добавить им прозрачности fill-opacity: так цвет разбавится с фономскрытый текстВыделить кодКод:
var arr = [ "@-moz-document url(chrome://browser/content/browser.xhtml) {", ` #${this.id} menuitem, #content-baseItem, #content-saveItem, #content-editorItem {`, " fill: currentColor !important;", " fill-opacity: .8 !important;", " -moz-context-properties: fill, fill-opacity !important;", " }", " @media (-moz-platform: windows) {", ` #${this.id} menugroup > menuitem {`, " padding-block: .5em !important;", " padding-inline-start: 1em !important;", " }", " }", "}" ];
СПАСИБО!!!!!ТЕПЕРЬ вообще по феншую
Отсутствует
Как убрать из персонализации кнопку перезапуска
Отключить в настройках Создать панели и кнопки
Или в user_chrome.js найти код кнопки и удалить
это для старого UCF
Перекрасить стилем или в vertical_top_bottom_bar.css изменить
Отредактировано Vitaliy V. (12-05-2024 21:42:10)
Отсутствует
Отключить в настройках Создать панели и кнопки
Благодарю, воспользовался первым, самым простым способом. Я, собственно, UserScriptFiles установил ради возвращения dropmarker'а, дополнительные панели и кнопки мне без надобности. Хотя не исключаю того, что в будущем могут понадобиться еще какие-нибудь скриптты. Кстати, нет ли скрипта для возвращения системного вида скроллбаров (как в Windows 7)? В Firefox 69 есть две настройки в about:config, в 88 версии их уже нет.
Отсутствует
Алексей У., egorsemenov06 и другие "любители" украшательств:
Здесь тема по скриптам, не мусорите в ней. Вопросы по иконкам и оформлению браузера пишут в теме по стилям.
согласен с тобой но иконки то в скриптах
Отсутствует
Dumby и Vitaliy V.
будет время, проверьте мой код на ошибки: ucf_hookClicks.js, ucb_SaveHTML.mjs
Кто пользуется скриптом ucf_hookClicks.js, обновите на версию 3.7, т.к. устранено много ошибок и добавлен функционал
function readFromClip({clipboard} = Services, data = {}){ try {let trans = Cc["@mozilla.org/widget/transferable;1"].createInstance(Ci.nsITransferable), flavor = `text/${parseInt(Services.appinfo.platformVersion) >= 111 ? "plain" : "unicode"}`; trans.init(docShell.QueryInterface(Ci.nsILoadContext)); trans.addDataFlavor(flavor); clipboard.getData(trans, clipboard.kGlobalClipboard); trans.getTransferData(flavor, data); if (data.value) return data.value.QueryInterface(Ci.nsISupportsString).data; } catch {return ""} }
Отсутствует
Ultima2m не используй старый скрипт, он более объёмный, содержит много ошибок и меньше возможностей.
Кроме того, нужен ucb_SaveHTML.mjs, в нём общие функции для ucf_hookClicks.js и ClickPicSave.mjs
Пробуй папку Демо UCF-профиля - на FF 115.0.2 пашет без проблем (объём 407 Кб)
Для старых версий UCF_Firefox 78+. Смотри заголовок в ucf_hookClicks.js и комменты в CustomStylesScripts.mjs.
Отредактировано Dobrov (19-05-2024 08:07:33)
Отсутствует
Dumby
проверьте мой код на ошибки: ucf_hookClicks.js
Да ты шутишь . Я слишком глуп,
чтобы копаться в таком гигантском, fairly cryptic комбайне.
Однако, одну ошибку нашёл.
Строка if(trg.id) Node = trg; делает нечто нехорошее.
Поскольку никакая Node в коде нигде не определена,
эта строка перезапишет window.Node, а это совершенно неприемлимо.
Вот притащи мышь в #navigator-toolbox, затем набери в консоли Node,
и увидишь совсем не то, что должно быть.
Ну, и compat-проблемы из последних.
Вот BrowserReloadEx() — там сделано.
Но продолжают торчать BrowserFullScreen(), BrowserPageInfo(),
и даже BrowserReloadSkipCache() в Mouse[F.N][256]()
Плюс, я говорил, что в 127,
SidebarUI переименовали в SidebarController
но в коде об этом ни слова.
Отредактировано Dumby (20-05-2024 09:10:33)
Отсутствует
Dumby
Вы переделывали кнопочку СВ под UCF. Не могли бы вы её поправить под FF 91 ESR.
В 91 консоль ругается: TypeError: win.navigator.clipboard is undefined.
«The Truth Is Out There»
Отсутствует
Dumby – спасибо!
правлю код и вижу странности на чистом пустом профиле без UCF:
arguments – набрал в консоли и откуда это ??? Array [ "about:home" ]
// ...arguments почему-то работает только с function. Так не пашет: var BrowserEx = () => { function BrowserEx(){ let args = [...arguments], b = args.shift(); eval(`${parseInt(Services.appinfo.version) < 126 ? "Browser"+ b[0].toUpperCase() + b.slice(1) : "BrowserCommands."+ b}(...args)`); }
Отсутствует
TypeError: win.navigator.clipboard is undefined
Ну, navigator.clipboard — это попробовать, пощупать, попривыкнуть к веб-технологиям.
А так-то, в окне браузера есть метод readFromClipboard(), как в 91, так и в 128.
/* async find(e, findPrevious) { var win = e.view.windowRoot.ownerGlobal; var searchString = (await win.navigator.clipboard.readText())?.slice(0, 150); */ find(e, findPrevious) { var win = e.view.windowRoot.ownerGlobal; var searchString = win.readFromClipboard()?.slice(0, 150);
arguments – набрал в консоли и откуда это ??? Array [ "about:home" ]
Что значит откуда?
Видимо, таково значение window.arguments
Так не пашет: var BrowserEx = () => {
У стрелочной функции нет своего arguments, и нет своего this.
Они чужие.
Они будут такие, как в той точке, где эта стрелочная функция родилась.
(() => console.log(arguments))("test"); // Array [ "about:home" ] (function() { (() => console.log(arguments))("test"); // Arguments { 0: "my argument", … } })("my argument");
Отсутствует
Ну, navigator.clipboard — это попробовать, пощупать, попривыкнуть к веб-технологиям.
А так-то, в окне браузера есть метод readFromClipboard(), как в 91, так и в 128.скрытый текстВыделить кодКод:
/* async find(e, findPrevious) { var win = e.view.windowRoot.ownerGlobal; var searchString = (await win.navigator.clipboard.readText())?.slice(0, 150); */ find(e, findPrevious) { var win = e.view.windowRoot.ownerGlobal; var searchString = win.readFromClipboard()?.slice(0, 150);
Dumby, большое спасибо.
«The Truth Is Out There»
Отсутствует
Обновил UCF, изменения касаются custom_script_win.js custom_script_all_win.js теперь это просто по умолчанию пустые файлы добавленные или нет в CustomStylesScripts.mjs,
если у кого то не будет работать некий код например требуется по событию DOMContentLoaded, можно попробовать подключить этот код в domload: [ ... ] или напишите об этом.
Для выполнения кода при закрытии окна unloadlisteners с destructor() пока оставлены для совместимости, но добавленны новые
setUnloadMap(key, func, context)getUnloadMap(key)
getDelUnloadMap(key, del)
key это строка можно писать все что угодно главное не повторять или Symbol()
Также специально для Dobrov добавленны новые параметры для стилей и скриптов см. тут https://github.com/VitaliyVstyle/Vitali … cripts.mjs
Отредактировано Vitaliy V. (26-05-2024 00:52:49)
Отсутствует
Vitaliy V.
Попробовал новую версию на FF126.
Отвалились все кнопки, которые подключены подобным образом:
scriptsbackground: [ // В фоне [System Principal] { func: 'ChromeUtils.importESModule("chrome://user_chrome_files/content/custom_scripts/ReloadUserChromeContentCss.mjs")', },
В консоли пишет: ospath is undefined
Если в файле user_chrome.js, вот в этом месте:
try { if (path) loadSubScript(`chrome://user_chrome_files/content/custom_scripts/${path}`, scope, "UTF-8"); else if ((!isos || isos.includes(OS)) && (!ver || (!ver.min || ver.min <= VER) && (!ver.max || ver.max >= VER))) loadSubScript(`chrome://user_chrome_files/content/custom_scripts/${ospath.replace(/%OS%/g, OS)}`, scope, "UTF-8"); if (func) new scope.Function(func).apply(scope); } catch (e) {Cu.reportError(e);}
переместить if (func) выше:
try { if (func) new scope.Function(func).apply(scope); if (path) loadSubScript(`chrome://user_chrome_files/content/custom_scripts/${path}`, scope, "UTF-8"); else if ((!isos || isos.includes(OS)) && (!ver || (!ver.min || ver.min <= VER) && (!ver.max || ver.max >= VER))) loadSubScript(`chrome://user_chrome_files/content/custom_scripts/${ospath.replace(/%OS%/g, OS)}`, scope, "UTF-8"); } catch (e) {Cu.reportError(e);}
то все кнопки начинают работать нормально, но в консоли всё равно присутствует: ospath is undefined
«The Truth Is Out There»
Отсутствует
unter_officer
Хорошо, забыл добавить проверку ospath для скриптов, посчитал что path или ospath обязательны, но это не так может быть только func,
а вверх добавлять func не вариант он должен выполниться после закрузки скрипта если есть. Короче это исправил проверяйте может что ещё не так.
Отсутствует
Vitaliy V.
У меня .mjs подключены через .js строками
(async url => ChromeUtils.importESModule(url))("chrome://user_chrome_files/content/custom_scripts/....mjs"
);
Старый about:config подключен строкой
{ func: 'ChromeUtils.importESModule("chrome://user_chrome_files/content/aboutconfig/UCFAboutConfigFluent.mjs");' },
Тоже все отвалилось. Фикс не помог.
Отсутствует
Фикс не помог
Да просто не дофиксил , теперь должно работать
Отсутствует
Vitaliy V.
Теперь всё нормально. Спасибо.
Ещё вопросик. Я так понимаю, что новую версию UCF нет смысла пытаться установить на 115 ESR?
«The Truth Is Out There»
Отсутствует
новую версию UCF нет смысла пытаться установить на 115 ESR?
Почему же, так же с патчем css файлов наверняка будет работать, тут не добавленно ничего такого новейшего
.mjs подключенные лоадером нет.
Что за лоадер? Нужен код для проверки...
Отредактировано Vitaliy V. (21-05-2024 01:56:16)
Отсутствует