> Den Nov 3, 2014 kl. 19:59 skrev Davide Andreoli <d...@gurumeditation.it>:
> 
> 2014-11-03 16:58 GMT+01:00 Tom Hacohen <tom.haco...@samsung.com>:
> 
>> Hey everyone,
>> 
>> After fairly long chats with Carsten and Mike during LinuxCon and over
>> IRC, trying to fix systray on my own, and better understanding the
>> systray landscape, I've also switched to the drop-xembed camp.
>> 
>> Introduction:
>> For those of you who don't know, there are currently two main ways for
>> implementing systray in Linux, Xembed (legacy) and appindicator (fairly
>> new).
>> 
>> Xembed: this is the legacy way of doing it. An application which wants
>> to have a systray icon creates a small (22x22 px) window which gets
>> embedded into the systray gadget. This is a window like any other, so
>> for better or worse, everything is user controlled, including ugly
>> inconsistent behaviour. To make things even worse, those "windows"
>> usually don't have a transparent background, but instead use hacks to
>> determine what solid colour background they should use, making
>> themability, something we care about a lot in E, suck.
>> 
>> Appindicator: dis is a specification that start by the KDE devs a while
>> back, and was adopted by unity/ubuntu. It's essentially a dbus api,
>> which means the shell (enlightenment) has more control regarding look,
>> feel and behaviour, and makes the shelf more consistent among apps.
>> 
>> 
>> Major issues with Xembed:
>> Apart from the issues mentioned above, xembed is also broken because it
>> (obviously) doesn't work under wayland, it doesn't work with higher dpi
>> screens (remember the 22x22 restriction?), clients implement it in a
>> hacky way, and that means servers have to adapt, making it very painful
>> to support, and last, but not least, it's considered obsolete by many
>> people in the Linux world, namely us.
>> 
>> 
>> Rest of the ecosystem:
>> From what I understand, KDE5 will have no xembed support, Unity already
>> doesn't support it, and I hope we and many others will follow.
>> I don't remember the exact list, but from the kde blog (see link below)
>> and off the top of my head, in elm we only support appindicator for
>> systray, most Qt and GTK+ apps support it, dropbox and steam also use
>> it, so it's really just skype that's broken, I'd complain to support and
>> get it working. If you encounter anything else that doesn't, just open a
>> ticket at the respective project.
>> 
>> 
>> But why not just fix the systray module?
>> It's a lot of work and it's just not worth it since there is a better
>> and widely used alternative out there. I also tried writing a module to
>> embed a standalone systray into our shelves only to find out that all
>> the standalone systrays suck. :)
>> I wanted to port the e17 systray module to e20, but according to Mike,
>> that won't work, as there are many issues with the compositor interactions.
>> 
>> 
>> Essentially, unless we come across a reasonable reason why Xembed
>> support shouldn't be dropped, I suggest we go on and get rid of it in
>> the next week or two.
> 
> Personally I rely on XEmbed for Dropbox and NetworkManager, googling a bit
> it seems they should both works using appindicator, but I have nothing in
> my tray
> if I disable the xembed option... I do not see anything without xembed...is
> my
> appindicator tray support broken, what is needed to make the systray module
> appindicator-able? does it need the libappindicator package? how can I test
> appindicator?
> 
> Any suggestion are welcome
> 

I've tested network manager with app indicator. There is a library which reads 
a gtk menu from network manager and provides it over dbus. It works, but has 
some quirks. Doesn't seem to update correctly all the time, but maybe a newer 
version is fine. Using Ubuntu.

Sebastian
------------------------------------------------------------------------------
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to