Since version 1.40.0, the main window content of the signal-desktop application stops to be redrawn after a few seconds while the compton compositor is running.
After killing the compositor, it works as expected. After restarting compton, the issue is back again.
All other tested programs (firefox, thunderbird, element-desktop) still work fine and compton or its configuration have not been updated for multiple weeks.
Actual Result:
Suddenly, the window contents won't be updated anymore. You can see that the app still interacts with the window system as the mouse pointer will change its shape depending on where you are. After killing the compositor, all seems to be fine again.
Expected Result:
Signal just works as before even with compton running.
Signal Version: 1.40.0
Operating System: Debian testing/bullseye with BunsenLabs Lithium packages
Linked Device Version: 5.3.12
https://debuglogs.org/35a3904ed235147778bba5c15b1de600eea515b05858f36eaa5d78227850d108
From the Debian description of the compton package:
This package is deprecated and will soon be removed, please switch to picom.
Given that you're running Debian Testing, could you try with picom? Or at least another desktop environment?
What's your version of element-desktop? Just to double check whether it could be the upgrade to electron 11. 1.7.21 apparently runs on electron 11.
You can also help us out by running Chrome/Chromium and other Electron apps to see if it is unique to Signal Desktop.
From the Debian description of the compton package:
This package is deprecated and will soon be removed, please switch to picom.Given that you're running Debian Testing, could you try with picom? Or at least another desktop environment?
Using picom leads to the same results but I found out how to "fix" it! If I double click the title bar to Maximize or Unmaximize the signal window, it redraws and works as usual. So this is at least a workaround for now...
What's your version of element-desktop? Just to double check whether it could be the upgrade to electron 11.
1.7.21apparently runs on electron 11.
Exactly that one, 1.7.21.
You can also help us out by running Chrome/Chromium and other Electron apps to see if it is unique to Signal Desktop.
Chromium works fine, not sure if I have other electron apps...maybe Microsoft Teams ? :wink:
Edit: chromium is version 88.0.4324.146-1
Switching between virtual desktops will bring back the issue. This does not happen for any other (electron) app.
Edit: Opening the Preferences in Signal and scrolling up and down for a bit will also cause the issue to reappear.
I don't know what compton is but I'm having the same issue with Signal desktop on Debian 9 (running XFCE and only default stuff installed) since the latest update. The window is not redrawn when I bring it back into focus, making the app unusable.
Sadly, I can't "downgrade" to something that still actually works since this version apparently introduces a database "upgrade" too...
To help us debug: what happens if you start Signal Desktop with the --disable-gpu flag?
$ signal-desktop --disable-gpu
[23861:0224/184950.188281:FATAL:setuid_sandbox_host.cc(158)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /opt/Signal/chrome-sandbox is owned by root and has mode 4755.
Trace/breakpoint trap
I have the same issue in Linux Mint 20.1 with mate desktop.
After deleting the flatpak version (because it doesnt know the --disable-gpu parameter),
installing the version from the Signal website and using --disable-gpu, the issue is gone.
Found a workaround for now (in Debian 9 with XFCE). If I maximize the window, it re-draws. Then I can click again to return it to the normal size and continue until this happens again. Removing focus from the window doesn't always manifest the issue, but minimizing it does, or, switching from one workspace back to the one Signal is running on. Then I have to maximize it again to re-draw the window.
To help us debug: what happens if you start Signal Desktop with the
--disable-gpuflag?
Thanks for the tip! This helps for now...