The wait loop polled QSystemTrayIcon.isSystemTrayAvailable(), but Qt5 caches that value from the moment QApplication is constructed. At login the autostart wins the race against wf-panel-pi's tray, so Qt caches "no tray" permanently, the loop never escapes, and the process hangs until the 120s timeout and exits. Add wait_for_tray(), which polls the session bus directly (dbus-send NameHasOwner for org.kde.StatusNotifierWatcher) before QApplication is constructed, so Qt reports the tray correctly. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
8.3 KiB
Executable File
8.3 KiB
Executable File