Neue, von mir angepasste Version.
JavaScript
// JavaScript Document
// QuickLinkButton-about:about.uc.js
// Source file https://www.camp-firefox.de/forum/thema/135613/?postID=1213791#post1213791
// Source file https://www.camp-firefox.de/forum/thema/139289/?postID=1271890#post1271890
/* ----------------------------------------------------------------------------------- */
/* Zu beachten ist, dass die Grafiken sich im richtigen Ordner befinden müssen */
/* %appdata%\Mozilla\Firefox\Profiles\"Profilname"\chrome\icons */
/* ----------------------------------------------------------------------------------- */
(function() {
if (location.href !== 'chrome://browser/content/browser.xhtml') return;
try {
CustomizableUI.createWidget({
id: 'link-button-about',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
let toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
let props = {
id: 'link-button-about',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
removable: 'true',
label: 'Quicklink: about:about',
tooltiptext: 'Quicklink:\nabout:about',
};
for (var p in props) {
toolbaritem.setAttribute(p, props[p]);
}
return toolbaritem;
}
});
} catch(e) {};
document.getElementById('link-button-about').addEventListener('click', event => {
if (event.button === 0) {
openTrustedLinkIn("about:about", "tab")
}
});
// Pfad zum Profilordner
let ProfilePath = Services.dirsvc.get("ProfD", Ci.nsIFile).path.replace(/\\/g, "/");
// Pfad in den entsprechenden Unterordner
let IconPath = '/chrome/icons/';
// Name & Dateiendung des anzuzeigenden Symbols!
let ButtonIcon = "firefox.svg";
// Erstelle ein img-Element, um zu überprüfen, ob die Grafik geladen werden kann
let img = new Image();
img.src = "file:" + ProfilePath + IconPath + ButtonIcon;
img.onload = function() {
// Wenn die Grafik geladen werden kann, setze das listStyleImage
document.getElementById('link-button-about').style.listStyleImage = 'url("' + ("file:" + ProfilePath + IconPath + ButtonIcon) + '")';
document.getElementById('link-button-about').style.color = '#f1b508'; // Hier wird die Iconfarbe direkt gesetzt
};
img.onerror = function() {
// Wenn die Grafik nicht geladen werden kann, verwende das Fallback-Icon
document.getElementById('link-button-about').style.listStyleImage = 'url("chrome://global/skin/icons/warning.svg")';
document.getElementById('link-button-about').style.color = 'red'; // Hier wird die Iconfarbe direkt gesetzt
};
})();
Alles anzeigen