After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 679591 - Push _NET_SYSTEM_TRAY_* atoms to Freedesktop
Push _NET_SYSTEM_TRAY_* atoms to Freedesktop
Status: RESOLVED NOTABUG
Product: gtk+
Classification: Platform
Component: Widget: Other
unspecified
Other All
: Normal enhancement
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2012-07-08 17:38 UTC by Vincent Bernat
Modified: 2014-09-24 02:34 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
_NET_SYSTEM_TRAY_COLORS, _NET_SYSTEM_TRAY_PADDING and _NET_SYSTEM_TRAY_ICON_SIZE hints (2.59 KB, patch)
2012-07-14 12:19 UTC, Vincent Bernat
none Details | Review

Description Vincent Bernat 2012-07-08 17:38:42 UTC
Hi!

GTK+ uses the following atoms to handle integration of an applet into a systray:

_NET_SYSTEM_TRAY_COLORS
_NET_SYSTEM_TRAY_PADDING
_NET_SYSTEM_TRAY_ICON_SIZE

Those atoms are not part of the system tray protocol:
 http://standards.freedesktop.org/systemtray-spec/systemtray-spec-latest.html

This makes difficult for third-party system tray to handle them. The first one is quite important since GTK+ defaults to black for the foreground color of a chroma-keyed icon.

Please, push those changes in the specification to Freedesktop.
Comment 1 Matthias Clasen 2012-07-11 10:56:43 UTC
Since you already investigated how these extensions work, can you perhaps write a proposal ? I'll be happy to proof-read
Comment 2 Vincent Bernat 2012-07-11 23:27:35 UTC
OK, I will come with a patch for this for the end of the week.
Comment 3 Vincent Bernat 2012-07-14 12:19:03 UTC
Created attachment 218807 [details] [review]
_NET_SYSTEM_TRAY_COLORS, _NET_SYSTEM_TRAY_PADDING and _NET_SYSTEM_TRAY_ICON_SIZE hints

My description of the use of _NET_SYSTEM_TRAY_ICON_SIZE is pure speculation. I don't know why this property was needed in the first place. I don't know why the XEMBED geometry is not good enough for this purpose.

This is patch against version 0.3 of the specification:
 http://standards.freedesktop.org/systemtray-spec/systemtray-spec-0.3.xml

For the "default" values, I have assumed the implementation in GTK as a reference. Dunno if other toolkits know about those hints.
Comment 4 Uli Schlachter 2012-07-17 16:19:21 UTC
To whoever feels like explaining _NET_SYSTEM_TRAY_ICON_SIZE: Please also explain _NET_SYSTEM_TRAY_PADDING. Can't the system tray manager just "apply padding externally"?
Comment 5 Matthias Clasen 2014-09-24 02:34:07 UTC
I am not interested in standardizing this at this point - the world is moving on from xembed-style statusicons, and GtkStatusIcon is deprecated. These properties were hacks that we used at the GNOME 3.0 time to get something working while things were in transition.