Scrollbar im Firefox ändern

  • Firefox-Version
    92.0.1
    Betriebssystem
    Ubuntu 20.04

    Hallo,

    kann es sein, dass FF ab einer bestimmten Version die GTK-Theme-Einstellungen nur noch aus dem aktuellen Theme "zieht" und Anpassungen in der Datei ~/.config/gtk-3.0/gtk.css ignoriert? Ich nutze das Default-Theme Greybird und der Scrollbalken im FF sieht aus wie bei Greybird (keine Pfeile, sehr dünn und deutlicher Rand um den Slider). Passe ich die Optik über die gtk.css an geht das in allen GTK3-Anwendungen, nicht aber im Firefox.

    Ich würde gern die gleiche Optik auch im Firefox nutzen. Einige Sachen wie die Breite kann man über about:config ändern, ich vermute aber mal dem sind Grenzen gesetzt. Ein komplett anderes Skin will ich nicht installieren. Gibt es im Firefox eine entsprechende Datei wie die 'gtk.css' unter Linux wo ich die Einstellungen rein kopieren kann?

  • Hallo,

    Firefox nutzt keine nativen Scroll-Leisten bei GTK, da Mozilla kein GTK in Kind-Prozessen lädt (aus Sicherheitsgründen). Die Breite kannst du anpassen, aber aus deinem Beitrag lese ich heraus, dass dir das bekannt ist. Inwiefern hier via userChrome.css oder Script etwas machbar ist, kann ich mangels Linux nicht sagen.

  • Die Datei userChrome.css wäre die richtige Datei, wenn sich Scroll-Leisten überhaupt auf diese Weise anpassen lassen. Das sehe ich nicht zwingend als gegeben. Scroll-Leisten sind eigentlich Teil des Betriebssystems und nicht der Produktoberfläche und als solche speziell, was die Anpassbarkeit betrifft. Windows nutze ich ebenfalls nicht, sondern macOS, dort würde das via userChrome.css definitiv nicht funktionieren. Und doch: Scroll-Leisten unterscheiden sich grundlegend je nach Plattform.

  • Am meisten lassen sich die Bildlaufleisten mit folgendem Benutzerskript anpassen:

    Wenn du aber bisher noch nicht Benutzerskripte genutzt hast, musst du erste Vorbereitungen treffen, die hier beschrieben sind:

    userChrome.js/userChrome at master · Endor8/userChrome.js
    Skripte für die Firefox-Erweiterung userChromeJS. Contribute to Endor8/userChrome.js development by creating an account on GitHub.
    github.com

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Bedeutet das, das das unter Linux nicht geht

    Wieso sollte es nicht gehen? Du brauchst nur zwei Orte: den Ordner chrome im Profil für die Datei userChrome.js und die Skripte und den Ordner userChromeJS und die Dateien config.js und config-prefs.js im Installationsverzeichnis. Du musst nur wissen, wo in Linux Profilverzeichnis und Installationsverzeichnis von Firefox liegen.

    Und die Datei firefox-anpassungen.zip wirst du ja auch unter Linux entpacken können.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

    Einmal editiert, zuletzt von milupo (26. September 2021 um 14:50)

  • Ja, aber das ist es auch schon, was du per CSS anpassen kannst. Mit dem Skript lässt sich Einiges mehr anpassen.


    Dharkness Ich sehe gerade, du verwendest Win 10. Daher meine Frage: Kennst du dich mit Linux ein bisschen aus?

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

    Einmal editiert, zuletzt von milupo (26. September 2021 um 15:41) aus folgendem Grund: Ein Beitrag von milupo mit diesem Beitrag zusammengefügt.

  • Ich bin noch in der Lernphase, was mir immer noch ein kleines Rätsel ist, ist wo was liegt, allerdings nicht das Home-Verzeichnis, das ist kein Problem, nur wo z.B. Programme installiert sind.

    Das hängt alles etwas von der Distribution ab, die du verwendest. Für das Profil musst du wissen, dass du im Home-Verzeichnis erst versteckte Dateien anzeigen lassen musst, um den Ordner .mozilla anzuzeigen. Aber ich denke mal, dass du das schon gemacht hast.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Dharkness

    Anwendungsprogramme liegen in /usr/bin

    oder in

    /opt (wenn es Fremdprogramme sind, die nicht aus dem Repo stammen)

    Systemprogramme liegen in /bin, /usr/bin, /sbin, /usr/sbin

    die Einstellungen dazu in /etc

    Das ist nur ein grober Überblick, es kann noch verfeinert werden, aber das sprengt hier den Rahmen.


    milupo

    Klar ist das Script umfangreicher, aber dem TE reicht wohl schon der CSS Schnipsel.

    Einmal editiert, zuletzt von clio (26. September 2021 um 15:55) aus folgendem Grund: Ein Beitrag von clio mit diesem Beitrag zusammengefügt.

  • Jupp, soweit habe ich das gerade überblickt. Um in Fx unter Linux Javascripts zum laufen zu bekommen, habe ich nochmal ganz genau hin geguckt, das hat mich heute deutlich weitergebracht.

    Die ersten Scripts laufen nun unter Linux, das war mal ein erfolgreicher Sonntag.

    Es grüßt,

    Ralf

  • Die ersten Scripts laufen nun unter Linux, das war mal ein erfolgreicher Sonntag.

    Na, das ist doch bestens. Am Anfang klemmt es oft, auch unter Windows. Eine Tücke ist auch der Skript-Cache, den man nach Änderungen beim Firefox-Neustart leeren muss. Aber wenn man dann immer daran denkt ...

    Ach so, das Skript habe ich mir angepasst. Die Standardversion sieht etwas anders aus.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Scroll-Leisten sind eigentlich Teil des Betriebssystems und nicht der Produktoberfläche und als solche speziell, was die Anpassbarkeit betrifft.

    Das würde ich so nicht unterschreiben. Denn ich habe ja explizit Änderungen an der Optik vorgenommen die dann vom Firefox ignoriert werden. Dazu gibt es im Netz recht viele Threads und Fragen. Ich weiß leider nicht genau ab welcher Version (evtl. 68) das auftrat. Es kann aber auch sein, dass Firefox nur die Datei ~/.config/gtk3-0/gtk3.css ignoriert. Hier kann man Anpassungen des Standard-Themes hinterlegen. Alles was hier drin steht "überschreibt" die Einstellungen die im aktuellen Theme stehen. Wenn hier eine Scrolbar-Breite von 40 eingestellt ist und im Theme 20, wird die 20 genutzt. Wenn keine Farbe des eingestellt ist, wird die aus dem Theme genommen.

    Bei mir hat das mit der userChrome.css und userContent.css zunächst nicht funktioniert. Man muss vorher in about:config "widget.non-native-theme.enabled" auf "false" setzen. Dann ein Neustart des Firefox.

  • Das würde ich so nicht unterschreiben. Denn ich habe ja explizit Änderungen an der Optik vorgenommen die dann vom Firefox ignoriert werden.

    Den Teil verstehe ich nicht. Du schreibst, dass du meiner Aussage nicht zustimmst, dass Scroll-Leisten einen speziellen Status haben, was die Anpassbarkeit betrifft, um dann in gleichen Atemzug zu schreiben, dass Firefox deine Regeln ignoriert, was ja genau das bestätigt, was ich geschrieben habe. :/

    Was ich schrieb, stimmt schon: Scroll-Leisten sind normalerweise Teil des Betriebssystems und nicht der Anwendung. Deswegen sehen die Scroll-Leisten ja auch auf jedem Betriebssystem anders aus! Aber Firefox nutzt nicht die nativen Scroll-Leisten des Betriebssystems, sondern rendert diese selbst (in Anlehnung an die native Erscheinung). Dementsprechend wird auch die Datei gtk3.css nicht beachtet, denn dazu müsste GTK in Kindprozessen geladen werden, da die Kindprozesse für die Darstellung von Websites ausschlaggebend sind. Firefox lädt aber kein GTK in den Kindprozessen.

    Ich weiß leider nicht genau ab welcher Version (evtl. 68) das auftrat.

    Das nicht native Theming von OS-Widgets ist erst seit Firefox 89 aktiviert.

    Man muss vorher in about:config "widget.non-native-theme.enabled" auf "false" setzen. Dann ein Neustart des Firefox.

    Das ist nicht nur aus Sicherheits- und Performancegründen nicht empfohlen, sondern hat auch ein Ablaufdatum. Nicht native Widgets sind eine Voraussetzung für die Website-Isolierung ("Fission"), dessen Ausrollung mit Firefox 94 beginnen und mit Firefox 96 abgeschlossen sein wird.

  • Welcher Teil des Ubuntus bei mir für die Optik der Scrolleisten zuständig ist, weiß ich nicht genau. Im Standard-Theme bei Xfce (Greybird) sind die Scrolleisten sehr schmal und ohne Pfeile. In dem Theme sind die ganzen Einstellungen in diversen *.css-Dateien hinterlegt. Will ich irgendetwas ändern, kann ich entweder das Theme als solches ändern oder ich schreibe die Änderungen in die oben genannten gtk3.css im Benutzerverzeichnis. Das System wird weiterhin alle Einstellungen aus den Dateien des aktuelles Theme ziehen. Weiterhin wird geguckt was in der gtk.css steht. Ist z. B. die Breite des Scrollbars sowohl im Theme als auch in der gtk.css festgelegt, nimmt er die Einstellungen aus der gtk.css. Lösche ich die gtk.css nimmt er die aus dem Theme.

    Nun habe ich z. B. die Breite über die Datei geändert und fast alle Anwendungen beachten das auch - außer Firefox. Beim Firefox sieht das so aus als ob nur das Greybird-Theme verwendet wird ohne irgendwelche Anpassungen. Kann durchaus sein, dass Firefox keinen eigenen Scrollbar erzeugt, dann wird evtl. die gtk.css ignoriert. Könnte man testen indem man direkt das Theme ändert, das übersteigt aber meine CSS-Kenntnisse. Das ist mehr als

    Code
    scrollbar { background-color: red; }

    Das ist nicht nur aus Sicherheits- und Performancegründen nicht empfohlen, sondern hat auch ein Ablaufdatum. Nicht native Widgets sind eine Voraussetzung für die Website-Isolierung ("Fission"), dessen Ausrollung mit Firefox 94 beginnen und mit Firefox 96 abgeschlossen sein wird.

    Das heißt? Spätestens mit Version 96 fang ich wieder von vorne an?