GNOME Bugzilla – Bug 741939
symbols invisible with dark theme
Last modified: 2016-11-16 07:03:15 UTC
In gnome-tweak-tool i swiched on "Global Dark Theme".
Symbols except selected is not visible in grid.
I just noticed the same problem on my machine. I also found a bug filed in Arch Linux's bug tracker: https://bugs.archlinux.org/task/42844
I guess it's a problem with the background color. Basically, it ends up drawing white text on a white background when "Global Dark Theme" is switched on.
The pop-up box displayed when right-clicking on a character in the grid has the same problem.
I confirm the bug.
*** Bug 747265 has been marked as a duplicate of this bug. ***
*** Bug 756278 has been marked as a duplicate of this bug. ***
Debian Jessie x64 NVidia Video Drivers.
Not fixed in CentOS 7 GNOME 3.14.2 System is up to date.
This likely means that it is also still broken in RHEL7.
Global Dark theme
Character blocks just white on white.
It's fixed in version >= 3.16, so your version is simply too old.
It's fixed on the gnome-3-14 maintenance branch, too, so if gucharmap-3.14.3 is ever released, it will contain the fix.
There won't be one. You might try to persuade your distro to cherry-pick the patch.
There is a bug in Red Hat's bugzilla which references this bug:
*** Bug 766193 has been marked as a duplicate of this bug. ***
(In reply to Christian Persch from comment #9)
> It's fixed in version >= 3.16, so your version is simply too old.
3.14.2 is only 16 months old.
My GNOME version is the most current in the Centos 7 repos, which follows RHEL 7 very close. It seems odd to simply dismiss a distro as large as RHEL. Though I do use Arch for my personal laptop, rolling release is not the best choice for every purpose, sometimes a fixed stable base is needed.
(In reply to Ian Abbott from comment #10)
> It's fixed on the gnome-3-14 maintenance branch, too, so if gucharmap-3.14.3
> is ever released, it will contain the fix.
I will investigate this option.
I'm not 'dismissing' anything, I'm simply stating a fact: all versions < 8.0.0 are out of support from upstream. That means that if you have a problem that exists in these older unsupported versions but is fixed in a supported version (8.0.x), you need to contact your vendor for an update; commenting here is simply not going to do anything for you.
I am using GNOME 3.18 in Ubuntu 16.04, and I am seeing this bug: I have selected the dark theme, and only the currently-selected glyph is visible.
gucharmap version is 3.18.2.
I am using gnome-characters as a workaround.
Sorry, to clarify: I am using Adwaita with "Global Dark Theme" switched on.
You have selected the global dark theme, but the gucharmap chrome is still being shown in the light theme, right?
And you're using X11, not wayland, correct?
I'm sorry, I think there was some confusion owing to a slightly customized theme.
If I revert to standard Adwaita, then, as you say, gucharmap chrome is still being shown in the light theme. (Before, it was being shown in a dark theme, only the characters in the map were being drawn in white on a white background, and hence invisible.)
I am using X11.
Ok, so it was a theme bug.
I beg to differ. This is not fixed, but worked around to work with themes which provide both versions: light and dark.
I've been using a theme called Add-Waiter, which appears to be simply Adwaita minus the light version, and with that theme, this bug is not fixed. I wouldn't call that a "theme bug" though, because this theme is simply dark-by-default, without an additional "dark version". Unless GNOME HIG or GTK HIG or some GTK theme designer manual requires light theme to be always present, I don't agree that shipping a dark theme only is a bug in and of itself, so I respectfully ask you to please reopen this issue.
No themes other than the gtk+-builtin Adwaita are supported.
However, if someone does provide a simple-enough patch that fixes this, I'll certainly review it.
(In reply to Christian Persch from comment #24)
> No themes other than the gtk+-builtin Adwaita are supported.
This kinda sounds like what Microsoft would say, but oh well...
On top of that, supporting even just built-in Adwaita by way of completely disabling its dark version in the app is kind of lazy. It almost looks closer to not supporting the theme than to supporting it.
> However, if someone does provide a simple-enough patch that fixes this, I'll
> certainly review it.
I think the actual underlying problem is that what GtkStyle colors hold is not defined well enough. If you look at https://developer.gnome.org/gtk3/stable/GtkStyle.html#GtkStyle-struct, a GtkStyle has eight sets of colors, but only about three of them (fg, bg and text) have a clear purpose, meanwhile the other five are quite mysterious in their nature and might end up being treated inconsistently, which I think is what happens with the unfortunate combination of gucharmap and the dark version of Adwaita. I wonder if I'm the only person seeing that bit of documentation as problematic, because if not, it might be worthy to file a bug asking for that doc to be improved.
Also, while I was trying to come up with a patch after my last comment, I was unable to find the CSS files Adwaita uses anywhere (not even in Gnome's git). If anyone could give me a pointer to that, or tell me how to print all the available GtkStyle colors in GTK3, I could probably come up with a gucharmap patch for this bug.
They're here: https://git.gnome.org/browse/gtk+/tree/gtk/theme/Adwaita
Do you think it's worthy filing a new bug asking for clarification of the actual meaning of these color names and how they should to be used together? If so, which product/component would this be?
Created attachment 339751 [details]
Screenshot of gucharmap 9.0.1 with light and dark Adwaita versions
Apparently, the underlying problem has already been fixed on Adwaita's side, and Gucharmap now works fine with both dark and light versions of Adwaita, as you can see in the attached screenshot.
Furthermore, @Christian, the fix you applied as a workaround for this bug in commit cbcf1fe3f44aee4387fefa4b2cdea8d19e93aa51 no longer has any effect: whether or not I revert that commit, if I run GTK_THEME=Adwaita:dark ./gucharmap, I get the dark version of the table. I suggest you can remove that workaround, but other than that, I think this bug has now indeed been fixed properly.
One more note however: in gucharmap-chartable.c, in draw_square_bg(), you choose cell background color from four different color types (base, dark, fg and bg). I think this might lead to unexpected results in some corner cases. IMO, ideally only base colors should be used.
GTK_THEME is just a debugging mechanism; it's not a supported way to set the theme.
In order to remove the hardcoding of the light theme, I'd need to know which gtk version this fixed, so I can use the correct #ifdef (or runtime check).
I've conditionalised the setting to only apply the setting on gtk+ < 3.22 now in gucharmap git master.
(In reply to Christian Persch from comment #29)
> GTK_THEME is just a debugging mechanism; it's not a supported way to set the
Is there a supported non-debugging way to use explicit theme with just one app? You may call it debugging, I call it convenience. :)
> In order to remove the hardcoding of the light theme, I'd need to know which
> gtk version this fixed, so I can use the correct #ifdef (or runtime check).
(In reply to Christian Persch from comment #30)
> I've conditionalised the setting to only apply the setting on gtk+ < 3.22
> now in gucharmap git master.
That is good enough I guess. Although I suppose (and somewhat hope) you can remove this condition and its effect a year from now or so.