Bug 356937 - Xembed icons have black background
Summary: Xembed icons have black background
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: XembedSNIProxy (show other bugs)
Version: 5.5.3
Platform: Arch Linux Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
: 358931 359522 366578 372694 385459 396595 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-12-20 10:13 UTC by sbsbs15
Modified: 2019-11-29 08:10 UTC (History)
30 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.17.4


Attachments
Example (3.37 KB, image/png)
2015-12-20 10:15 UTC, sbsbs15
Details
systray with problem (2.78 KB, image/png)
2016-01-11 09:52 UTC, ad1rie3
Details
Screenshot (6.22 KB, image/png)
2016-02-04 20:29 UTC, Mircea Kitsune
Details
Megasync and Enpass with black background (11.74 KB, image/png)
2017-01-28 03:32 UTC, Huon
Details
pamac tray icon on Antergos (11.72 KB, image/png)
2017-07-20 15:01 UTC, Patrick Silva
Details
Thunderbird and SkypeForLinux with black background (10.02 KB, image/png)
2017-09-12 16:03 UTC, Vincas Dargis
Details

Note You need to log in before you can comment on or make changes to this bug.
Description sbsbs15 2015-12-20 10:13:37 UTC
When I open any application that uses Xembed, the icon shown have black background.

Reproducible: Always

Steps to Reproduce:
Open skype, deluge, vlc, etc...
Comment 1 sbsbs15 2015-12-20 10:15:48 UTC
Created attachment 96207 [details]
Example
Comment 2 David Edmundson 2015-12-22 00:03:49 UTC
Note that SNI/appinidicator is *always* the only supported way. 

For Skype and VLC that is definitely available.
look for sni-qt 32bit for skype.

I don't know about Deluge, but if it does not support it a bug should be filed against Deluge for not following modern specs.

Can you also confirm you have 5.5.1, there were some changes in this area between 5.5.0 and 5.5.1
Comment 3 sbsbs15 2015-12-22 00:31:28 UTC
I'm using 5.5.1. In my laptop skype looks fine, with the correct background, but in another computer with the same packages, skype (and all xembed apps) have the black background.

I've tried installing lig32-sni-qt, and nothing. What can be?

Thanks.
Comment 4 sbsbs15 2015-12-25 05:16:51 UTC
Fresh archlinux install today on the same computer (plasma 5.5.2) and the issue persist. Installing sni-qt and lib32-sni-qt the black background in vlc dissapears, but in skype continues.

I hope you can fix it.

Thank you and merry christmas
Comment 5 Viorel-Cătălin Răpițeanu 2016-01-02 23:16:58 UTC
I've seen this behaviour when using hexchat. The occurrence if not always, but frequent.
Comment 6 sbsbs15 2016-01-09 02:50:19 UTC
Happens with 5.5.3 too.
Comment 7 ad1rie3 2016-01-11 09:52:35 UTC
Created attachment 96581 [details]
systray with problem

i dont have a black background but purple on dropbox only :D and invisible icon for keepass2 (v 2.30) but you can see a very small point , i think it's a resize problem for keepass2

On screen you can see in this order: keepass, dropbox, skype
Comment 8 David Edmundson 2016-02-04 20:03:00 UTC
*** Bug 358931 has been marked as a duplicate of this bug. ***
Comment 9 Mircea Kitsune 2016-02-04 20:29:49 UTC
Created attachment 97013 [details]
Screenshot

Confirming this on Plasma 5.5.3. In my case, the issue was introduced several days ago by a package update in openSUSE Tumbleweed.

http://i.imgur.com/7of6W2v.png
Comment 10 David Edmundson 2016-02-28 22:16:38 UTC
*** Bug 359522 has been marked as a duplicate of this bug. ***
Comment 11 Roman Gilg 2016-02-28 22:26:08 UTC
I have also a purple tray symbol background on the Telegram Desktop app (Version 0.9.28, I downloaded the application directly from their website. It autoupdates).
Comment 12 sosa.daniel23 2016-03-01 17:08:23 UTC
Purple background with the official telegram desktop client downloaded from https://desktop.telegram.org/
Comment 13 Oswald Buddenhagen 2016-07-24 17:47:55 UTC
not sure if this has the same root cause, but it sure sounds related:
the somewhat dynamic gnome-mail-notification tray icon dissolves into a blurry mess over time. it appears that it expects the proxy window to be pre-cleared for it.
Comment 14 Mircea Kitsune 2016-07-24 18:29:42 UTC
The issue seems to have been solved for me in the latest versions of Plasma 5. I haven't seen it for quite a few months with Skype.
Comment 15 Viorel-Cătălin Răpițeanu 2016-07-24 21:33:17 UTC
I haven't seen this issue anymore.
I believe that this can be closed as resolved.
Comment 16 Christoph Feck 2017-01-19 15:01:55 UTC
*** Bug 366578 has been marked as a duplicate of this bug. ***
Comment 17 Huon 2017-01-28 03:31:38 UTC
For what it's worth, I'm getting this too. Happens on desktop (intel iGPU) but not laptop (nvidia).

Apps are Megasync and Enpass:
http://i.imgur.com/z39j2Y6.png

Plasma version: plasma-desktop 5.8.5-1
Comment 18 Huon 2017-01-28 03:32:57 UTC
Created attachment 103674 [details]
Megasync and Enpass with black background
Comment 19 David Edmundson 2017-02-28 20:46:18 UTC
*** Bug 372694 has been marked as a duplicate of this bug. ***
Comment 20 Huon 2017-02-28 21:38:46 UTC
For me, this only happens if the app is set to start at boot. Putting in a 15 second delay in the startup command fixes the issue.

Something about them starting before X maybe?
Comment 21 Jakub Schmidtke 2017-07-19 15:32:03 UTC
I am seeing it too, with Chrome (including Hangouts extension icon) and Slack.
Plasma 5.10.3.
Comment 22 Guo Yunhe 2017-07-19 15:36:02 UTC
(In reply to Jakub Schmidtke from comment #21)
> I am seeing it too, with Chrome (including Hangouts extension icon) and
> Slack.
> Plasma 5.10.3.

Hi Jakub, I also use slack with KDE 5.10.3 but never has this problem. Are you using latest version of Slack from their official website?
Comment 23 Jakub Schmidtke 2017-07-19 15:41:32 UTC
I am using slack-desktop 2.6.3-1 from AUR.
Also, I just removed xf86-video-intel to try to deal with some other graphics issues (so I'm supposedly using modesetting driver instead),
and that's when this started happening.
Comment 24 Patrick Silva 2017-07-20 14:45:14 UTC
slack tray icon has no problem on my Antergos Arch-based.
Comment 25 Patrick Silva 2017-07-20 15:01:21 UTC
Created attachment 106763 [details]
pamac tray icon on Antergos

This bug affects pamac tray icon.
Comment 26 Vincas Dargis 2017-09-12 15:55:46 UTC
I have discovered same problem on Kubuntu 16.04 with KDE PPA after some update, with Thunderbird and SkypeForLinux icons. 

Same issue persist on Debian Testing.

Here is Debian bug report from other user:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=832900
Comment 27 Vincas Dargis 2017-09-12 16:03:11 UTC
Created attachment 107819 [details]
Thunderbird and SkypeForLinux with black background
Comment 28 Christoph Feck 2017-10-18 12:30:07 UTC
*** Bug 385459 has been marked as a duplicate of this bug. ***
Comment 29 Alexander Mentyu 2017-12-05 18:42:56 UTC
Enpass, Skype, Slack and Megasync tray icons are looking ok
KeePass2 (2.32 dev) tray icon is blank

Enpass has no App Launcher icon - it's appears after restart - not sure possibly due to updates applied at the same time

Distribution: KDE neon Developer Edition - Stable Branches
Plasma: 5.11.4
Frameworks: 5.41.0
Qt: 5.9.3
Kernel 4.10.0-40-generic
Type: 64-bit
Comment 30 Alexander Mentyu 2017-12-05 19:11:17 UTC
KeePass issue is here https://bugs.kde.org/show_bug.cgi?id=358240

Pidgin tray icon is displayed ok
Comment 31 Unknown 2017-12-17 15:39:56 UTC
Same problem with MEGAsync.
Comment 32 Vincas Dargis 2018-01-17 17:53:53 UTC
After upgrading in Debian Untstable (plasma-workspace 4:5.10.5-2+b1), Skype and Thunderbird icons are now completely disappeared.
Comment 33 Alexander Mentyu 2018-01-25 17:23:18 UTC
GolderDict and Thunderbird (Firetray) icons are displayed ok, the Skype tray icon disappeared once - but i can't reproduce it now

KDE Plasma Version: 5.11.4
KDE Apps Version: 17.12.0
5.41.0
Qt Version: 5.10.0
Kernel: 4.14.10-2-MANJARO
Comment 34 Vincas Dargis 2018-01-25 18:20:16 UTC
Yep, it works now again on Sid. Maybe some update made it less broken again :) .
Comment 35 matombo 2018-01-30 17:39:17 UTC
I had the same bug and resolved the issue by installing aditional librarys:
For VLC media player: sni-qt
For Discord: libappindicator-gtk3
For Skype and Wire (and propably all other Electron based apps): libappindicator-gtk2
The package names are from the arch repos but i guess other distros have very similar names.

Note: there is also a libappindicator for python and sharp and don't forget that a 32bit application needs the respective 32bit version of the lib.
Comment 36 Alexander Mentyu 2018-03-16 13:34:40 UTC
recently i noticed Viber icon had black background - i don't know how to detect if the app is systray legacy or not - sni-qt package is installed

Plasma: 5.12.2
Apps: 17.12.2
Frameworks: 5.43.0
Qt: 5.10.1
Kernel: 4.14.25-1-MANJARO
OS: Netrunner Rolling
Comment 37 Alexander Mentyu 2018-03-20 11:49:35 UTC
noticed JetBrains Toolbox app has black background once after logging out/in

jetbrains-toolbox 1.7.3593-1
Comment 38 Mircea Kitsune 2018-03-20 14:01:57 UTC
I still see the black boxes on system tray icons occasionally, with Skype for Linux and a few other programs. But this happens extremely rarely for me now... I only saw it a few times in an year, and it's typically after the process crashed and restarted.
Comment 39 David Edmundson 2018-07-17 09:09:41 UTC
*** Bug 396595 has been marked as a duplicate of this bug. ***
Comment 40 Nico R. 2018-12-05 14:48:11 UTC
I can confirm that this is still an issue in current KDE Plasma, but only when I am running in a multi-monitor setup. I.e., when I just work with my laptop without an external monitor, the issue is not present. When I have a second monitor connected at boot time, some icons have a black background - this happens est. around 70-80% of the time.

KDE Plasma Version: 5.14.4
KDE Frameworks Version: 5.52.0
Qt Version: 5.11.1
Kernel Version: 4.18.0-12-generic (Kubuntu)
OS Type: 64 bit

running on a Dell Latitude E7440 with Core i5-4310U, i915 Graphics driver.
Comment 41 Viorel-Cătălin Răpițeanu 2019-02-09 13:23:29 UTC
This issue is sometimes reproducing for Pidgin when using the latest Plasma and Frameworks.
Comment 42 Konrad Materka 2019-10-10 09:48:29 UTC
It is always reproducible with:
* pidgin (make sure pidgin-libnotify is NOT installed)
* keepassx
* xchat
* liferea
Compositor must be disabled (Alt + Shift + F12) before application start.

XEmbedSNiProxy uses 32-bit color when compositor is enabled and 24-bit (no alpha) when compositor is disabled. As a result icons have black background, because that's the filler color of xembedsniproxy. 32bit color can be safely enabled even with compositor disabled - compositing is not required to extract and handle icon with transparency.

I will provide a patch with a fix.
Comment 43 Konrad Materka 2019-10-10 10:03:42 UTC
Fix: https://phabricator.kde.org/D24530
Comment 44 Konrad Materka 2019-10-14 10:56:51 UTC
Git commit 5e934611316b53dccd714c494677559233c9d12f by Konrad Materka.
Committed on 14/10/2019 at 10:02.
Pushed by kmaterka into branch 'master'.

[XembedSNIProxy] If available, always use 32-bit color.

Summary:
If available, always use 32-bit color. We don't need Composite extension to handle transparency - all client windows are our children and transparency in handled in QML, inside the panel (so no need to composite real windows).
FIXED-IN: 5.17.1

Test Plan:
Disable compositor, run:
  - pidgin (make sure pidgin-libnotify is NOT installed)
  - keepassx
  - xchat
  - liferea

Before changes: black backgroud
After changes: transparent background

Reviewers: davidedmundson, #plasma_workspaces, #plasma

Reviewed By: davidedmundson, #plasma_workspaces, #plasma

Subscribers: mlaurent, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D24530

M  +18   -23   xembed-sni-proxy/fdoselectionmanager.cpp
M  +1    -1    xembed-sni-proxy/fdoselectionmanager.h

https://commits.kde.org/plasma-workspace/5e934611316b53dccd714c494677559233c9d12f
Comment 45 Konrad Materka 2019-11-29 08:10:11 UTC
Git commit 29554d5676803f499631977d100c56d3afeec920 by Konrad Materka.
Committed on 29/11/2019 at 08:09.
Pushed by kmaterka into branch 'Plasma/5.17'.

[XembedSNIProxy] If available, always use 32-bit color.

Summary:
If available, always use 32-bit color. We don't need Composite extension to handle transparency - all client windows are our children and transparency in handled in QML, inside the panel (so no need to composite real windows).
FIXED-IN: 5.17.1

Test Plan:
Disable compositor, run:
  - pidgin (make sure pidgin-libnotify is NOT installed)
  - keepassx
  - xchat
  - liferea

Before changes: black backgroud
After changes: transparent background

Reviewers: davidedmundson, #plasma_workspaces, #plasma

Reviewed By: davidedmundson, #plasma_workspaces, #plasma

Subscribers: mlaurent, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D24530

M  +18   -23   xembed-sni-proxy/fdoselectionmanager.cpp
M  +1    -1    xembed-sni-proxy/fdoselectionmanager.h

https://commits.kde.org/plasma-workspace/29554d5676803f499631977d100c56d3afeec920