Hi, On 08.07.2012 00:26, Vincent Bernat wrote: > GNOME applets now come with "symbolic" icons. They are chroma-keyed SVG > icons. The final color is decided by the theme. In my case, I am using a > black background for the systray and my GNOME theme (the default one, > Adwaita) is expecting a clear background and display black icons which > are therefore invisible. I have searched a bit how to change this > without messing with the whole theme and I have discovered this: > > https://mail.gnome.org/archives/commits-list/2010-April/msg09154.html
Wow... They are abusing the _NET_WM_-namespace. :-( > My understanding is that if I set _NET_SYSTEM_TRAY_COLORS property to > white, I will get the appropriate effect. With the help of gdb and three > hours later, I came with the following thingy to get what I want: > > xprop -id 0xc00002 -format _NET_SYSTEM_TRAY_COLORS 32c -set > _NET_SYSTEM_TRAY_COLORS > 65535,65535,65535,65535,8670,8670,65535,32385,0,8670,65535,8670 Quite a simple format, he? > Then, I restart my applet and, bingo, I get the appropriate color. I > don't understand why I should restart the applet while GTK has code to > detect a change to this atom but this is not very important. Sounds like a bug in GTK+. > Now my questions: > > 0xc00001 is awesome. Why is window 0xc00001 awesome? If you want me to guess, it's the "I am still alive"-window which awesome has to create for the _NET_SUPPORTING_WM_CHECK property of the root window. > I suppose 0xc00002 is related. If you want me to guess again: That's awesome's systray window. All systray widgets get reparented into that and its used for displaying the systray. > How could I compute it? In a sane way? You don't. In an insane way? "prop -root _NET_SUPPORTING_WM_CHECK" and then add one, but this just happens to work accidentally since these two windows are (in order) the first things that awesome creates. There are no guarantees for this. [...] > Second question: is there something cleaner than to call xprop to > modify this property? I can't find any spec for this stuff and I don't really want to add support for this just from some random commits. So I guess nope, there is no cleaner approach. Uli -- "Every once in a while, declare peace. It confuses the hell out of your enemies" - 79th Rule of Acquisition -- To unsubscribe, send mail to [email protected].
