Skip to content

[decorations] Fix rendering for depth 30 (10bpc)

Bernie Innocenti requested to merge codewiz/kwin:decorations-30bpp into master

When the display is set to 30-bit depth (10-bit per color component), decorations of some clients appear garbled when compositing is disabled. This is because the pixel format of the QImage in which the decorations were rendered differed from the the X pixmap into which the pixels were being copied by means of xcb_put_image().

For lack of a more robust way, this change guesses A2RGB30 for depth=30, and keeps using ARGB32 as before for any other depth. I don't expect anything other to 32bpp to be supported by KWin anyway.

Tested on amdgpu with KWIN_OPENGL_INTERFACE=egl.

BUG: 406302

FIXED-IN: 5.19.4

Edited by Bernie Innocenti

Merge request reports