Notifications spec: Icons

Lubos Lunak l.lunak at suse.cz
Thu Apr 2 08:42:29 PDT 2009


On Wednesday 01 of April 2009, Bo Thorsen wrote:
> Hi list,
>
> There have been a bunch of emails going back and forth between the KDE and
> GNOME people about the notifications spec. It seems everyone wants to have
> a common spec instead of the two current implementations (galago and
> knotify). I think Enlightenment also have an implementation of galago, but
> I'm not certain of this.
>
> The goal for these discussions is a single spec that's based on galago, but
> modified to suit the needs of more groups.

 Could you please clarify this sentence? Are you saying that this goal is from 
the previous discussions, or that it is the goal of the discussion you have 
started? Or actually, either way, could you first start at the beginning and 
not just say "it was decided in private discussions that XYZ, can we now 
discuss this implementation detail" ? Notifications haven't been discussed on 
this list for ages, at least not anything that would lead to any result, and 
the private discussions that I was CC-ed in also mostly only seemed to agree 
that something should be done but then mostly died out.

 So, before this discussion actually starts, could it be first said what will 
be actually discussed? Specifically, I don't remember any clear conclusion 
along the lines of "galago should be the ultimate spec apps should use for 
all notifications", and even if it's just because I somehow missed it, then I 
think it should be explictly said here. I hope Aaron will not mind me quoting 
him from one mail (you can clearly see it is from him because of the missing 
capitalization :) ), as I think it nicely shows up some problems with your 
apparent assuming that galago would just somehow replace knotify:

<quote>
> > from my side, i'd like to see the galago spec cleaned up, simplified in
> > some  areas and focussed clearly and explicitly on visual notifications.
> > calling it a general notifications spec is a bit specious, but as a basis
> > for displaying visual notifications i think it's something we can work
> > towards being a commonality.

> > which is to say, i don't want to start a conversation about knotify or
> > general noficiation infrastructure as that's just way bigger of a scope
> > and something that the two projects just aren't on equal footing on
> > technically or philosophically. so .. let's KISS and concentrate on visual
> > notifications. 
</quote> 

 I can't say I agree with the second part, some people try to put Galago as 
the general notification infrastructure, so if it's to be modified, why not 
modify it enough to be suitable as one? But even if we stay just with talking 
about only visual notifications and tweaking Galago to fit that (which 
doesn't really change anything for KNotify then), I think it is important 
that everybody here know what the topic of the discussion actually is. So, 
are we talking just visual notifications?




PS: I guess it could be useful to roughly explain how KNotify works.

 When any event happens that an application would want to notify about, it 
basically does just 'event( "Work done." )' and it's more or less 
fire&forget, or 'event( "New IM message.", "Show details", "Ignore" )', in 
which case it eventually gets a reply about whether the user wants to react 
somehow to the event.

 The app then does a D-Bus call to KNotify, which includes few more details, 
like which app it is (i.e. appname like 'kmail') and here it is decided what 
will be done by with the event. Every app provides a default setup for its 
notifications and based on this and user configuration KNotify will decide to 
show the app using a passive popup, play a sound, log it, ignore it, or 
whatever. This has the advantage that this is simple for apps to use and 
flexible. Switching a passive popup for a specific notification to e.g. 
marking the taskbar entry, implementing new ways of notifying or having 
different profiles is just a mather of changing the configuration here (or 
implementing support here).

 One of the way to notify is a passive popup, which is handled by another 
D-Bus call to Plasma telling to it show the info about the event. Most other 
ways of notifying the user are handled directly by KNotify, only this one way 
is passed further using the D-Bus call.

 The last paragraph, as far as I know, is what is Galago, with each 
application having to do the middle paragraph on their own. What Aaron refers 
to with 'visual notifications' is the second D-Bus call, and so it actually 
matches Galago's purpose. I personally however find it suboptimal to discuss 
something that is mostly an internal implementation detail of KNotify or even 
let applications use it, although I fear that Aaron is right about getting 
anything done higher in the stack being impossible for now.

-- 
Lubos Lunak
KDE developer
--------------------------------------------------------------
SUSE LINUX, s.r.o.   e-mail: l.lunak at suse.cz , l.lunak at kde.org
Lihovarska 1060/12   tel: +420 284 028 972
190 00 Prague 9      fax: +420 284 028 951
Czech Republic       http://www.suse.cz


More information about the xdg mailing list