[Interest] Qt systray icon fails to load, causing X to blink and spam error
Frank Shin
frankshin82 at gmail.com
Thu Mar 20 23:37:29 CET 2014
Hi, this is my first post here and it is in regards to a qt5 base app that
is a gui for connman internet manager. The author released this software on
his github below
<https://github.com/andrew-bibb/cmst> https://github.com/andrew-bibb/cmst
I am hoping to help the author by asking this forum and hopefully someone
can give a lead on where to look.
When running the app ./cmst an error message saying QXcbWindow: Unhandled
client message: "_NET_SYSTEM_TRAY_S0"
Video of this error can be found
<http://frankshin.com/files/videos/cmst1.mkv>
http://frankshin.com/files/videos/cmst1.mkv
If I run the app with the "-d" flag which disables the systray icon from
showing, the app works fine and displays the Qt window.
The author responded with "That information did help. I don't know for sure,
but I have a theory. For QT the system tray implementation for X11 must be
freedesktop.org compliant. I've looked at the freedesktop specification and
they define the following hints: _NET_WM_NAME, WM_CLASS, _NET_WM_ICON,
_NET_SYSTEM_TRAY_ORIENTATION.
I then went to suckless.org site to see if they state anywhere that their
tray is freedesktop.org compliant. Didn't find an answer to that one way or
the other, but I did look at the code for their system tray and on line 459
found this hint: _NET_SYSTEM_TRAY_S0. My theory is that the system tray may
not be strictly freedesktop.org compliant, or perhaps it expands upon the
basic compliance and QT can't handle the expansion.
I have revised the sources to check for a systemtray before we try to access
it. I want to temporarily remove the tray from my system so I can test the
new pieces. Once I've tested it it will be part of the package I'm planning
to put out this weekend (actually on github now, but as I said, untested).
I'm hoping that will let us work around the problem, but if QT recognizes
the suckless.org tray, thereby passing my check, but chokes trying to put an
icon there I may have to fall back to another commandline switch that will
force the program to not use a systemtray."
This issue seems to only happen to me as the rest of the users of this app
are running a DE. I am running only DWM as my WM and my github for DWM is at
<https://github.com/frank604/dwm> https://github.com/frank604/dwm
Other systray icons do work for me. Simplescreenrecorder, steam, clipit,
dropbox, and caffeine.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20140320/4c61aa5f/attachment.html>
More information about the Interest
mailing list