Page MenuHomePhabricator

Icons for some qt-apps appear in systray but don't respond to clicking . Error: "QSystemTrayIcon::setVisible: No Icon set"
Closed, ResolvedPublic

Description

Icons of qt -apps appear in E's system tray but for most of apps I tried, left or right -clicking them doesn't bring any menu as it should. Only cursor flashes briefly. I get error message to terminal: "QSystemTrayIcon::setVisible: No Icon set"

Apps that don't work (qt5): kopete 15.12.1, klipper (comes with kde plasma), konversation 1.6 (qt5), ktorrent 4.3.1, copyq5 2.5.0. Apps that work: clementine 1.2.3 (uses qt 4.8.7) and qbittorrent 3.3.3 (qt5). All apps' icons work with same machine when using kde plasma 5.5.3.

elementary_test with systray creates icon in systray and clicking it opens a menu as it should and selecting items gives output to terminal.

I'm using enlightenment-0.20.3 x86_64, opensuse tumbleweed, qt 5.5.1. I've got sni-qt, libappindicator(3-)1, libdbusmenu-[glib4|qt2|qt5-2] installed.

hendrix created this task.Feb 3 2016, 5:36 AM
hendrix updated the task description. (Show Details)
hendrix raised the priority of this task from to Incoming Queue.
hendrix added a project: enlightenment20.
hendrix added subscribers: hendrix, simotek.

Amarok also probably has this issue but also has T3369

This is a Qt bug.

https://git.enlightenment.org/core/enlightenment.git/tree/src/modules/systray/e_mod_notifier_watcher.c#n69
This is a workaround for failure to comply with the related spec at https://www.freedesktop.org/wiki/Specifications/StatusNotifierItem/StatusNotifierWatcher/; it allows the systray items to appear but will result in all menu-related things failing since the subsystem ends up watching the wrong bus for the application. I've added more hacks here on top of the ones I previously added to make Steam work, but at some point application/toolkit developers are going to have to face the reality that they don't understand the spec that they're implementing.

Hey mike, there is a little bigger problem, kde is not doing the freedesktop standard for StatusNotifierItems. it seems the qt apps are not fullfilling the specification at all (they have theire own rules (yey)).
And it is not theire goal to fullfill this spec. So I guess we have to find some other solution here ...

bu5hm4n added a comment.EditedMar 28 2016, 1:26 PM

but what you hit here, is definitly a bug. Yes.

Should this be reported to http://bazaar.launchpad.net/~indicator-applet-developers/sni-qt/trunk.13.04/files/head:/src/ ?

zmike added a comment.Mar 28 2016, 2:11 PM

I don't care.