Icon für Übersetzung ausblenden
-
Stoiker -
3. Oktober 2023 um 19:29 -
Erledigt
-
-
Lässt sich das Icon per Skript ausblenden?
In die userChrome.css Datei:
Funktion kompl. deaktivieren:
about:config
den Wert:
browser.translations.enable
auf false setzen.
Fx Neustart dann.
-
Funktioniert wie immer super. Danke dir.
Aber eine Verständnisfrage noch: wenn ich den Haken (s. Screenshot) rausnehme, dann ist die "Engine" im Hintergrund wahrscheinlich noch aktiv aber tut halt nix. Also das Menü erscheint dann nicht mehr, das würde mir vorerst reichen. Der about:config-Wert dreht ja der kompletten Funktion den Saft ab, richtig?!
-
dreht ja der kompletten Funktion den Saft ab, richtig?!
Ja.
wenn ich den Haken (s. Screenshot) rausnehme,
Ja.
Danke dir.
Gerne wie immer
-
Hier noch eine komplizierte (und auch überflüssige) Lösung:
Spoiler anzeigen
Da ich die url-bar möglichst clean halte, habe ich die Icons so ausgeblendet:
CSS/*Fingerprinting, und andere Addons ausblenden*/ #page-action-buttons { display: none !important; }
Ich möchte aber nicht auf die Übersetzungsfunktion (und einen Button) verzichten. Deshalb verschiebe ich den Button mit diesem bekannten
script wohin ich möchte (wenn die Funktion gefordert ist, erscheint der Button an der definierten Stelle):
JavaScript
Alles anzeigen//B_Uebersetzung.uc.js (function() { if (!window.gBrowser) return; /* ------ */ const origID = "translations-button";// ID des originalen Buttons const label = "Website-Übersetzung"; const tooltiptext = "Website-Übersetzung"; /* ------ */ 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); }());
Da die Buttonicons noch zentriert werden müssen, könnte man diese so ähnlich anpassen:
CSS
Alles anzeigen/*B_Uebersetzung.css*/ #translations-button-icon { margin-top: -2.5px !important; margin-bottom: 2.5px !important; transform: scale(0.92, 0.92) !important; overflow: hidden !important; } #translations-button-locale { margin-top: -5px !important; overflow: hidden !important; } #translations-button-circle-arrows { margin-top: -2.5px !important; margin-bottom: 2.5px !important; overflow: hidden !important; }
-
Aber eine Verständnisfrage noch: wenn ich den Haken (s. Screenshot) rausnehme, dann ist die "Engine" im Hintergrund wahrscheinlich noch aktiv aber tut halt nix.
Um vielleicht noch etwas klarzustellen, was passiert, solange nicht tatsächlich eine Übersetzung angefragt wird: Firefox führt Code aus, um die Sprache einer Website zu erkennen. Das passiert auch, wenn die Option deaktiviert ist, dass immer eine Übersetzung angeboten wird, weil sich das nur auf das automatische Aufploppen des Übersetzungsdialogs bezieht und Firefox dann ja trotzdem das Symbol in der Adressleiste anzeigen möchte, wenn es angebracht ist. Das beeinflusst die Leistung von Firefox aber in keiner spürbaren Weise. -
Danke für die Codes, für mich wäre das zu viel "Kanonen auf Spatzen", aber wer es mag ...
Danke für die Ausführung.