[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Ayatana] Combo Indicator Applets
On Mon, 2010-05-17 at 16:47 -0600, Jeremy Nickurak wrote:
On Mon, May 17, 2010 at 16:08, Ted Gould <ted@xxxxxxxxxx> wrote:
Anything that's not a system indicator :) The library that handles this fallback is libappindicator. You can find any application using libappindicator like this:
$ apt-cache rdepend libappindicator0
Probably the simplest case in Lucid is to look at the Rhythmbox application indicator or the GNOME Power Manager one.
So, what distinguishes a system indicator from an application indicator? From the users' perspective, we have an "Indicator Applet Session" (which in behaivor is actually a "Session Indicator Applet", that is to say, an applet that indicates what your session looks like), an "Indicator Applet", which shows both Application and System indicators? Is the messaging menu an Application indicator or a System indicator? Or a third category?
Well from an engineering perspective it's about the requirements on reliability and how it gets tested. All of the system indicators are expected to be started when the system logs in so they are designed with that in mind. Also, they have a MVC style architecture which allows for the service to die and be restarted without the user noticing (you'll never squish every bug). Also, Application Indicators use libappindicator which should work well in the KDE Status Notifier area as well.
From a design perspective I believe that system indicators are designed to be the default set that describe what the system is doing. Application Indicators are "extras" which applications feel that they need. Now this is a little muddled right now as we're in transition with things like GNOME Power Manager being an application indicator where clearly it is a system function.
That's one of the fun things about 6 month releases, you can only bite off so much -- but also the reason that we have a bi-annual meta cycle of LTSes. We're getting there!
Empathy seems to handle this via its own logic, reverting to its legacy notification-area icon. Likewise, where does the messaging menu go? Where should it go?
Yes, there is no direct fallback with libindicate, we allow applications to handle that themselves. Honestly, I'm not sure how that'd work. It seems like every case is a special case as for instance Evolution doesn't have a notification area icon in the fallback case, and the Empathy one is pretty different.
--Ted
Attachment:
signature.asc
Description: This is a digitally signed message part