Firefox and GTK4 apps don't follow Breeze theme

Operating System: Manjaro Linux 
KDE Plasma Version: 5.27.6
KDE Frameworks Version: 5.107.0
Qt Version: 5.15.10
Kernel Version: 6.3.8-4-MANJARO (64-bit)
Graphics Platform: Wayland


Have you tried Opening System Setting and Navigating to Appearance → Application Style, and in Application Style selecting ‘Configure GNOME/GTK Application Style’

I have selected Breeze, and as far as I can tell the GNOME apps follow my Breeze-Dark Theme.

I’m on X11 though, if that makes a difference.

Operating System: Manjaro Linux 
KDE Plasma Version: 5.27.5
KDE Frameworks Version: 5.106.0
Qt Version: 5.15.9
Kernel Version: 6.1.31-2-MANJARO (64-bit)
Graphics Platform: X11
Processors: 4 × Intel® Pentium® CPU N3540 @ 2.16GHz
Memory: 7.6 GiB of RAM
Graphics Processor: Mesa Intel® HD Graphics
Manufacturer: Notebook
Product Name: W54_W94_W955TU,-T,-C
System Version: Not Applicable

It’s already set to use Breeze for GTK apps, and it works as you can see in the above screenshot for GTK3 apps, but it fails with GTK4 and Firefox (since v114) contextual menu.

As far as Firefox goes, it’s nearly impossible since it uses an embedded theming. The FF in the screenshot is heavily modified with a custom css and FF Color on top. And it still will do its own settings. For example,the blue in that menu is something that, as far as I know, cannot be changed. Even with the Mozilla’s own FF color addon, you cannot change highlights ( and some). More or less similar happens to gtk4 apps that have libadwaita stuff in them. You can do a few minor changes in the gtkk4.css but it’s hardly worth it. It doesn’t matter whether the gtk theme is set in the system settings or if you’d launch the app with a theme variable ( Exec=env GTK_THEME=…), it’s in the code of the app itself.

1 Like

Yeah Firefox is in a Theme class of it’s own.

This started around version 89-ish, when they changed the entire layout ( FF Proton or something). Since, they’ve gradually changed stuff back and forth. Personally I had to change the userchrome.css a zillion times cause they keep changing everything. And like I said, although that color addon is made by them, it’s not updated or not capable to fully work. The settings are there alright, but they simply don’t work. Mozilla…

This was done recently by Mozilla in Firefox v114, by removing native theming of contextual menu and forcing some ugly GTK4 Adwaita theme inside their browser without caring about other desktops. 1837651 - Contextual menu doesn't follow system theme

1 Like

To get correctly themed (context-) menus back, the following works for me:

  • In Firefox go to about:config
  • set widget.gtk.non-native-menu-styling = false
  • restart Firefox

widget.gtk.non-native-menu-styling doesn’t work on Firefox 116.0.3

That’s right - unfortunately I haven’t found any other way so far to get Breeze themed menus back :frowning:

I’m afraid right now it can only be achieved ( or closely) with a userchrome.css. Which is also a pain cause them Mozilla guys keep changing everything. I’m fairly sure someone figured out an entire css to override the default looks but if there’s any breeze specific one, I’m afraid not. I’m already happy with the few tweaks I did in terms of color scheme for the toolbar and bookmark popups. But the overall popup for menu ( highlight) remains the same. I would have to look it up cause it’s quite hardcoded.

Even Firefox Color add-on started to fail coloring search and menu highlight color.

Yes. Made by…themselves. Only thing that works as far as the menu popups go, is the border-color. The searchbar ( omnibar…whatever they name it) background works. As for that outline…no idea how to css it. Like I said, someone prabably already made a 116 compatible one css store but…