Bug 426464

Summary: Transparent Plasma themes are missing transparency in Wayland session with proprietary NVIDIA driver
Product: [Plasma] plasmashell Reporter: noname <edpil02>
Component: generalAssignee: David Edmundson <kde>
Status: RESOLVED FIXED    
Severity: normal CC: ales.astone, karl, kodatarule, kylek389, mateusbmelchiades, nate, plasma-bugs, tecil89361, walktmp+s3q7a
Priority: NOR Keywords: wayland
Version: 5.21.3   
Target Milestone: 1.0   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In: 5.23
Attachments: broken transparency with nvidia 465.31 in wayland session via eglstreams

Description noname 2020-09-13 08:20:11 UTC
I just switch to a wayland session for a try, but my transparent desktop theme doesn't work.
i have tried others transparent themes from kde-store but i get the same issue.
No issue with X11.
 
I have no problem with windows transparency (qtcurve or kvantum), only with desktop transparent desktop themes.
Comment 1 Nate Graham 2020-09-15 02:09:09 UTC
Does the Breeze plasma theme's transparency also not work? Or is it just 3rd-party themes?
Comment 2 noname 2020-09-15 06:59:11 UTC
I tried the Breeze Transparent theme https://store.kde.org/p/998635/  from David Edmundson but i got the same issue (no transparency for panel and kickoff menu).
But i'm wondering if it's a nvidia blob issue because the opensource driver crashes at once but seems to handle transparency.
I'm going to make some searchs about that.

Thanks.
Comment 3 Nate Graham 2020-09-15 16:06:00 UTC
The default plasma theme is already transparent (only slightly though). Is it broken with the default plasma theme too?
Comment 4 noname 2020-09-16 05:39:18 UTC
Sorry i had never noticed that the default breeze themes are transparent.

I made a try, breeze and breeze dark are broken too.
Comment 5 Bug Janitor Service 2020-10-01 04:33:14 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 6 noname 2020-10-01 05:30:25 UTC
 i have already provided the requested information.

Breeze plasma theme's transparency also not work with eglstream wayland.
Comment 7 Nate Graham 2021-03-20 00:14:34 UTC
I gave blur-glassy a try in the plasma wayland session and it works great for me. The transparency effect not working for you on Wayland would seem to be an issue with your graphics capabilities in the Plasma Wayland session rather than anything wrong with Plasma itself. Moving to KWin.
Comment 8 Kyle K 2021-06-09 02:15:47 UTC
Created attachment 139126 [details]
broken transparency with nvidia 465.31 in wayland session via eglstreams

I'm getting "grey" bars/rectangles instead of transparency with latest Plasma 5.22 and nvidia 465.31 driver in wayland session via eglstreams. Tested on stock Archlinux-testing with KWIN_DRM_USE_EGL_STREAMS=1 environment variable set.
Comment 9 Mateus Melchiades 2021-06-13 19:19:53 UTC
Can confirm the issue on a fresh Arch Install running Plasma 5.22 with Nvidia 465.31-8. X11 also works just fine.
Comment 10 Mateus Melchiades 2021-06-22 11:33:13 UTC
After poking around for a while I think the problem is in the plasma shell and not kwin. The task switcher and window translucency effects work as expected, so it should be something related to the panels themselves.
Comment 11 walktmp+s3q7a 2021-08-13 02:41:53 UTC
Konsole and panels drawn by kwin have working transparency so plasmashell is evidently doing something wrong here.

mpv and chromium require setting opengl-es=yes and use-gl=desktop respectively otherwise both render a an empty window no clue if this is related. Also see http://download.nvidia.com/XFree86/Linux-x86_64/470.42.01/README/xwayland.html
Comment 12 walktmp+s3q7a 2021-08-18 02:55:05 UTC
Is this the kind of Gnome filepicker bug?

The problem isn't the transparency idc about visual effects (hello forced compositor). It's the fact that with nvidia/wayland using plasmashell feels like fighting the UI.
Comment 13 Alessandro Astone 2021-09-05 15:39:47 UTC
This happens on any Xwayland window with transparency. The plasma panel and kickoff must be using Xwayland by default.
Comment 14 Mateus Melchiades 2021-09-05 22:27:20 UTC
(In reply to Alessandro Astone from comment #13)
> This happens on any Xwayland window with transparency. The plasma panel and
> kickoff must be using Xwayland by default.

This does indeed make sense. I remember seeing some errors related to Xwayland on journalctl. I'll see if I can find them again
Comment 15 Mateus Melchiades 2021-09-05 22:50:09 UTC
> The plasma panel and kickoff must be using Xwayland by default.

Launched a Wayland session and I can confirm this is not the case. `xwininfo` cannot select any plasma panel and `xlsclients` lists firefox only.
Comment 16 Mateus Melchiades 2021-09-05 22:56:26 UTC
Only relevant info I could find inside journalctl is that this set of messages appear every time I try to open a plasma panel:


Sep 05 19:51:21 mainpc plasmashell[576]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Sep 05 19:51:21 mainpc plasmashell[576]: kf.plasma.quick: Couldn't create KWindowShadow for PlasmaQuick::Dialog_QML_219(0x5603e60dfa30, name="popupWindow")
Sep 05 19:51:21 mainpc plasmashell[576]: kf.plasma.quick: Couldn't create KWindowShadow for PlasmaQuick::Dialog_QML_219(0x5603e60dfa30, name="popupWindow")
Sep 05 19:51:21 mainpc plasmashell[576]: kf.plasma.quick: Couldn't create KWindowShadow for PlasmaQuick::Dialog_QML_219(0x5603e60dfa30, name="popupWindow")
Sep 05 19:51:26 mainpc plasmashell[576]: kf.coreaddons: no metadata found in "/usr/lib/qt/plugins/kf5/kio/applications.so" "Failed to extract plugin meta data from '/usr/lib/qt/plugins/kf5/kio/applications.so'"
Sep 05 19:51:26 mainpc plasmashell[576]: kf.coreaddons: no metadata found in "/usr/lib/qt/plugins/kf5/kio/desktop.so" "Failed to extract plugin meta data from '/usr/lib/qt/plugins/kf5/kio/desktop.so'"
Comment 17 walktmp+s3q7a 2021-09-07 21:06:49 UTC
This only happens with plasmashell. Everything else (including kwin) mostly work fine (ignoring the session crashing consistently after changing literally any setting but first things first).

Evidently plasmashell renders stuff on its own regardless of kwin and it does so differently than kwin. That is the cause of this bug. Maybe some Qt dependency used for rendering is different between plasmashell and kwin.

And yes plasmashell runs as a wayland client.
Comment 18 Alessandro Astone 2021-09-07 22:34:33 UTC
Well, my Xwayland guess was based on the fact that launching konsole or dolphin or whatever you have some transparency on with `QT_QPA_PLATFORM=xcb` will produce the same effect as seen on plasmashell
Comment 19 Bug Janitor Service 2021-09-17 12:26:12 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwayland-server/-/merge_requests/294
Comment 20 Nate Graham 2021-09-17 14:32:50 UTC
Fixed by Severin von Wnuck with https://invent.kde.org/plasma/kwayland-server/-/commit/2a9a580ffdd89207a110355fb1663069839ccc75 in Plasma 5.24. May be backported to 5.23 in a day or two after some time on master to make sure it doesn't regress anything.
Comment 21 Nate Graham 2021-09-17 14:33:10 UTC
*** Bug 438275 has been marked as a duplicate of this bug. ***
Comment 22 kodatarule 2021-10-05 16:16:52 UTC
(In reply to Nate Graham from comment #20)
> Fixed by Severin von Wnuck with
> https://invent.kde.org/plasma/kwayland-server/-/commit/
> 2a9a580ffdd89207a110355fb1663069839ccc75 in Plasma 5.24. May be backported
> to 5.23 in a day or two after some time on master to make sure it doesn't
> regress anything.

Is this actually backported for 5.23 as that release seems to resolve most of the wayland issues on nvidia and it would make a great addition!
Comment 23 Alessandro Astone 2021-10-05 16:17:57 UTC
(In reply to kodatarule from comment #22)
> (In reply to Nate Graham from comment #20)
> > Fixed by Severin von Wnuck with
> > https://invent.kde.org/plasma/kwayland-server/-/commit/
> > 2a9a580ffdd89207a110355fb1663069839ccc75 in Plasma 5.24. May be backported
> > to 5.23 in a day or two after some time on master to make sure it doesn't
> > regress anything.
> 
> Is this actually backported for 5.23 as that release seems to resolve most
> of the wayland issues on nvidia and it would make a great addition!

It is.