element-hq / element-web

A glossy Matrix collaboration client for the web.
https://element.io
Apache License 2.0
10.74k stars 1.89k forks source link

Application doesn't close to icon (no tray icon) #23993

Closed JackJeisly closed 1 year ago

JackJeisly commented 1 year ago

Steps to reproduce

  1. Where are you starting? What can you see? I start a Element Nightly and doesn't see icon in tray.

Doesn't work option "Show tray icon and minimise window to it on close". In "Preferences" this option are enabled. If I close window application just close.

Outcome

What did you expect?

I expect that window will be closed to tray icon

What happened instead?

when I close window application just close.

Operating system

Ubuntu Linux 20.04 LTS

Application version

Версия Element Nightly: 2022121401 Версия Olm: 3.2.12

How did you install the app?

From repo "https://packages.element.io/debian/ default main"

Homeserver

matrix.org

Will you send logs?

Yes

G2G2G2G commented 1 year ago

Yep happens to me in nightly as well on arch, something broke system tray icon in last few updates

it does stay running in the background fine, the icon just doesn't show up regardless

t3chguy commented 1 year ago

The upstream tray icon implementation changed, no longer using libappindicator. https://github.com/electron/electron/pull/36472

Looks related to https://github.com/electron/electron/issues/36602

Depends on your DE and whether it seems to support StatusIconLinuxDbus

G2G2G2G commented 1 year ago

It doesn't even work on OpenSUSE KDE tumbleweed that I see.. (I use a WM on my main machine) I assume what works is gnome, looks like other guy has XFCE working which is GTK too so maybe that's it.

looking at this comment https://github.com/electron/electron/pull/36471
"we believe we've done a better job this time but I don't want to send this to an existing stable line" lol, yea definitely just needs a fallback to the libappindicator

I only see mention of "StatusIconLinuxDbus" on chromium, and election nothing else.. there's a GTK.h file in some mailing list but it's part of electron too Is it called something else? I'd add it to my WM

JackJeisly commented 1 year ago

yea definitely just needs a fallback to the libappindicator If it isn't work in popular distrs - needs a fallback to the libappindicator. And ideally fallback from electrone and chromium to C or C++. :)

AffSeda commented 1 year ago

Same issue on Debian testing/MATE. I assume this "StatusIconLinuxDbus" isn't just some package I can install ?

G2G2G2G commented 1 year ago

@AffSeda no, from what I see the "libappindicator" was the easy one that you could "just install" and it'd make everything work magically.

The new one they do now is something to do with this https://github.com/AyatanaIndicators/libayatana-indicator (which is linked to on the rocket chat github below)

This was supposed to be fixed when electron 22 is used, but I think it is already used and still didn't get fixed Rocket chat and several other programs have the same issue, it's all cuz of electron stuff. see here: https://github.com/RocketChat/Rocket.Chat.Electron/issues/2536#issuecomment-1364497357

Sooo unless my element user agent is wrong, we are on version 22 of electron and it still doesn't work, so no idea... unfortunately we can't just install something though

https://github.com/Botspot/pi-apps/issues/1930 version 22 got added to the list lmao, looks like they broke a lot of stuff on a lot of different things

mairacanal commented 1 year ago

I'm also having this problem with Fedora 37/GNOME 43.2 and Element 1.11.17. I installed libappindicator, but it didn't solve my problem.

AffSeda commented 1 year ago

@AffSeda no, from what I see the "libappindicator" was the easy one that you could "just install" and it'd make everything work magically.

That's unfortunate. I never thought the icon would annoy me that much.. but it actually does, lol. I keep losing the Element window, and for some reason sometimes my system opens a new Element instead of bringing the other window to the front if I relaunch it while it's running. I've downgraded for now.

JackJeisly commented 1 year ago

I frost Element updates on 1.11.16 too, becouse it normal work.

G2G2G2G commented 1 year ago

@AffSeda

and for some reason sometimes my system opens a new Element instead of bringing the other window to the front if I relaunch it while it's running. I've downgraded for now.

yea that's been a bug for like 2 years lol. It is a funny one, careful not to close the old one with the new one up or it'll delete your login session and reset both elements to default non logged in

JokerGermany commented 1 year ago

Same problem here with Ubuntu Mate 22.04 Updated today to 1.11.17 and got this. downgraded to 1.11.16 and tray icon is there again.

Really severe bug...

JokerGermany commented 1 year ago

Would be nice if you would stop the rollout for the linux version, this will be a support nightmare for me who support some people...

Will do an every device which I get access to the following:

sudo sh -c 'echo "Package: element-desktop" >> /etc/apt/preferences.d/element-desktop'
sudo sh -c 'echo "Pin: version 1.11.17" >> /etc/apt/preferences.d/element-desktop'
sudo sh -c 'echo "Pin-Priority: -1" >> /etc/apt/preferences.d/element-desktop'

And then install 1.11.16 if 1.11.17 is installed...

JokerGermany commented 1 year ago

@G2G2G2G

@AffSeda

and for some reason sometimes my system opens a new Element instead of bringing the other window to the front if I relaunch it while it's running. I've downgraded for now.

yea that's been a bug for like 2 years lol. It is a funny one, careful not to close the old one with the new one up or it'll delete your login session and reset both elements to default non logged in

Do you have an link to that issue? Think that happens to some of the peoples i support...

mcuguy commented 1 year ago

Same here. On Ubuntu. The only way to have the icon back is to disable the option in Preferences|General and close Element. Re-open Element and enable the icon again and it shows back. Unfortunately, at the next opening it is not shown again, unless you remember to disable the option before closing and re-enabling it at the next run. But still a bad workaround. Please fix it!!!

G2G2G2G commented 1 year ago

@JokerGermany no link, can't figure out how to reliably reproduce it so figuring out why it happens might be impossible - waste days on someone's time where they can be doing something of more importance if I figure out exactly how to guarantee it opens a second one, I'd make an issue or just fix it myself

FizzyTea commented 1 year ago

I have attempted to downgrade to 1.11.16 using apt but this versions appears unavailable. sudo apt install element-desktop=1.11.16 results in E: Version '1.11.16' for 'element-desktop' was not found

Can I downgrade with apt or do I need to build from source? (Ubuntu 20.04 with XFCE) `

JokerGermany commented 1 year ago

@FizzyTea https://packages-old.element.io/debian/pool/main/e/element-desktop/ Download it and then i use sudo dpkg -i

FizzyTea commented 1 year ago

@JokerGermany

@FizzyTea https://packages-old.element.io/debian/pool/main/e/element-desktop/ Download it and then i use sudo dpkg -i

Thanks for your help.

shivajiva101 commented 1 year ago

For the folks with this issue wishing to use v1.11.17 delaying Element-desktop startup for a few seconds fixes this issue at least on Kubuntu 22.04

Turning off the start with windows setting and scripting a delayed start makes element display the tray icon every time!

Detecting plasmashell load and immediately starting the app produces the same no tray icon bug.

I also noted that editing the startup entry and adding a delay fails after one restart when the startup entry gets rewritten by Element launching, so adding a custom delay there is pointless! This raises the question of why element isn't checking if the entry already exists before asserting it, when the setting is checked? I don't think this is coded correctly from a logical perspective as the current behaviour prevents a user from modifying the standard entry it creates.

loginscript.zip

AffSeda commented 1 year ago

@shivajiva101 Hmm, I don't think you have the same bug? For me at least, Element was never set to run at startup. The method used to call the icon changed. Whether or not I start Element within 1 second of logging in, or after breakfast and a coffee, there will be no icon. Perhaps your desktop supports displaying the new type Icon, but has some other issue with consistently displaying it?

shivajiva101 commented 1 year ago

@AffSeda Yes I agree, my appearance here is a consequence of the dev team closing #16760 in favour of this, possibly down to some ambiguous use of English. When the application is launched on startup it can be started as minimised to tray so I can see the crossover.

Jieiku commented 1 year ago

I ran into this after updating my arch install.

with element-desktop up press alt to show the title bar, then choose file > quit.

now relaunch element-desktop, and like magic the tray icon is back.

This was my experience under KDE Plasma, your mileage may vary.

I normally use system settings to launch element-desktop at boot, that still does not display an icon.

I am about to try delaying the launch of the application, or writing a custom script to launch it.

EDIT: startup script worked fine, I have my tray icon back.

nano element-desktop-launcher

#!/bin/bash
sleep 9
element-desktop

chmod +x element-desktop-launcher

Then if you had element-desktop in your startup items remove it, and add this script instead

G2G2G2G commented 1 year ago

Lmao all these KDE issues.. KDE must have the newer API because it can work.. but the newer api must still be broken because it doesn't always work. What a great update from electron.

JackJeisly commented 1 year ago

The problem is not only in KDE. This problem in LXDE, XFCE, IceWm too. The tray icon doesn't work at all in those DEs. That's why I can't use new desktop version after 1.1.16. Even if the update of electron is to blame for this problem - it's still a mistake of Element developers, who included it in new versions for Linux before the problem was solved. Although in my opinion the most critical mistake was made when someone decided to develop the messenger using the heavy, clumsy and resource-hungry electron.

enigma9o7 commented 1 year ago

@JackJeisly Nobody's forcing you to use element, perhaps you would prefer nheko? I think what G2 was saying is that the systray icon works sometimes in KDE Plasma. For the rest of us, it NEVER works.

One thing this forced me to learn the keyboard command to exit electron, since without the tray icon there's no way to exit with mouse. But like most others, I've reverted to previous version until this is resolved.

G2G2G2G commented 1 year ago

@JackJeisly nobody said it was only KDE... the KDE threads get closed and pointed here, so the KDE people keep coming here. They have a slightly different issue as I outlined.

& yea nheko's icon works fine (but it has no message threads if you use those)

@enigma9o7 alt brings up the menu on windows & linux (on every program that has a menu, not just element) and ctrl+q close 99% of programs that exist as well

t3chguy commented 1 year ago

One thing this forced me to learn the keyboard command to exit electron, since without the tray icon there's no way to exit with mouse. But like most others, I've reverted to previous version until this is resolved.

You can also disable close to tray in Settings > Preferences so the window X will close the app fully

JackJeisly commented 1 year ago

@enigma9o7, yes, i use Nheko now for most time. And the only thing I miss about it is the multi-account.

@G2G2G2G

But it doesn't have message threads if you use them.

I would use them if it looked like... like comments on YouTube, for example. But the way threads are made now, it's inconvenient, totally useless and unusable. IMHO

G2G2G2G commented 1 year ago

not really relevant to what I said.. and the threading is the same as virtually every other chat with threading

FizzyTea commented 1 year ago

Issue the same with v1.11.18 (ubuntu 20.04 xfce)

Am6er commented 1 year ago

rollback 1.11.20 -> 1.11.16 and freeze it with sudo apt-mark hold element-desktop

t3chguy commented 1 year ago

This'll be fixed in the next electron 22.x release which adds a fallback to the old implementation

JokerGermany commented 1 year ago

This'll be fixed in the next electron 22.x release which adds a fallback to the old implementation

okay, will stop all updates off element on linux computers until then...

G2G2G2G commented 1 year ago

hilarious since that's what they thought they did this 2nd/3rd attempt.. guess 4th time's the charm!

JackJeisly commented 1 year ago

A better solution would be to replace electron xx.x with C, as Psi for Jabber ... dreams, dreams... ) At least this way...

G2G2G2G commented 1 year ago

@JackJeisly yea sounds easy enough, use nheko or make your own client

JackJeisly commented 1 year ago

No, it doesn't even sound simple enough. But in my mind, messenger is primarily for text and file sharing. For pictures with kitties, stickers and other shit - social networks. So the client should be easy and fast. Most of the time I use xmmp with Psi, which is connected to Matrix via the Bifrost bridge. But I have some hipsters in my contacts when I need Element. Nheko is good, but it doesn't have sound notifications.
Anyway, thank you very much to the developers for Element. It really is a tremendous effort.

JackJeisly commented 1 year ago

I updated Element-Nightly to: Element Nightly: 2023020301 Olm version: 3.2.12 No effect, no icon. (

And one yet moment. When trying to download logs from Element, I have IceWM crash. Maybe the problem is:

libva error: /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so init failed libva error: /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so init failed

(https://github.com/intel/libva/issues/518)? I don't think that's the problem though, chrome-based browsers work fine...

t3chguy commented 1 year ago

The fix landed after the nightly was built. So that is as expected.

JackJeisly commented 1 year ago

I updated to 1.11.22 - no effect, no icon. But the program works when the window is closed. Downgrade to 1.11.16 again. (

t3chguy commented 1 year ago

@JackJeisly unfortunately time travel isn't real. The fix landed 6 hours ago. 1.11.22 shipped 3 days ago.

JackJeisly commented 1 year ago

I updated to 1.11.22 25 minutes ago.

t3chguy commented 1 year ago

The package was created 3 days ago. Whether you updated to it then or 2 days ago or 1 minute ago. It'll be the same thing. Packaged before the fix landed.

image

https://github.com/vector-im/element-desktop/releases/tag/v1.11.22

JackJeisly commented 1 year ago

I understan. I'll be try a next version, 23 and 24. Thanks!

G2G2G2G commented 1 year ago

@JackJeisly nightly will work now if you update to it.. tested on awesomeWM, and kde


unfortunately time travel isn't real.

maybe for the weaklings on earth, but us mooninites travel 1 second into the future every 1 second that passes

JackJeisly commented 1 year ago

Wow! It really works. Thank you very-very! Now to waited multiacc, and it'll be good messenger. O... And yet separate proxy settings for each of accounts. Yes, i'm modest, i know. )

InklingGirl commented 1 year ago

My issue #24361 was closed & I was redirected here, only to find this issue has also been closed, all while the issue still persists for me on Ubuntu 22.04.1 w/ Gnome 42. Obnoxious. If there's been an update to fix this, it certainly hasn't been pushed to the project's Deb deployment repo I install element-desktop from…

t3chguy commented 1 year ago

@InklingGirl the fix landed 3 days after the last release, you'll need to wait for the next release. See above comments.

JackJeisly commented 1 year ago

@InklingGirl , i checked it in the last version of "element-nighly". Yes, it work.

InklingGirl commented 1 year ago

@t3chguy when is the ETA for a new release?