Skip to content

System Tray icons doesn't load in Wayland #404

@friday

Description

@friday

Describe the bug

System Tray icons doesn't load in Wayland with Unite, furthermore getting this error when it fails:

gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed

It works with X11, and also if the app is running in Xwayland, but not with apps running inn pure Wayland.

This happens for example with Ulauncher (for which I'm the maintainer), but also other apps. When searching for the issue I found for example emirror-de/libayatana-appindicator-rs#2 (comment) I tried disabling tray icons in Unite and installed that extension instead, and it worked.

To Reproduce
Steps to reproduce the behavior:

  1. Install Ulauncher https://ulauncher.io/#Download (it should happen on both v5 and v6, but I would recommend v6 for reproducing the issue)
  2. Make sure you have either gir1.2-ayatanaappindicator3-0.1 installed (or the corresponding names for other package managers)
  3. Tray icons are enabled by default, but if you already had Ulauncher installed and disabled them, change it back.
  4. Run ulauncher in a terminal to get the log output.
  5. The tray icon won't show, and you get a the error instead (ulauncher:549324): Gtk-CRITICAL **: 14:20:28.342: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed

Expected behavior
No error and the tray icon should show.

Environment (please complete the following information):

  • OS: Arch
  • GNOME Shell version 48
  • Unite version 82

Logs
Provide system logs related to unite extension using journalctl -g unite.

I'm not getting any errors in the unite log. For the apps I am getting GTK_IS_WIDGET (widget)' failed as mentioned-

Additional context
The "Status Icons" extension that comes with Gnome Shell Extensions has the same issue, but https://github.com/ubuntu/gnome-shell-extension-appindicator works in Wayland.

I understand that this is probably not really a bug in Unite, but a bug in Gnome/Gtk that the Shell extension can work around somehow to avoid (like the ubuntu extension does).

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions