GNOME Bugzilla – Bug 623939
notification area must use transparent background for icons whenever possible
Last modified: 2012-08-08 10:21:16 UTC
Many applications that use a notification-area icon do not use a transparent background (most notable if you use a background pixmap on gnome-panel). This happens, in particular, with Python applications using the egg.trayicon library (which is part of the gnome-python-extras package), for example Sonata. I didn't dive into details but it looks like there are two different methods to create a notification area applet: with one the tray icon has transparent background (if the pixmap has it, of course) and with other icon background is always filled with gnome-panel background color, ignoring the pixmap setting. Other application with the same problem is stardict. Attaching a small screenshot demonstrating the problem.
Created attachment 165547 [details] A small screenshot demonstrating the problem
Why do you think that this is a bug in gnome-panel and not in the apps that do not set a transparent background? Also see https://bugzilla.redhat.com/show_bug.cgi?id=538800
It's rather not a bug, but a shortcoming in API that has to be addressed somehow. App authors don't "fix" it not because they are so bad or unknowing, but because application will lose functionality if it will use GtkStatusIcon. Sonata, for example, can use either egg.trayicon or GtkStatusIcon but prefers egg.trayicon - egg.trayicon will allow to catch clicking the middle mouse button on the tray icon (used to pause music) and rolling the wheel over it (used to change volume), while gtk.StatusIcon doesn't allow that (I haven't looked actually into API, but that's a common problem with GtkStatusIcon). I don't know what API actually uses egg.trayicon, but Sonata sets the same png file as status icon both when using egg.trayicon or gtk.StatusIcon, but in the first case it's non-transparent. This is a old and annoying problem, I discussed it years ago with StarDict author here: https://bugzilla.redhat.com/show_bug.cgi?id=251230 He says: <<This is because StarDict's tray icon is a event box, but not a transparent image widget, the reason of use event box is to receive middle button key>> I think this shortcoming has to be addressed somehow, otherwise app authors will continue writing "broken" applications.
WONTFIX in GNOME too - see redhat bug 538800. If you need additional API for GtKStatusIcon, please file a bug against GtkStatusIcon. Thanks!
*** Bug 651236 has been marked as a duplicate of this bug. ***
*** Bug 681435 has been marked as a duplicate of this bug. ***