Bug 422083

Summary: Plastik window decorations don't render when OpenGL2ES backend is used
Product: [Plasma] kwin Reporter: Will Springer <skirmisher>
Component: decorationsAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED UNMAINTAINED    
Severity: normal CC: creideiki+kdebugs
Priority: NOR    
Version First Reported In: 5.18.5   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: KWin under OpenGL2ES with Plastik decorations enabled
KWin under default OpenGL2 backend with Plastik decorations
Console output of KWin upon switching to Plastik decorations

Description Will Springer 2020-05-26 08:08:44 UTC
SUMMARY
The Plastik window decoration theme is invisible when KWin is launched with the environment variable KWIN_COMPOSE=O2ES under Xorg. The buttons and borders still act normal despite being transparent. Oxygen and Breeze appear correctly when selected, and Plastik functions normally without KWIN_COMPOSE forced to O2ES.

Observed on Fedora 32 running on a Dell Inspiron (i7-8550U, Intel UHD Graphics 620) and Void Linux running on a Pinebook Pro with the panfrost driver.

STEPS TO REPRODUCE
1. Export KWIN_COMPOSE=O2ES in parent environment (e.g. ~/.profile)
2. Launch Plasma
3. Select Plastik window decorations in System Settings

OBSERVED RESULT
Plastik window decorations are invisible

EXPECTED RESULT
Plastik window decorations appear

SOFTWARE/OS VERSIONS
Fedora 32 x86_64, Void Linux aarch64
KDE Plasma Version: 5.18.5
KDE Frameworks Version: 5.68.0, 5.70.0
Qt Version: 5.13.2, 5.14.2
Comment 1 Will Springer 2020-05-26 08:12:06 UTC
Created attachment 128794 [details]
KWin under OpenGL2ES with Plastik decorations enabled
Comment 2 Will Springer 2020-05-26 08:13:32 UTC
Created attachment 128795 [details]
KWin under default OpenGL2 backend with Plastik decorations
Comment 3 Will Springer 2020-05-26 18:20:52 UTC
Created attachment 128810 [details]
Console output of KWin upon switching to Plastik decorations

KWin surfaces these errors in its output at the time Plastik is applied from window decoration settings. Not sure how relevant they are, since they seem to occur regardless of compositing backend, but I thought I'd attach them anyway.
Comment 4 Vlad Zahorodnii 2020-05-27 11:15:18 UTC
I assume that there are also issues with the task switcher. Anyway, can you please run kwin with KWIN_COMPOSE=O2ES QT_XCB_GL_INTEGRATION=xcb_egl and check whether the graphical issues still persist?
Comment 5 Will Springer 2020-05-27 21:24:06 UTC
(In reply to Vlad Zahorodnii from comment #4)
> I assume that there are also issues with the task switcher.

That's correct, I didn't notice them at the time of posting but it definitely has similar issues.

> Anyway, can you
> please run kwin with KWIN_COMPOSE=O2ES QT_XCB_GL_INTEGRATION=xcb_egl and
> check whether the graphical issues still persist?

That does fix the issue, thank you! May I ask what connection this has to running KWin compositor with GLES? I didn't see any mention of Qt XCB settings when looking up how to enable this.
Comment 6 Vlad Zahorodnii 2020-05-29 11:13:13 UTC
> May I ask what connection this has to running KWin compositor with GLES?
I'm not sure... The problem seems that KWin uses EGL while Qt still wants to use GLX.
Comment 7 David Edmundson 2023-09-06 10:38:50 UTC
This bug was reported against an outdated version of KWin. We have made many changes since the. 
If the issue persists in newer versions can you reopen the bug report updating the version number.