-
Notifications
You must be signed in to change notification settings - Fork 45
Tray icon
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.”
vruh