"Spielverderber"
will ich bestimmt nicht sein, Vorschlag getestet, geht trotzdem nicht; Fehler liegt bestimmt irgendwo in meinem Profil; was soll's, bei den Anderen klappts, das ist die Hauptsache...
"Spielverderber"
will ich bestimmt nicht sein, Vorschlag getestet, geht trotzdem nicht; Fehler liegt bestimmt irgendwo in meinem Profil; was soll's, bei den Anderen klappts, das ist die Hauptsache...
beim ersten Klick, beim Zweiten dann nicht mehr
Auch mit dem 'Neuen' ist es leider so (FF135), aber egal ich nutze das Script nicht..
Funzt hier (Linux, FF135) beim ersten Klick, beim Zweiten dann nicht mehr. Konsole sagt auch nach Neustarts: nichts.. Icon ist immer vorhanden
Das sieht für mich so aus als würde ein anderes Script dazwischengrätschen, das manchmal früher oder eben später startet; vielleicht dieses ähnlich programmierte Wetter-Script?
Und wenn ein Skript nicht mehr läuft, dann sollte man sowieso mal in der Konsole nachschauen, ob da eine Meldung vorliegt.
Sehe ich genauso (Wenn man wie ich die Konsole gerade 'nicht auf dem Zettel' hat, könnten auch die 'grauen Zellen' helfen).
Bleibt natürlich jedem selbst überlassen, die Zeile mit 'console.log' nach deinem Vorschlag anzupassen...
Ist hier schon erweitert (Version für Dummies). Danke nochmal!
die richtige Toolbar-ID im Array
Genau das war mein Fehler! Vielen Dank für die neue Version und den Tipp.
EDIT:
Edit: Noch als Hinweis: In der Konsole sollte bei nicht vorhandener Toolbar eine Warnung ausgegeben worden sein.
Habe ich nicht drauf geachtet. Oder als zusätzliche, gut sichtbare Warnung könnte ein alert( "Warning: Toolbar [" + toolbarID + "] unknown! File: 'FixToolbarButtons.uc.js'"); hilfreich sein?
Aktuellste Version: 02.02.2025 v0.2
ucjs_unified-extensions-button + 'Verschiebe'-Script funzt leider nicht mehr.
Habe es jetzt angepasst.
Läuft, vielen Dank!
BrokenHeartDanke! Erklärung: Das Dropdown popt eine hundertstel sec. auf, u.U. fehlt auch in dem Script nur ein setAttribute.
Wäre gut, wenn das dann jemand meldet, damit ich dafür einen neuen Listener/Handler erzeugen kann.
Ich hoffe, dass ich das richtig verstanden habe? Hier funktioniert der #unified-extensions-button nicht mehr nach dem Verschieben mit diesem Script:
//B_Move_Extensions.uc.js
(function() {
if (!window.gBrowser) return;
/* Konfiguration */
const origID = "unified-extensions-button",// ID des originalen Buttons
label = "Erweiterungen",
tooltiptext = "Erweiterungen-Button";
/* Ende Konfiguration */
const menuButton = document.getElementById(origID),
buttonID = 'ucjs_' + origID;
if (!CustomizableUI.getPlacementOfWidget( buttonID )) {
try {
CustomizableUI.createWidget({
id: buttonID,
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
let toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbaritem');
toolbaritem.id = buttonID;
toolbaritem.className = 'chromeclass-toolbar-additional';
toolbaritem.setAttribute('label', label);
return toolbaritem;
}
});
if (!CustomizableUI.getPlacementOfWidget( buttonID )) {
menuButton.style.display = 'none';
return;
};
} catch(e) {
menuButton.style.display = 'none';
return;
};
};
setTimeout(function() {
document.getElementById(buttonID).appendChild(menuButton);
menuButton.setAttribute('consumeanchor', buttonID);
menuButton.setAttribute('label', label);
menuButton.setAttribute('tooltiptext', tooltiptext);
}, 0);
}());
Alles anzeigen
Da irrst Du. CSS wird hier als Inline-Stil eingefügt, siehe dir Zeile 19 im Scriptcode an.
Ich habe mich u.U. falsch ausgedrückt, ich meinte dieses Konstrukt oder ähnlicht:
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(`
`), null, null);
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
Aber das ist eh egal, ich bin hier raus...
Ich verabschiede mich mal aus diesem Thema. Schade, ich dachte ich könnte helfen...Aber dem TE ist ja schon geholfen...Dem anderen Zwischenrufer mit dem Mac ist scheinbar nicht zu helfen...
Weshalb hast du das Icon mit diesem Code 28px gross gemacht?
Habe ich doch nicht, das ist das Original der verlinkte Datei..Den Rest lasse ich mal so als 'unqualifizierte Äußerung eines Unwissenden' stehen...
Das liegt an:
#browser-toolbox-button.toolbarbutton-1.chromeclass-toolbar-additional image.toolbarbutton-icon {
width: 28px !important;
height: 28px !important;
fill: #83ee1a !important;
fill-opacity: 1 !important;
}
(Und das geht auch nur wenn irgendwo im Quelltext des .toolbarbutton-icons ein overflow:hidden; steht)
Zu kleine .svg's kann man meist über die viewBox vergrößern, dann kann man sich die Größenangaben im CSS sparen. Beispiel:
16synchronization_large_moz.svg/16synchronization_moz.svg
Weiterführender Link:
Dein Button funktioniert bei mir auch unter den 'Testbed.' und hat kein Base64 (besser). Aber im Überhangmenü (bei mir) ist das Icon (Eigenes .svg Icon mit 16x16 px )sehr groß...Das einzige Script, dass ohne CSS auskommt ist das von hier (das Erste):
Das Script ist aber wohl die Version von Speravir ; meine grobe/alte - für mich am Mac funktionierende Version wäre hier.
Allerdings funktioniert hier auch die Version von Speravir.
Danke, ist hier (Linux) genau so, nur diese Beiden funktionieren. Werde morgen mal versuchen die Fehler zu finden.
aber hier mal das Restart-Script angepasst
Danke, aber ich bräuchte schon ein Script, dass unter den besagten Testbedingungen auf dem Mac läuft. Und mit Iconeinbindung per relativem Pfad. Ein möglicher Fehler könnte auch genau dadurch verursacht werden. Denn dieser Button funktioniert:
'Entwicklerwerkzeuge-button.uc.js' aus RE: Div. Skripte funktionieren im aktuellem Nightly nicht mehr
Hier ist das Icon per CSS eingebunden
Vielleicht ist das wieder zumindest teils ein Mac Problem
Naja, unter Linux habe ich ja auch das Problem.
ausser die welche ich schon abgeändert habe
Könntest Du zwecks Vergleich mal ein 'einfaches' Script hier reinstellen?