State of the StatusNotifierIcon spec and implementation

Thomas Pfeiffer colomar at autistici.org
Sat Aug 30 15:04:14 UTC 2014


Hi everyone,
as the discussion in the "VDG suggestions and wishes about the system tray" 
was quite productive but also branched out in various directions, I'd like to 
pick two issues that were discussed there but which I think are important 
enough to warrant its own thread:

1. That according to freedesktop.org [1], there is no finished spec for 
StatusNotifierIcon, but just 
two drafts, one on Marco's website [2] and another at the Ubuntu wiki [3], 
which are similar but not identical. Interestingly, we even have three 
different names: "Status Notifier Icon", "Status Notifier Item" and 
"Application Indicator"
2. That Plasma and Unity, the two biggest DEs which implement the SNI spec, do 
it in quite different ways (for which 1. could be a possible cause)

Having a cross-desktop specification to deal with status notifier items/icons 
/ app indicators or whatever one calls the little icons in the system tray 
makes a whole lot of sense: If I'm using such a thing for my application, I'll 
want it to show up in a reliable way regardless of the desktop environment my 
application runs in.

However, if one can only work based on one of two - slightly different - 
drafts with no finalized, agreed upon specifications, the "reliable" part 
isn't given.
And this isn't just academic, we're seeing the consequence in practice: Unity 
hides SNIs with the status "passive" completely, whereas Plasma puts them in 
the systray popup. This does lead to at least two problems:
- KDE developers which expect passive SNIs to still be accessible may (and do) 
rely on them for accessing a "minimized to tray" application, which means 
those applications are lost on desktop environments that - like Unity - hide 
them completely
- Unity developers who expect passive SNIs to be completely hidden don't care 
about removing them if they are not needed, thus cluttering the popup in 
Plasma with useless SNIs
These are problems which a cross-desktop specification is supposed to prevent.

Personally, I don't have a strong opinion on whether passive SNIs should be 
hidden completely or not, but I'm a fan of applications working in all 
desktops, so see a problem in the situation with two competing drafts instead 
of one agreed upon specification and I think we should fix that.

So how should we proceed?

[1] http://www.freedesktop.org/wiki/Specifications/StatusNotifierIcon/
[2] http://www.notmart.org/misc/statusnotifieritem/index.html
[3] https://wiki.ubuntu.com/DesktopExperienceTeam/ApplicationIndicators








More information about the Plasma-devel mailing list