Rorschachs Tagebuch

Firefox 3 und dunkle GTK-Themes Dezember 30, 2008

Filed under: Linux,OpenSource — Rorschach @ 19:37
Tags: , , , ,

Die Sache mit dunklen GTK-Themes und Firefox ist ein leidiges Thema. All zu oft machen die hübschen dunklen GTK-Themes die es so gibt, die Benutzung des Firefox sehr schwer. Das Theme mischt sich in die Farbdarstellung von Webseiten-Elementen wie einem Textfeld oder einer Editbox ein und das Resultat ist dann zum Beispiel schwarzer Text auf schwarzem Hintergrund.

Deswegen möchte man meist abstellen, dass das GTK-Themes die Webseitendarstellung beeinflusst. Und eigentlich gibt es dazu schon seit Ewigkeiten eine Option unter „Bearbeiten -> Einstellungen -> Inhalt -> Farben… -> Benutzte Systemfarben“. Doch dieses Feld zu aktivieren hatte das Problem weder unter Firefox 2 gelöst, noch löst es das Problem unter Firefox 3.

Die Lösung für Firefox 2 lag in einer modifizierten forms.css und einer kleinen Abänderung der html.css. Beschrieben ist das zum Beispiel hier: http://wiki.ubuntuusers.de/Firefox/Sonstiges .

Unter Firefox 3 funktioniert das leider nichtmehr. Im Mozilla Bugtracker lässt sich jedoch eine Lösung finden: https://bugzilla.mozilla.org/show_bug.cgi?id=433885.

Und zwar muss man am Ende jedes einzelnen Abschnittes in der: ~/.mozilla/firefox/*.default/chrome/userContent.css die folgende Zeile einfügen:

-moz-appearance: none !important;

Dadurch wird die Benutzung des GTK-Themes für diesen Bereich verboten. Wie sich das auswirkt, kann man zum Beispiel hier sehen. Das erste Bild zeigt eine Webseite mit einem Textfeld und Firefox 3 + Carbongold GTK-Theme:
ff3_dark_gtk_theme_probl__dark

Nun zum Vergleich das selbe Textfeld mit gleichem Browser und GTK-Theme nur mit dem oben genannten Fix angewandt:
ff3_dark_gtk_theme_probl__bright

Hier mal noch ein Patch für die Standard-userContent.css, welches den Fix auf sämtliche in der Standard-userContent.css enthaltenen Bereiche anwendet:

--- chrome/userContent.css.old	2008-12-30 18:30:43.000000000 +0100
+++ chrome/userContent.css	2008-12-30 18:25:55.000000000 +0100
@@ -37,18 +37,21 @@
    border: 2px inset white;
    background-color: white;
    color: black;
+   -moz-appearance: none !important;
 }
 
 textarea {
    border: 2px inset white;
    background-color: white;
    color: black;
+   -moz-appearance: none !important;
 }
 
 select {
    border: 2px inset white;
    background-color: white;
    color: black;
+   -moz-appearance: none !important;
 }
  
 input[type="radio"],
@@ -56,10 +59,12 @@
    border: 2px inset white ! important;
    background-color: white ! important;
    color: ThreeDFace ! important;
+   -moz-appearance: none !important;
 }
 
 *|*::-moz-radio {
    background-color: white;
+   -moz-appearance: none !important;
 }
 
 button,
@@ -69,6 +74,7 @@
    border: 2px outset white;
    background-color: #eeeeee;
    color: black;
+   -moz-appearance: none !important;
 }
 
 body {
@@ -76,4 +82,5 @@
    color: black;
    display: block;
    margin: 8px;
+   -moz-appearance: none !important;
 } 

Einfach den Patch in eine Datei ff.patch kopieren und nach ~/.mozilla/firefox/*.default verschieben. Im Terminal in dieses Verzeichnis navigieren und den Patch mit dem Befehl:

patch -p0 < ff.patch

anwenden.

Für die meisten ist das Problem damit behoben. In ein paar hartnäckigen Fällen jedoch mischt sich das GTK-Theme auch in Firefox selbst ein. Und so kann es zum Beispiel auch dafür sorgen, dass die Url-und Suchleiste davon betroffen sind und schwarze Schrift auf schwarzen Hintergrund annehmen. Um dies zu beheben muss man die Datei ~/.mozilla/firefox/*.default/chrome/userChrome.css mit einem Editor öffnen bzw. erstellen wenn sie noch nicht existiert.
Da befindet sich oft nur ein Eintrag ganz am Ende drin mit dem Namen „textbox“. Egal ob er bereits drin ist oder nicht solltet ihr den alten Eintrag rauswerfen und den neuen Eintrag hinzufügen, damit er so aussieht:

textbox 
{ 
       -moz-appearance: none !important;
} 

Also wenn ihr fertig seid sollte nur dieser einzige textbox-Eintrag in der userChrome.css stehen. Danach die Datei abspeichern und Firefox neustarten.

 

4 Responses to “Firefox 3 und dunkle GTK-Themes”

  1. Keba Says:

    Vielen, vielen Dank für das Theme und den Tipp, leider funktioniert er bei mir nicht ganz: http://paste.pocoo.org/show/97484/

    Nun wird auf eine Eingabe gewartet, »ff.patch« funktioniert leider nicht. Weißt du was man da machen kann?

    Grüße und einen guten Rutsch, Keba.

  2. Rorschach Says:

    Okay das sieht so aus, als würde die Datei bei dir garnicht existieren. Leg sie mal mit diesem Inhalt: http://paste.ubuntuusers.de/393494/ von Hand an. Wär cool wenn du bescheid sagen könntest ob es dann bei dir geklappt hat.

    Grüsse

  3. Keba Says:

    Frohes neues erstmal🙂

    Wer lesen kann ist klar im Vorteil – stimmt: Die Datei fehlte wohl. 3/4 Sachen haben scheinbar auch funktioniert – mehr leider nicht, siehe http://paste.pocoo.org/show/97560/

    Grüße, Keba.

  4. Rorschach Says:

    Hey Keba,
    dir auch frohes neues🙂 Wenn du die Datei genommen hast die ich im Ubuntuusers-Pastebin hochgeladen habe brauchst du den Patch nichtmehr zu verwenden, da ist er schon angewandt, deswegen auch die Meldungen beim Patchen.

    ciao


Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s