Добро пожаловать в дополнения Thunderbird.
Добавляйте дополнительные функции и стили, чтобы настроить Thunderbird по своему вкусу.
ЗакрытьОтзывы на userChromeJS
8 отзывов на это дополнение
Рейтинг 5 из 5 звёзд
Excellent! I've been hacking the UI a lot. This is essential to me.
I've used it to get rid of the Windows-supplied title bar and have added my own to several of the Thunderbird Windows &amp; Dialogs, like how tabs-in-titlebar (Advanced Preferences: "browser.tabs.inTitlebar" (oops! Is that "mail.tabs.drawInTitlebar" instead???), <body> tag attribute "tabsintitlebar") work in the main Window.
Enhancement Idea:
- add more Window/Dialog types - I hacked this extension to add filterListDialog and FilterEditor. Perhaps more coming.
Can you submit a pull request for your changes at https://github.com/Extended-Thunder/userChromeJS ?
Рейтинг 5 из 5 звёзд
Version 1.2 made Thunderbird Supernova convenient for me ref https://support.mozilla.org/en-US/questions/1428352
Рейтинг 5 из 5 звёзд
Not work with 115. Please update thx.
Это отзыв для предыдущей версии этого дополнения (1.0.1).Рейтинг 5 из 5 звёзд
@Dan: In order to make it work, you need to change getURLSpecFromFile to getURLSpecFromActualFile.
Это отзыв для предыдущей версии этого дополнения (1.0.1).That fix was already made in v1.0.1 which was released on July 4.
Рейтинг 5 из 5 звёзд
Lost all my buttons with 102.0. Will an update for the new version be possible?
Edit: thanks for the reply.
Ok found the problem. Your addon is indeed still working however the code for creating separate buttons with .uc extension no longer does. You posted it previously:
let protocolHandler = Services.io.getProtocolHandler("file").
QueryInterface(Components.interfaces.nsIFileProtocolHandler);
let userChromeDirectory = Services.dirsvc.get("UChrm", Ci.nsIFile);
for (let file of userChromeDirectory.directoryEntries) {
if (! file.leafName.endsWith(".uc.js"))
continue;
let url = protocolHandler.getURLSpecFromFile(file);
Services.scriptloader.loadSubScriptWithOptions(url, {
target: document.defaultView,
charset: "UTF-8",
ignoreCache: true
});
}
If the code is placed in userchrome then it's good.
I'm not sure what you mean by "buttons" or what "buttons" have to do with userChromeJS. I just tested userChromeJS with TB102 today and it seems to work just fine. If there is code in your userChrome.js file that's creating buttons of some sort, and that code is no longer working in TB102, then I don't think that's because userChromeJS isn't working, I think it's because the code isn't working, and that's not anything userChromeJS can fix.
In any case this isn't the right place to seek support for the add-on. Please see the support email address on the add-on home page for further assistance.
Рейтинг 5 из 5 звёзд
I appreciate you making the addon work
Это отзыв для предыдущей версии этого дополнения (1.0).Рейтинг 5 из 5 звёзд
Thanks. This addon was recommended to add some code so that Lightning calendar events could be edited when clicked on in Thunderbird 91 (rather than the extra step introduced) . It all worked perfectly!
Это отзыв для предыдущей версии этого дополнения (1.0).Рейтинг 4 из 5 звёзд
Well, it works, but not without problems (I think so)...
I have some little scripts for custom buttons, they work fine with the setup in thunderbirds 68.x folders described here:
https://www.thunderbird-mail.de/forum/thread/80290-anpassung-per-userchromejs-per-script-ab-version-60/
I switched full to this AddOn (have deleted all added extra files from above).
Now only userChrome.js is loaded. Scripts in this file works well. But no extra userscript named as *.uc.js will work.
It is not possible to set userChrome.import("*", "UChrm").
And I can't figure out how to run the userscripts.
So I deleted this add-on, but:
Don't know for sure, but after deleting this addon I had trouble to clear the profile. I had duplicate custom buttons (no double scripts) in the menu and the positions of the buttons won't save.
I copied a backup profile and worked on, everything is fine again.
This add-on has nothing to do with the problems you had after deleting it.
This add-on is not a full replacement for the old one. It doesn't claim to be. As the description says, all this add-on does is load userChrome.js in every window.
I'm happy to accept pull requests to add additional functionality. See jikamens/userChromeJS on github.
Here's an example of how to implement the *.uc.js functionality yourself in your userChrome.js file:
let protocolHandler = Services.io.getProtocolHandler("file").
QueryInterface(Components.interfaces.nsIFileProtocolHandler);
let userChromeDirectory = Services.dirsvc.get("UChrm", Ci.nsIFile);
for (let file of userChromeDirectory.directoryEntries) {
if (! file.leafName.endsWith(".uc.js"))
continue;
let url = protocolHandler.getURLSpecFromFile(file);
Services.scriptloader.loadSubScriptWithOptions(url, {
target: document.defaultView,
charset: "UTF-8",
ignoreCache: true
});
}
Для создания своих подборок вам необходимо иметь учётную запись на сайте дополнений Mozilla.