FS#65483 - [electron] No tray icons as of Electron 8.0.0

Attached to Project: Community Packages
Opened by Aidan Dang (AidanGG) - Thursday, 13 February 2020, 12:51 GMT
Last edited by freswa (frederik) - Monday, 21 September 2020, 11:00 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Nicola Squartini (tensor5)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 8
Private No

Details

Description: Caprine and Signal no longer show tray icons as of Electron 8.0.0 and the respective rebuilds. For me, non-Electron apps on i3 are unaffected.


Additional info:
electron 8.0.0-1
caprine 2.44.0-1
signal-desktop 1.31.0-2
This task depends upon

Closed by  freswa (frederik)
Monday, 21 September 2020, 11:00 GMT
Reason for closing:  Fixed
Additional comments about closing:  electron8 no longer in official repo and tray icons seem to work fine with electron 9
Comment by Jonas Witschel (diabonas) - Thursday, 13 February 2020, 14:10 GMT
This is not really a problem with Electron, but rather with i3: Electron 8 only supports the StatusNotifier/AppIndicator protocol to display tray icons (https://github.com/electron/electron/issues/21445) due to corresponding changes in the underlying Chromium (https://bugs.chromium.org/p/chromium/issues/detail?id=419673). i3bar only supports the old XEmbed tray icons (https://github.com/i3/i3/issues/2088), so the tray icon cannot be shown. Other status bars with AppIndicator support work as expected, e.g. swaybar from Sway, XFCE with xfce4-statusnotifier-plugin, ...
Comment by Eli Schwartz (eschwartz) - Thursday, 13 February 2020, 14:34 GMT
I noticed this while electron was in [community-testing], but there's really nothing we can do about it since support was deliberately removed in chromium. Not sure what the expected outcome is here. :(
Comment by Matt (ilikenwf) - Thursday, 13 February 2020, 19:55 GMT
Should I open a bug with electron and/or Signal in my case? I mean, I can...otherwise short of just using ignorepkg for now and keeping the old versions, I'm not sure what to do.
Comment by Jonas Witschel (diabonas) - Thursday, 13 February 2020, 20:15 GMT
Signal is not to blame since it just uses the tray functionality that Electron provides, and I think it is very unlikely that Chromium/Electron are going to reintroduce support for legacy technologies like XEmbed. The component that needs to be changed is i3bar, though the corresponding bug report https://github.com/i3/i3/issues/2088 has been open since 2015... Might be time to look for a new status bar, a quick web search suggests taffybar https://github.com/taffybar/taffybar might be a possible candidate.
Comment by Matt (ilikenwf) - Thursday, 13 February 2020, 20:48 GMT
This happens on Cinnamon and probably Gnome too...

I'm using cinnamon as it's the friendliest alternative to XFCE right now that handles my ultrabook's features.
Comment by Jonas Witschel (diabonas) - Thursday, 13 February 2020, 21:10 GMT
On Cinnamon it might help to toggle "System Settings" -> "General" -> "Enable support for indicators" (tested with Keybase). Gnome and KDE should work out of the box according to https://github.com/electron/electron/issues/21445#issuecomment-565710027
Comment by Eli Schwartz (eschwartz) - Thursday, 13 February 2020, 21:52 GMT
When you say you tested it with Keybase... I get a systray icon, it just does nothing -- it doesn't bring up the popup in the corner of the window, and it doesn't provide a clickable menu to try doing this either.

I guess this is *a* possible way forward, though now my quasselclient systray icon is butt-ugly (it supports either method just fine, but prefers appindicator I guess).
Comment by Jonas Witschel (diabonas) - Friday, 14 February 2020, 12:12 GMT
Indeed, further testing shows that the Cinnamon support for appindicators appears to be a bit rough: I also couldn't get the Signal tray icon to show up, for example. Note that the Signal icon doesn't work on Sway either - I attributed this to problems with swaybar at first (e.g. I have never seen the tray icon for Riot on Sway even before the update to Electron 8), but maybe it's a problem on the application level after all?

FWIW, the Keybase icon can be interacted with on Sway (though by default, the menu appears in the middle of the screen and auto-closes as soon as you move the mouse off the icon, so you have to move it to the corner of the screen using "for_window [class="Keybase" window_role="browser-window"] move position" first). On Cinnamon, no menu appears at all upon clicking on the appindicator.
Comment by Matt (ilikenwf) - Friday, 14 February 2020, 18:08 GMT
@Jonas I can confirm that changing that setting in cinnamon has fixed the issue, though this icon behaves a bit differently.
Comment by Reik Keutterling (Spielkind) - Thursday, 20 February 2020, 06:56 GMT
Tried to use https://extensions.gnome.org/extension/615/appindicator-support/ at gnome-shell for Keybase. But this seems to be quite buggy:
- small icons
- double click to open menu
- icon disappear after suspend & resume

Is there a reason why electron4/electron5 specific packages exist, but no electron7?
Comment by Huseyin Fahri Uzun (ggnoredo) - Monday, 24 February 2020, 21:02 GMT
This issue applies to both i3 and xfce on my system
Comment by Bruno Pagani (ArchangeGabriel) - Friday, 06 March 2020, 13:51 GMT
@Reik Keutterling: Yes, because electron2/4/5 are required for some packages to work at all, while electron7 would only be required to support icons on some desktops.
Comment by Steef Hegeman (Steef435) - Friday, 03 April 2020, 23:03 GMT
It doesn't hold to any beauty standards but since you're talking about workarounds: I wrote this and am using it successfully for electron apps: https://bbs.archlinux.org/viewtopic.php?id=253693. Only supports StatusNotifierItem and not AppIndicator though (it also interferes with libappindicator's fallback, which I'd like to fix, but honestly, their spec just isn't documented anywhere as far as I'm aware).
Comment by Eli Schwartz (eschwartz) - Friday, 24 April 2020, 05:00 GMT
With xapps>=1.8.0 I can now see Keybase's tray icon. It adds SNI support, see https://github.com/linuxmint/xapps/pull/89

pacman -Syu and get it while it's hot!
Comment by Steef Hegeman (Steef435) - Sunday, 07 June 2020, 20:01 GMT
This is now fixed since electron has (temporarily) reverted the changes chromium made here. See https://github.com/electron/electron/pull/23674

Loading...