Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Ubuntu 22.04 / GNOME Signal Desktop does not close on clicking close button, instead a lot of processes remain #143

Closed
derMart opened this issue Jun 26, 2023 · 5 comments · Fixed by #200
Labels
bug Something isn't working invalid This doesn't seem right

Comments

@derMart
Copy link

derMart commented Jun 26, 2023

What happened?

  • Click the close Button of the main GUI window
  • The GUI disappears, also the dot in the dock indicating that the program is running disappears
  • Still alot of signal-desktop processes keep running

Here is a screenshot of the program running with top in the background:
image
And here after clicking the close button:
image

What should have happened?

  • When clicking the close button all signal-desktop processes should exit

Output of snap info $snap_name

name:      signal-desktop
summary:   Speak Freely - Private Messenger
publisher: Snapcrafters✪
store-url: https://snapcraft.io/signal-desktop
contact:   https://github.com/snapcrafters/signal-desktop/issues
license:   AGPL-3.0-only
description: |
  **Note: To use the Signal desktop app, you must first install Signal on your phone.**
  
  Millions of people use Signal every day for free and instantaneous communication anywhere in the
  world. Send and receive high-fidelity messages, participate in HD voice/video calls, and explore a
  growing set of new features that help you stay connected. Signal's advanced privacy-preserving
  technology is always enabled, so you can focus on sharing the moments that matter with the people
  who matter to you.
  
  - Say anything - State-of-the-art end-to-end encryption (powered by the open source Signal
  Protocol™) keeps your conversations secure. Privacy isn't an optional mode; it's just the way that
  Signal works. Every message, every call, every time.
  - Go fast - Messages are delivered quickly and reliably, even on slow networks. Signal is
  optimized to operate in the most constrained environment possible.
  - Feel free - Signal is a completely independent 501c3 nonprofit. Development is supported by
  users like you. No advertisements. No trackers. No kidding.
  - Be yourself - You can use your existing phone number and address book to securely communicate
  with your friends.
  - Speak up - Whether they live across town or across the ocean, Signal's enhanced audio and video
  quality will make your friends and family feel closer.
  - Whisper in the shadows - Switch to the dark theme if you refuse to see the light.
  
  **Are you having issues?**
  
  Let us know by creating a new issue here: https://github.com/snapcrafters/signal-desktop/issues
  
  **Authors**
  
  This snap is maintained by the Snapcrafters community, and is not necessarily endorsed or
  officially maintained by the upstream developers.
commands:
  - signal-desktop
snap-id:      r4LxMVp7zWramXsJQAKdamxy6TAWlaDD
tracking:     latest/stable
refresh-date: 21 days ago, at 19:50 CEST
channels:
  latest/stable:    6.20.0 2023-06-06 (505) 182MB -
  latest/candidate: 6.20.0 2023-06-01 (505) 182MB -
  latest/beta:      ↑                             
  latest/edge:      ↑                             
installed:          6.20.0            (505) 182MB -

Output of snap connections $snap_name

Interface               Plug                                   Slot                            Notes
audio-playback          signal-desktop:audio-playback          :audio-playback                 -
audio-record            signal-desktop:audio-record            :audio-record                   -
browser-support         signal-desktop:browser-support         :browser-support                -
camera                  signal-desktop:camera                  :camera                         -
content[gnome-42-2204]  signal-desktop:gnome-42-2204           gnome-42-2204:gnome-42-2204     -
content[gtk-3-themes]   signal-desktop:gtk-3-themes            gtk-common-themes:gtk-3-themes  -
content[icon-themes]    signal-desktop:icon-themes             gtk-common-themes:icon-themes   -
content[sound-themes]   signal-desktop:sound-themes            gtk-common-themes:sound-themes  -
desktop                 signal-desktop:desktop                 :desktop                        -
desktop-legacy          signal-desktop:desktop-legacy          :desktop-legacy                 -
gsettings               signal-desktop:gsettings               :gsettings                      -
home                    signal-desktop:home                    :home                           -
network                 signal-desktop:network                 :network                        -
opengl                  signal-desktop:opengl                  :opengl                         -
removable-media         signal-desktop:removable-media         -                               -
screen-inhibit-control  signal-desktop:screen-inhibit-control  :screen-inhibit-control         -
unity7                  signal-desktop:unity7                  :unity7                         -
wayland                 signal-desktop:wayland                 :wayland                        -
x11                     signal-desktop:x11                     :x11                            -

Output of snap version

snap    2.59.4
snapd   2.59.4
series  16
ubuntu  22.04
kernel  5.19.0-45-generic

Relevant log output

No response

Teminal output of app

Here is the relevant stdout output, when running signal-desktop via terminal. The log confirms that the program is not quitting as it should ("shouldQuit":"false"), also the program does not exit from the terminal.

{"level":30,"time":"2023-06-26T23:17:18.130Z","msg":"close event {\"readyForShutdown\":false,\"shouldQuit\":false}"}
{"level":30,"time":"2023-06-26T23:17:18.131Z","msg":"System tray service: rendering the tray"}
{"level":30,"time":"2023-06-26T23:17:18.141Z","msg":"close: not showing tray notice"}
{"level":30,"time":"2023-06-26T23:17:18.682Z","msg":"Updating BrowserWindow config: %s {\"maximized\":false,\"autoHideMenuBar\":false,\"fullscreen\":false,\"width\":1386,\"height\":758,\"x\":263,\"y\":110}"}
{"level":30,"time":"2023-06-26T23:17:18.683Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2023-06-26T23:17:18.684Z","msg":"config/set: Saved ephemeral config to disk"}

Only typing "ctrl+c" exits signal-desktop then with the following output:

^C{"level":30,"time":"2023-06-26T23:21:10.617Z","msg":"before-quit event {\"readyForShutdown\":false,\"shouldQuit\":false}"}
{"level":30,"time":"2023-06-26T23:21:10.618Z","msg":"System tray service: markShouldQuit"}
{"level":30,"time":"2023-06-26T23:21:10.618Z","msg":"close event {\"readyForShutdown\":false,\"shouldQuit\":true}"}
{"level":30,"time":"2023-06-26T23:21:10.619Z","msg":"System tray service: not rendering the tray, quitting"}
{"level":30,"time":"2023-06-26T23:21:10.620Z","msg":"requestShutdown: Requesting close of mainWindow..."}
{"level":30,"time":"2023-06-26T23:21:11.107Z","msg":"MainSQL: slow query close duration=440ms"}
{"level":30,"time":"2023-06-26T23:21:11.108Z","msg":"requestShutdown: Response received"}
{"level":30,"time":"2023-06-26T23:21:11.113Z","msg":"before-quit event {\"readyForShutdown\":true,\"shouldQuit\":true}"}
{"level":30,"time":"2023-06-26T23:21:11.113Z","msg":"System tray service: markShouldQuit"}
{"level":30,"time":"2023-06-26T23:21:11.113Z","msg":"close event {\"readyForShutdown\":true,\"shouldQuit\":true}"}
{"level":30,"time":"2023-06-26T23:21:11.115Z","msg":"System tray service: updating main window. Previously, there was a window, and now there is not"}
{"level":30,"time":"2023-06-26T23:21:11.115Z","msg":"System tray service: rendering no tray"}
@derMart derMart added the bug Something isn't working label Jun 26, 2023
@merlijn-sebrechts
Copy link
Member

Signal Desktop closes to the system tray by default.

You can close it completely using the following steps:

  • Pressing "quit" in the signal system tray menu
  • Choosing "file" > "Quit signal" in the menu of the application.

Can you confirm nothing remains when you quit using this method?

@sommarnatt
Copy link

@merlijn-sebrechts The problem is that it's not visible in the system tray in Gnome. Is there any way to add it there?

@derMart
Copy link
Author

derMart commented Oct 4, 2023

@merlijn-sebrechts @sommarnatt I think, it is even a little more problematic and complex. At least on Ubuntu 22.04 (which uses Gnome 42) and if I researched correctly, in any default Gnome installation (https://blogs.gnome.org/aday/2017/08/31/status-icons-and-gnome/), system tray just does not exist!

That means, Signal is relying on an optional feature. On Windows system tray is a mandatory feature, as such always there, but in Linux it is not. As such, it should not use that feature if it is not existing.

IMHO there could be two solutions to this bug:

  1. Automatically detect if system tray is existing and only then use it. Otherwise exit on close button
  2. Add an option in the setting where to close on the close button. Either exit or to system tray. Where exit should be the default

I strongly recommend the second option. I also strongly recommend that Signal should, out of the box, close to exit. That is the standard and expected behaviour for all Linux apps. The concept of a system tray is not as present in the Linux world as in the Windows world and as such Signal should comply with expected behaviour in this case IMHO.

@merlijn-sebrechts merlijn-sebrechts added the invalid This doesn't seem right label Oct 4, 2023
@merlijn-sebrechts
Copy link
Member

Thank you for this detailed explanation!

This appears to be an upstream bug in the Signal Desktop application itself. This tracker is for the Snap installer only.

Can you file this bug in their bugtracker? https://github.com/signalapp/Signal-Desktop

I'm closing this issue as invalid, since we can't do much about it.

@derMart
Copy link
Author

derMart commented Oct 4, 2023

See: signalapp/Signal-Desktop#6630

Btw. Sorry, I didn't reply to your question: Yes, choosing "file" > "Quit signal" in the menu of the application will exit all processes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working invalid This doesn't seem right
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants