Skip to content
This repository has been archived by the owner on Feb 12, 2023. It is now read-only.

Tray icon

zetok edited this page Apr 30, 2016 · 26 revisions

Stuff about tray icon. Feel free to contribute ;)

qTox supports several tray icon backends. Compiling with or without support for those is managed by flags passed to qmake

Backend How to disable
KDE Status Notifier (requires GTK) ENABLE_SYSTRAY_STATUSNOTIFIER_BACKEND=NO
Qt -
Unity ENABLE_SYSTRAY_UNITY_BACKEND=NO
GTK ENABLE_SYSTRAY_GTK_BACKEND=NO

Which Tray backend works on which DE/WM.

DE/WM \ Backend KDE Status Notifier Qt Unity GTK
Cinnamon
GNOME ✔[1]
i3 ✔[1]
KDE4 ✔[1]
KDE5
Unity
XFCE
Tint2 ✔[1]
LXQt ✔ [2] ✔ [3]
↑ some assembly required

[1] Works with problems, or limited features. #1245

[2] via lxqt-panel statusnotifier plugin #995

[3] via lxqt-panel tray plugin

Depending on runtime detection and compiled backend support, best tray backend will be used, in descending order:

  • Unity (if DE is Unity)
  • GTK (if DE is Gnome, KDE4 or Xfce)
  • Status Notifier (if DE is KDE5)
  • Qt

If you want to test whether different tray backend would work, qTox uses those variables to determine which backend should be used:

$XDG_CURRENT_DESKTOP
$KDE_SESSION_VERSION

To start qTox with Qt backend:

$ XDG_CURRENT_DESKTOP="" KDE_SESSION_VERSION="" qtox

Elementary OS doesn't support tray: https://github.com/tux3/qTox/issues/3072#issuecomment-215602168


You may wonder why all this mess. As always, there's a simple explanation:
“<tux3> Because system tray icons are completely broken. Each DE has it's own special way to make them work.”