View previous topic :: View next topic |
Author |
Message |
lue n00b
Joined: 09 Jun 2014 Posts: 14
|
Posted: Mon Jun 09, 2014 10:42 pm Post subject: GTK3 theming broken in KDE 4 [solved] |
|
|
This problem has been affecting me for as long as I can remember, but I've only now gotten around to asking for help on the matter. Using KDE 4.12.5, GTK+ 3.10.8, and the Greybird theme version 1.3.4, this is what I get out of a gtk3 application. The main issues I encounter are very annoying to read menus, and pieces of text being given entirely wrong background colors.
I don't encounter this in any GTK 2 application I run, and fiddling with what theme I want to use for GTK 3 features similar problems, though I'm not sure if that means greybird isn't at fault, or if that means I need to log out or restart to completely change over the theme. I also can't readily tell if this is KDE's fault or not. (Later tonight I'll be more able to log out/restart my computer a few times to test the source of the issue better.)
Since the number of applications using GTK 3 over GTK 2 is bound to go up over time , it would be nice to finally get this taken care of. Here is my emerge --info, and I'll be sure to provide any other information that's needed.
Last edited by lue on Sun Nov 15, 2015 3:12 am; edited 1 time in total |
|
Back to top |
|
|
VoidMage Watchman
Joined: 14 Oct 2006 Posts: 6196
|
Posted: Tue Jun 10, 2014 8:26 am Post subject: |
|
|
I'm not sure if this has been fixed in Qt5, but in Qt4 the way gtk theming is implemented is not only significantly out of date (using not only gconf, but a few settings that not even late Gnome2 kept setting (IIRC)), but also affected only gtk2. As gtk3 theming is completely independent from gtk2, any qtconfig settings for gtk2 wont affect gtk3 apps. |
|
Back to top |
|
|
lue n00b
Joined: 09 Jun 2014 Posts: 14
|
Posted: Tue Jun 10, 2014 8:12 pm Post subject: |
|
|
I just tried to make sure that I change the theme over entirely, and neither logging out nor restarting eliminated the problems I see (using oxygen-gtk for the "other theme" test, as I'd hope that works properly ). So now I know it can't be the specific theme I was using, at least.
I'm not sure what you mean, VoidMage. KDE lets me theme gtk3 programs just fine (that oxygen-gtk theme above does in fact get applied, except for the aforementioned issues with menu colors and text backgrounds). A quick check running "qtconfig" didn't show off any GTK settings, so I'm not entirely sure how I'd even test to see if it's Qt's fault or KDE's.
The only thing I can think of doing now is logging into Xfce and running some gtk3 apps, though if Qt and KDE control the gtk rendering right now, that wouldn't actually tell me anything. |
|
Back to top |
|
|
VoidMage Watchman
Joined: 14 Oct 2006 Posts: 6196
|
Posted: Tue Jun 10, 2014 9:07 pm Post subject: |
|
|
In such case I'm not sure what your problem is - unless I'm missing something KDE4 by itself doesn't affect gtk3 theming at all.
Unless it's that little tidbit, that just to be safe gtk+:3 and gnome-themes-standard should come from the same Gnome release cycle. |
|
Back to top |
|
|
Ant P. Watchman
Joined: 18 Apr 2009 Posts: 6920
|
Posted: Tue Jun 10, 2014 9:08 pm Post subject: |
|
|
Nothing out of the ordinary, GTK3 has screwed everyone over with its "break everyone's themes with a minor update" routine (again). Even the built-in theme is broken with this version, great work GNOME devs!
Fortunately the fix is simple: add gtk 3.12.* (and gtkmm 3.12.* if installed) to p.mask and stick with 3.10. |
|
Back to top |
|
|
lue n00b
Joined: 09 Jun 2014 Posts: 14
|
Posted: Tue Jun 10, 2014 9:26 pm Post subject: |
|
|
Uh... I already have gtk+ 3.10.8, I don't think their minor-update habits are exactly the cause here. Maybe upgrading to 3.12 could fix it, though this has been such a longstanding issue with me that I can't help but wonder if I've screwed up some configuration somewhere.
I only have gtk, not gnome, so I don't know why installing a gnome package would help anything. |
|
Back to top |
|
|
VoidMage Watchman
Joined: 14 Oct 2006 Posts: 6196
|
Posted: Wed Jun 11, 2014 1:41 pm Post subject: |
|
|
lue wrote: | Uh... I already have gtk+ 3.10.8, I don't think their minor-update habits are exactly the cause here. Maybe upgrading to 3.12 could fix it, though this has been such a longstanding issue with me that I can't help but wonder if I've screwed up some configuration somewhere.
I only have gtk, not gnome, so I don't know why installing a gnome package would help anything. |
Just like gvfs, gnome-themes-standard effectively isn't a Gnome-specific package.
As for the moves the upstream pulls regarding the themes, those are at least backed with sane reasoning, as opposed to those made on GtkImageMenuItems. |
|
Back to top |
|
|
lue n00b
Joined: 09 Jun 2014 Posts: 14
|
Posted: Sat Jun 14, 2014 7:25 pm Post subject: |
|
|
Installing gnome-themes-standard didn't help, unfortunately. They're just as broken as the rest of 'em.
I'd provide more information to get better suggestions, though I honestly have no clue what I should even be looking at, or what to look for . I've yet to try booting into Xfce4 (4.10), which I'll try sometime soon, but that's the last thing I can think of trying. I think if I don't get this fixed soon, I'll try to talk to the GTK+ people directly.
EDIT: not sure how I didn't realize this sooner, but I tend to see this when starting a gtk3 program via console:
Code: | $ evince
(evince:15882): Gtk-WARNING **: Theme parsing error: gtk-widgets.css:60:14: Theming engine 'unico' not found
(evince:15882): Gtk-WARNING **: Theme parsing error: gtk-widgets.css:86:20: Not using units is deprecated. Assuming 'px'.
(evince:15882): Gtk-WARNING **: Theme parsing error: gtk-widgets.css:269:20: Not using units is deprecated. Assuming 'px'.
(evince:15882): Gtk-WARNING **: Theme parsing error: gtk-widgets.css:309:20: Not using units is deprecated. Assuming 'px'.
(evince:15882): Gtk-WARNING **: Theme parsing error: gtk-widgets.css:670:20: Not using units is deprecated. Assuming 'px'.
(evince:15882): Gtk-WARNING **: Theme parsing error: gtk-widgets.css:1925:17: Not using units is deprecated. Assuming 'px'.
(evince:15882): Gtk-WARNING **: Theme parsing error: gtk-widgets.css:2051:17: Not using units is deprecated. Assuming 'px'.
(evince:15882): Gtk-WARNING **: Theme parsing error: gtk-widgets.css:2067:17: Not using units is deprecated. Assuming 'px'.
(evince:15882): Gtk-WARNING **: Theme parsing error: gtk-widgets.css:2190:17: Not using units is deprecated. Assuming 'px'.
(evince:15882): Gtk-WARNING **: Theme parsing error: misc.css:80:18: Not using units is deprecated. Assuming 'px'.
(evince:15882): Gtk-WARNING **: Theme parsing error: unity.css:23:21: Not using units is deprecated. Assuming 'px'.
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 14: reading configurations from ~/.fonts.conf is deprecated. |
The fontconfig bit at the end is something I've been seeing forever, and shows up on gtk2 (and qt, and...) programs too.
I'll look into that stated missing theme engine, but this does appear to be promising. |
|
Back to top |
|
|
lue n00b
Joined: 09 Jun 2014 Posts: 14
|
Posted: Sun Nov 15, 2015 3:11 am Post subject: |
|
|
I know I'm replying a thread that hasn't had a new reply in about a year and a half, but I finally fixed my problem and I figured it was important to put the solution here in case anyone else comes across this thread.
Basically, I tried finding the files mentioned in the warnings of the previous post (warnings I still got, btw), and couldn't find all of them in /usr/share/, in fact only gtk-widgets.css was there, from Greybird. When I went looking in the file, planning to add those implied 'px' units in case that was the problem, the line numbers weren't pointing to the right locations (line 86, for example, was a color property). So weird line number plus not actually finding files like misc.css led me to search in ~/.config/, 'cos who knows?
Turns out, I had all the files warned about (and a couple more) in ~/.config/gtk-3.0/. The line numbers I checked out made sense, and misc.css and unity.css were there too. On a hunch, I moved the ~/.config/gtk-3.0/ directory (as a non-destructive way of deleting and thus "resetting" my gtk-3 settings). Immediately the theming of things was fixed. The only issue I've spotted now is a curious black border around evince (I think because it tries to be cute and circumvent the normal WM border), but that's a recent-ish issue I've noticed beforehand, where it was colored gray instead .
So it seems that I had Greybird CSS files in my local config directory. This explains why changing the theme didn't work, and why I got warnings about gtk-widgets.css under any theme even though the only one installed system-wide is from Greybird. And of course explains the warning I had about the unico engine. Checking those files, they were last modified on 6 October 2012, which appears to be the first time I installed greybird, greybird-0.8.2. I have no clue why this emerge apparently put things in my local directory, perhaps that how themes were handled by gentoo in 2012?
In any case, I'm glad I finally fixed the issue, but I'm quite a bit annoyed by the fact that I had no clue or indication that there were local files overriding everything. What's worse is that settings.ini in ~/.config/gtk-3.0 just names the theme without any kind of path or directory specification in sight, so there was no way to see that it was happening.
So, to summarize: if you seem to be having this problem, check ~/.config/gtk-3.0 for any overriding CSS files, and remove them. |
|
Back to top |
|
|
alexcortes Apprentice
Joined: 18 Dec 2011 Posts: 205 Location: Rio de Janeiro, Brazil
|
Posted: Tue Dec 08, 2015 2:54 am Post subject: |
|
|
I am using oxygen-gtk3-9999 from KDE overlay. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|