ubuntu / gnome-shell-extension-appindicator

Adds KStatusNotifierItem support to the Shell
https://extensions.gnome.org/extension/615/appindicator-support/
GNU General Public License v2.0
1.19k stars 161 forks source link

Three Dots on ArmCord #492

Open gelatinbomb opened 10 months ago

gelatinbomb commented 10 months ago

The Problem

ArmCord shows three dots on the tray icon instead of the regular Discord Icon.

Details

I tried using the static icon instead of the dynamic one but nothing seems to work. I tried other electron flatpak apps like MS Teams and it appears to be working. I also tried to force both X.Org and Wayland and it fails on both of them.

Logs

This appears each time I use "journalctl /usr/bin/gnome-shell -f":

nov 27 03:43:57 fedora appindicatorsupport@rgcjonas.gmail.com[28717]: chrome_status_icon_1, Impossible to lookup icon for 'status_icon_24' in /tmp/.org.chromium.Chromium.UWiZEi

nov 27 03:44:06 fedora gnome-shell[28717]: JS ERROR: Gio.DBusError: GDBus.Error:org.freedesktop.DBus.Error.Failed: error occurred in AboutToShow _promisify/proto[asyncFunc]/</<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:453:45 @resource:///org/gnome/shell/ui/init.js:21:20

Promise created here:

                                       sendAboutToShow@file:///usr/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/dbusMenu.js:501:48
                                       sendAboutToShow@file:///usr/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/dbusMenu.js:198:22
                                       _onMenuOpened@file:///usr/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/dbusMenu.js:932:28
                                       _callHandlers@resource:///org/gnome/gjs/modules/core/_signals.js:130:42
                                       _emit@resource:///org/gnome/gjs/modules/core/_signals.js:119:10
                                       open@resource:///org/gnome/shell/ui/popupMenu.js:937:14
                                       toggle@resource:///org/gnome/shell/ui/popupMenu.js:810:18
                                       vfunc_button_press_event@file:///usr/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/indicatorStatusIcon.js:406:23
                                       @resource:///org/gnome/shell/ui/init.js:21:20
rainDiX commented 10 months ago

I am using the armcord flatpak and the icon seems to be located at: $XDG_RUNTIME_DIR/.flatpak/xyz.armcord.ArmCord/tmp/.org.chromium.Chromium.XXXXXX instead of /tmp

Bananas-Are-Yellow commented 9 months ago

I have the same problem with the three-dots icon. In my case the application is BlueMail.

$ hostnamectl
 Static hostname: study
 Pretty hostname: Study
       Icon name: computer-desktop
         Chassis: desktop
      Machine ID: 8b5507f16a410b84e0af26d75cc1f5bf
         Boot ID: 1323a7eace724b0cb8511b816ddf57af
Operating System: Pop!_OS 22.04 LTS
          Kernel: Linux 6.6.6-76060606-generic
    Architecture: x86-64
 Hardware Vendor: Dell Inc.
  Hardware Model: XPS 8700

The icon cannot be found:

$ journalctl /usr/bin/gnome-shell -f
Dec 22 12:25:51 study gnome-shell[2595]: clutter_input_focus_set_surrounding: assertion 'clutter_input_focus_is_focused (focus)' failed
Dec 22 12:25:51 study gnome-shell[2595]: clutter_input_focus_set_cursor_location: assertion 'clutter_input_focus_is_focused (focus)' failed
Dec 22 12:25:51 study gnome-shell[2595]: clutter_input_focus_set_surrounding: assertion 'clutter_input_focus_is_focused (focus)' failed
Dec 22 12:29:24 study gnome-shell[2595]: Ignoring length property that isn't a number at line 4, col 20
Dec 22 12:31:38 study gnome-shell[2595]: Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x5c00004
Dec 22 12:31:38 study gnome-shell[2595]: Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x5c00004
Dec 22 12:31:44 study appindicatorsupport@rgcjonas.gmail.com[2595]: BlueMail1, Impossible to lookup icon for 'BlueMail1_1' in /tmp/.org.chromium.Chromium.9S3tp8
Dec 22 12:33:39 study appindicatorsupport@rgcjonas.gmail.com[2595]: BlueMail1, Impossible to lookup icon for 'BlueMail1_1' in /tmp/.org.chromium.Chromium.9S3tp8
Dec 22 12:33:42 study appindicatorsupport@rgcjonas.gmail.com[2595]: BlueMail1, Impossible to lookup icon for 'BlueMail1_1' in /tmp/.org.chromium.Chromium.9S3tp8
Dec 22 12:33:45 study appindicatorsupport@rgcjonas.gmail.com[2595]: BlueMail1, Impossible to lookup icon for 'BlueMail1_1' in /tmp/.org.chromium.Chromium.9S3tp8

It says Impossible to lookup icon for 'BlueMail1_1' in /tmp/.org.chromium.Chromium.9S3tp8 and that's because there is no such folder in /tmp.

Some background which might be relevant. I originally installed the DEB file from the BlueMail website. Then I changed my mind and uninstalled it and then installed the version offered to me by Pop!_Shop (the built-in app installer GUI that comes with Pop!_OS), which is flatpak.

If I have Enable Legacy Tray Icons Support enabled, I see two tray icons, one with the correct BlueMail icon, and the other with the three dots. Both of them work to display the application. If I disable that option, I only get the three-dots icon.

a-plastic-bag commented 6 months ago

As a workaround, you can use Custom Icons in the extension's settings. This only works if you use the Dynamic tray icon. Other icons create temporary folders with unique names each time you open ArmCord, so there is no permanent path to them. Alternatively, you could copy the png file to a permanent location and direct AppIndicator there.

The indicator ID should be chrome_status_icon_1 and the icon name should be $XDG_RUNTIME_DIR/.flatpak/xyz.armcord.ArmCord/tmp/tray.png (Replace $XDG_RUNTIME_DIR with the actual path otherwise it won't work) image image

fr0gdude commented 5 months ago

The workaround doesn't fully work. My situation: I am trying to put a custom icon for NordPass due to it showing as three dots. However, all of my electron apps show with the ID chrome_status_icon_1. So, when I add the custom icon, I get multiple NordPass icons. Screenshot below shows Discord app with NordPass icon. image