Hi:

I've been thinking about this, and want to propose an idea. But before writing code, I prefer to comment it first, just in case someone finds something that could prevent it from being useful.

At first I considered the idea of using libpeas to add the indicators directly as part of the bar, but then I realized that it's not a good idea because a bug in any indicator (which are always pieces of software delivered by third parties and without the same quality control) would crash the entire bar, which is not desirable.

The idea of exporting the indicator using DBus is good, but has the problem that it needs a lot of work in order to embed any widget and send them through the bus (like the famous libido). But then I realized that the only API needed over DBus is the one to put an icon in the bar, and also a DBus callback to inform the indicator that the user clicked on it. The popup itself can be painted directly by the indicator app, because it is a new window, and inside it can be painted any standard widget. This way, wingpanel (or whatever indicator bar used by the user) only needs to offer an API to add an icon inside, and a DBus signal to inform the indicator app that it must show/hide its popup (and also other to enable/disable an icon, and so on, but the API would be very small).

The advantages are several:

* Developing the library would be extremely easy, and also its maintenance, because it is extremely lightweight. * It won't use XEmbedd or other X-specific mechanisms, which means that it would be fully compatible with Wayland without changing a line. * By copying the client API from libappindicator, it is possible to have binary compatibility with libappindicator applications: the client code would send over DBus the petition to put the icon in the bar, and will wait for click events. When they arrive, it would create a popup with the menu created by the appindicator application.

Critics? Change proponsals? Am I completely off-topic?

El 28/07/14 a las #4, Sergey "Shnatsel" Davidoff escribió:
Thanks for the info!

I wonder if indicators themselves were ported to GTK3 though.

Another suggestion I've heard recently is looking into MATE indicators. But this is all Freya+1 stuff so I'll investigate it only after Freya is released.

If anyone's interested in the situation with indicators, I've detailed it here: https://bbs.archlinux.org/viewtopic.php?pid=1439765#p1439765
--
Sergey "Shnatsel" Davidoff




--
Nos leemos
                         RASTER    (Linux user #228804)
ras...@rastersoft.com              http://www.rastersoft.com

-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to     : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp

Reply via email to