Bug 423405 - Certain Plasma dialogs are sometimes or always super transparent with no blur
Summary: Certain Plasma dialogs are sometimes or always super transparent with no blur
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: effects-various (show other bugs)
Version: unspecified
Platform: Other Linux
: VHI normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2020-06-23 19:20 UTC by Nate Graham
Modified: 2020-06-30 14:03 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Task Manager tooltips (811.50 KB, video/webm)
2020-06-23 19:20 UTC, Nate Graham
Details
Transparent Breeze Task Switcher (408.37 KB, image/jpeg)
2020-06-23 19:20 UTC, Nate Graham
Details
Transparent Large Icons Task Switcher (127.16 KB, image/jpeg)
2020-06-23 19:20 UTC, Nate Graham
Details
KWin support information (5.73 KB, text/plain)
2020-06-23 19:21 UTC, Nate Graham
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nate Graham 2020-06-23 19:20:04 UTC
Created attachment 129611 [details]
Task Manager tooltips

Everything KDE from git master with Qt 5.15.0 on openSUSE Tumbleweed.

SUMMARY
Various (but not all) Plasma dialogs are 100% transparent with no blur.

The following Plasma dialogs exhibit this problem 100% of the time for me:
- All Task Switchers (Breeze, Large Icons, Small Icons, etc.)

The following Plasma dialogs exhibit this problems sometimes:
- Task Manager tooltips (the first one you hover over is 100% transparent, then subsequent ones are fine; see video)

The following Plasma dialogs never exhibit the problem for me:
- Kicker/Kickoff
- System Tray
- Display chooser OSD
- Volume/brightness/etc. OSD

This started happening to me a week or two ago. I attempted to git bisect KWin but was unsuccessful as it did not build past a certain point in time. :(

I am using X11 with a 250% scale factor on a 4k screen and an Intel integrated GPU.
Comment 1 Nate Graham 2020-06-23 19:20:43 UTC
Created attachment 129612 [details]
Transparent Breeze Task Switcher
Comment 2 Nate Graham 2020-06-23 19:20:59 UTC
Created attachment 129613 [details]
Transparent Large Icons Task Switcher
Comment 3 Nate Graham 2020-06-23 19:21:52 UTC
Created attachment 129614 [details]
KWin support information
Comment 4 Kai Uwe Broulik 2020-06-23 21:26:04 UTC
Seeing the same in Task Manager after having updated just now. I only restarted plasmashell yet but not KWin, so I think KWin's not at fault here.
Comment 5 Nate Graham 2020-06-24 01:25:09 UTC
Cool, moving to plasmashell then. Glad I'm not insane!
Comment 6 Nate Graham 2020-06-24 01:30:27 UTC
Hmm, I just bisected plasma-workspace, plasma-desktop, and plasma-framework back to June 1st and I didn't manage to find the guilty commit.
Comment 7 Vlad Zahorodnii 2020-06-24 08:05:53 UTC
> but was unsuccessful as it did not build past a certain point in time. :(

iirc there was a breaking change in kscreenlocker 5.19. so you need sometimes to switch between kscreenlocker 5.18 and kscreenlocker 5.19. :/
Comment 8 Nate Graham 2020-06-27 21:20:43 UTC
That didn't help sadly.

Do you have any idea what could have been responsible for this, or where I should look?
Comment 9 Nate Graham 2020-06-27 21:21:59 UTC
Marking VHI as we can't ship this regression in 5.20.
Comment 10 Nate Graham 2020-06-29 15:09:15 UTC
Only affects X11, not the Wayland session.
Comment 11 David Edmundson 2020-06-29 21:21:45 UTC
Did some looking. 

I'm pretty sure it's 309fbf1837863c483b04491eda8af8bc5235260a in kwin

(which means it's not frameworks and we have a whil)

adding some debug:


@@ -411,8 +411,10 @@ QRegion BlurEffect::blurRegion(const EffectWindow *w) const
+

     if (value.isValid()) {
+        qDebug() << "start" << w->shape() << w->rect();
.....
+        qDebug() << "end" <<  region;
     } else if (w->decorationHasAlpha() && 

results in



22:17:59.165 KWin::BlurEffect::blurRegion start QRegion(0,0 364x239) QRect(0,0 364x239)
22:17:59.165 KWin::BlurEffect::blurRegion end QRegion(null)

not sure why it makes a difference &'ing these two rects should result in the same thing.
Comment 12 David Edmundson 2020-06-29 21:27:56 UTC
Edit, it's not that commit, but it is that area of code.

For some reason the tooltip skips all the paths that set region
Comment 13 Vlad Zahorodnii 2020-06-30 09:42:58 UTC
(In reply to David Edmundson from comment #11)
> not sure why it makes a difference &'ing these two rects should result in
> the same thing.

Is the appRegion empty?
Comment 14 Bug Janitor Service 2020-06-30 14:00:18 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/94
Comment 15 David Edmundson 2020-06-30 14:03:18 UTC
Git commit 1b4c725d108b595b85a75aaa2c69721ffb085bef by David Edmundson.
Committed on 30/06/2020 at 13:59.
Pushed by davidedmundson into branch 'master'.

Update clientGeometry for Unmanaged windows

It was udpated when we received a configure event but not in the initial
track.

The symptom of this being missed out was that blur would not be applied
to the window.
Related: bug 423297

M  +1    -0    unmanaged.cpp

https://invent.kde.org/plasma/kwin/commit/1b4c725d108b595b85a75aaa2c69721ffb085bef