GNOME Bugzilla – Bug 737000
Some icon themes broken on 3.13.92
Last modified: 2014-10-13 08:48:11 UTC
Many icon themes aren't working properly with gnome-shell after upgrade from 3.13.91 to 3.13.92. The issue isn't apparent with Adwaita, but many themes like Numix-Circle from *https://github.com/numixproject/numix-icon-theme-circle and others are broken. Some symbolic icons (arrow pointers, battery icon) on top panel are replaced by full size icons. I believe this only happens when the icons should be inherited from other theme, e.g. numix-circle should inherit symbolic icons from base numix theme, but full-size icons from numix-circle are displayed. screenshots of the issue: https://db.tt/pk5T4yah https://db.tt/pSNrEYVA borrowed from this post: https://bbs.archlinux.org/viewtopic.php?pid=1458048#p1458048 This was apparently caused by commit e04e507659027a5bb6fed24871539cc6ce56b96f "texture-cache: Use LTR/RTL icon lookup flags" reverting it fixes the issue.
(In reply to comment #0) > This was apparently caused by commit e04e507659027a5bb6fed24871539cc6ce56b96f > "texture-cache: Use LTR/RTL icon lookup flags" > reverting it fixes the issue. CC'ing its author (Jasper).
Is the battery icon in Adwaita named something with -symbolic-ltr ?
This is actually going to be an issue for all RTL users. It's a GTK+ bug. I'm not sure why it's affecting LTR users though.
And I assume by full-size you mean full-color?
Sorry this was very late night bug report so it may have not been the clearest. I try to explain the buggy behavior a little better: I only tested this properly with Numix-Circle, which basically consists of 'base' Numix theme, which has all the symbolic icons, folders, mimes etc. and the Numix-Circle theme which has application icons and some other stuff. If you select to use the base Numix icon theme, everything looks like it should (numix themed battery icons and pointer arrows on top panel), but if you use Numix-Circle, all icons that should be inherited from base Numix theme are replaced by full-color icons from Numix-Circle. So, in my case at least the battery icon and arrow pointers that should come from base Numix theme, are replaced with non-symbolic icons from Numix-Circle. I think they are also full-size icons scaled to small space, but that's probably only because Numix-circle mostly only has 48px and scalable icons. I'm using LTR locale, and I haven't seen any gtk+ applications effected by this bug, only gnome-shell.
I also checked that there are no battery icons named anything *-ltr* in Adwaita, gnome or Numix icon themes.
I've changed the tests/testicontheme test in gtk+ to pass GTK_ICON_LOOKUP_DIR_LTR/RTL, and with that, and the numix themes, I get the expected outcome: ./testicontheme lookup Numix-Circle battery-empty-charging-symbolic icon for battery-empty-charging-symbolic at 48x48@1x is /usr/share/icons/Numix/scalable/status/battery-empty-charging-symbolic.svg Base size: 16, Scale: 1 Pixbuf size: 48x48 RTL=1 ./testicontheme lookup Numix-Circle battery-empty-charging-symbolic icon for battery-empty-charging-symbolic at 48x48@1x is /usr/share/icons/Numix/scalable/status/battery-empty-charging-symbolic.svg Base size: 16, Scale: 1 Pixbuf size: 48x48
Just looking at the top bar with Numix-Circle quickly, that white square on a red circle is actually the application icon for the pan newsreader. Whats happening is that numix is lacking the pan-start/end/up/down-symbolic icons that we are now using for arrows, and fallback kicks in and chooses the pan icon instead.
Adding the generic fallback flag, I can actually reproduce this: ./testicontheme lookup Numix-Circle pan-start-symbolic Gtk-Message: Failed to load module "canberra-gtk-module" Gtk-Message: Failed to load module "canberra-gtk-module" icon for pan-start-symbolic at 48x48@1x is /usr/share/icons/Numix-Circle/48x48/apps/pan.svg Base size: 48, Scale: 1 Pixbuf size: 48x48 Without generic fallback, things work out better: ./testicontheme lookup Numix-Circle pan-start-symbolic Gtk-Message: Failed to load module "canberra-gtk-module" Gtk-Message: Failed to load module "canberra-gtk-module" icon for pan-start-symbolic at 48x48@1x is /usr/share/icons/Adwaita/48x48/actions/pan-start-symbolic.symbolic.png Base size: 48, Scale: 1 Pixbuf size: 48x48
Could bug 731201 be related?
Created attachment 286750 [details] [review] GtkIconTheme: Repair symbolic fallback with rtl/ltr For symbolic icons, we prefer symbolics in inherited themes over generic icons in the theme itself. So far this was implemented by looking at icon_name[0] and looking that up in inherited themes if it is symbolic. But with automatic rtl/ltr handling, the first icon name will always have an -rtl or -ltr suffix, and an icon with that suffix is not going to exist in most cases. To fix this, look for shorter icon names too, as long as they are still symbolic.
I don't want to commit this before we have testcases for inheritance vs generic behavior.
Attachment 286750 [details] pushed as 964c202 - GtkIconTheme: Repair symbolic fallback with rtl/ltr
*** Bug 731201 has been marked as a duplicate of this bug. ***