Sind das nur Schreibfehler?
userChrom.js
.uc.jc
wenn dann:
userChrome.js und uc.js
Sind das nur Schreibfehler?
userChrom.js
.uc.jc
wenn dann:
userChrome.js und uc.js
Sorry, das waren Schreibfehler.
Sind korrekt benannt.
Sind korrekt benannt.
Ok.
Teste bitte mal dieses Restart-Skript:
// Restart_Firefox.uc.js
// RestartFirefoxButtonM.uc.js
// v. 0.8
// Source file https://www.camp-firefox.de/forum/thema/126132/?postID=1093563#post1093563
// Source file https://www.camp-firefox.de/forum/thema/139338/?postID=1271880#post1271880
// Linksklick if (event.button == 0)
// Mittelklick if (event.button == 1)
// Rechtsklick if (event.button == 2)
(function() {
if (location.href !== 'chrome://browser/content/browser.xhtml') return;
try {
CustomizableUI.createWidget({
id: 'restart-button2a',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
var toolbaritem = aDocument.createXULElement('toolbarbutton');
let props = {
id: 'restart-button2a',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
label: 'Neustart',
tooltiptext: 'Neustart (inkl. SkriptCache Löschen)',
// Hier wird die Hintergrundfarbe und die Iconfarbe direkt gesetzt
//style: 'background-color: #FF5733; color: white;'
//style: 'color: #f60000;',
};
for (let p in props)
toolbaritem.setAttribute(p, props[p]);
// 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 = "reload.pn";
// 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
toolbaritem.style.listStyleImage = 'url("' + ("file:" + ProfilePath + IconPath + ButtonIcon) + '")';
// toolbaritem.style.fill = 'red'; // Hier wird die Iconfarbe direkt gesetzt
};
img.onerror = function() {
// Wenn die Grafik nicht geladen werden kann, verwende das Fallback-Icon
toolbaritem.style.listStyleImage = 'url("chrome://global/skin/icons/reload.svg")';
toolbaritem.style.fill = 'red'; // Hier wird die Iconfarbe direkt gesetzt
};
return toolbaritem;
}
});
} catch(e) { };
document.getElementById('restart-button2a').addEventListener('click', event => {
// rechte Maus Neustart
if (event.button == 2) {
Services.startup.quit(Ci.nsIAppStartup.eRestart | Ci.nsIAppStartup.eAttemptQuit);
}
// linke Maus Neustart mit Löschung des Start-Caches
if (event.button == 0) {
event.preventDefault();
Services.appinfo.invalidateCachesOnRestart();
Services.startup.quit(Ci.nsIAppStartup.eRestart | Ci.nsIAppStartup.eAttemptQuit);
}
// Mittelklick
if (event.button == 1) {
// event.preventDefault();
// Services.appinfo.invalidateCachesOnRestart();
// Services.startup.quit(Ci.nsIAppStartup.eRestart | Ci.nsIAppStartup.eAttemptQuit);
openTrustedLinkIn("about:config", "tab");
}
});
let sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
let uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(`
#restart-button2a.toolbarbutton-1.chromeclass-toolbar-additional image.toolbarbutton-icon {
width: 32px !important;
height: 32px !important;
}
`), null, null);
sss.loadAndRegisterSheet(uri, sss.AUTHOR_SHEET);
})();
Alles anzeigen
Sollte das auch nicht funktionieren, dann passt etwas an deinen Vorbereitungen nicht.
So sieht das mit dem Skript aus:
