Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
i3 reload sucks up tray icons #3589
I'm submitting a…
After reload of i3, the tray bar sucks up some tray icons albeit the processes of the sucked up tray icons are still running. The only workaround is to kill and restart the processes.
These tray icons are opened from left to right:
Only syncthing, nm and redshift are still there. But the qt apps are "gone", albeit their processes are still running:
It started to happen in last December. We figured it out during 35c3, that it's actually QT vs. GTK. Since then I'm looking in my pacman log, where possible changes happened. But I can't link a single update to the problem.
Launch some QT applications with tray icons and reload.
Obviously, all icons should be displayed.
Binary i3 version: 4.16 (2018-11-04) © 2009 Michael Stapelberg and contributors Running i3 version: 4.16 (2018-11-04) (pid 8564)o abort…) Loaded i3 config: /home/bebe/.config/i3/config (Last modified: Di 09 Okt 2018 09:43:16 CEST, 8576985 seconds ago) The i3 binary you just called: /usr/bin/i3 The i3 binary you are running: i3
- Linux Distribution & Version: ArchLinux - Are you using a compositor (e.g., xcompmgr or compton): compton
Hi, I've experienced this problems on Archlinux as well.
It started with the Qt 5.12 update in the middle of December, downgrading to Qt 5.11.2 solved the problem for me, having to recompile every package build against Qt 5.12 is less than ideal though.
It only happens to Qt tray icons, firewall-aplett (from firewalld) and keepassxc for example.
I'm currently at work, will post logs as soon as I'm home.
the only icon in tray was keepassxc, and it disappeared after
I tried to keep the i3 log as short as possible: https://logs.i3wm.org/logs/5682017521893376.bz2
and the interesting part of i3bar.log (with the statusline dumps removed for readability):
@bebehei If you haven't cleared /var/cache/pacman/pkg/ recently, you need to downgrade every single qt5 package to 5.11.2 to work around the bug.
Keep in mind though that I don't have every qt5 extra package installed, so there could be a few missing from that command. Don't forget to update
Doesn't seem like it. Mumble behaves the same way, and it updates the icons shown in the tray pretty frequently. Interestingly, I still got a popup that tried to originate from the icon that wasn't there anymore.
Can also confirm that the GTK and QT4 applications I've tried work fine. So it definitely seems to be some regression in QT5.
@chron-isch Thank you for the clear commands. I appreciate your i3 log.
@algmyr Pretty interesting catch!
Made some progress in debugging it!
Most important thing are the Qt docs for the isSystemTrayAvailable getter:
So you can create a
But with my Qt version, this isn't the case. I have to actively call
I still don't know, whether this is a QT bug. I'm probably going to bisect Qt now.
I can't bisect Qt. It's not feasible for me. I haven't got enough space free on my SSD. Parallel build takes more than 24GB of RAM. And using one job takes forever. Also partial rebuilds aren't possible. Also the active use of submodules makes it harder. Worst conditions to do bisection.
But: I've opened an upstream Qt issue. Let's see what the Qt devs say.