Draft "StatusNotifierIcon" broken by design

Wolfgang Draxinger wdraxinger.maillist at draxit.de
Wed May 19 09:55:32 PDT 2010


Am Wed, 19 May 2010 17:33:25 +0200
schrieb Marco Martin <notmart at gmail.com>:

> that's why the specification still requires a seamless fallback to
> the xembed version

So you've got two codepaths to maintain, each with its own kinds of
bugs...

> that we felt completely failed from an user interaction point of view.

Could you explain this a bit more in detail?
 
> - being limited to show an icon, no alternative representations, no
> more than one

How to react on user input? Most people are used, that by
right-mouse-button clicking on a systray icon they get some sort
of mini GUI, they can use for simple manipulations. Sounds like applets?
Maybe, but in essence every systray icon IS an applet showing one
certain status information. If it's not displaying through a mini
window, then it's rendering it's stuff into a pixmap sending that to
the proposed status notifier icon.

When I first coded a X systray icon I had this happy smile on my face,
that this was an actual window. Until then the only systray icons I
worked with so far were those of Win32, and these are a PITA if they
need to be dynamic, but basically Win32 SysTray has about the same
interface like the proposed method, though the later is a bit cleaner.

> moderm canvas-based visualizations really need to be able to paint
> the icons themselves (or what they decide it is the best
> represetation, maybe not icons at all)

Couldn't that be done using the composite? I mean: Map the
systray miniwindow off-screen, fetch it's renderings, then display
those as required?

> what we need is a model-view based approach, that really provides
> informations about applications,  where is completely up to the
> workspace to decide how to present that information (if at all) to
> the user all tose considerations put xembed out of the game, except
> as a legacy falback, that is -not- going away, so you are perfectly
> free to not support this specification.

As I understand it, you could do this with the existing systray already
(maybe extending it a little)? It has an selection/atom for sending
textual information to be shown in a standard format, you could as well
place any kind of markup therein. Also nothing prevents one from sending
icons through an systray atom. Heck you could include the icons as SVG
in the markup. IMHO the existing systray can easily be extended to such
lightweight status notifiers, w/o going D-BUS.


Wolfgang


More information about the xdg mailing list