Bug 90525 - When weston is compiled with --with-cairo=image the desktop wallpaper is shown in 16 bit color
Summary: When weston is compiled with --with-cairo=image the desktop wallpaper is show...
Status: RESOLVED FIXED
Alias: None
Product: Wayland
Classification: Unclassified
Component: weston (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Wayland bug list
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-05-19 23:47 UTC by nerdopolis1
Modified: 2017-04-06 17:42 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description nerdopolis1 2015-05-19 23:47:27 UTC
Hi.

It seems when I compile weston with --with-cairo=image, the desktop wallpaper is shown in 16 bit color. I can notice that the gradients in the image I use are much harsher, and can see the lines that make up the gradients...

This appears to be an issue within weston-desktop-shell itself. Another image viewer is able to view the same image fine, and it seems that even weston-image handles it correctly.
Comment 1 Pekka Paalanen 2015-05-20 06:18:20 UTC
Yes, weston-desktop-shell explicitly tries to get 16 bitpp color for the wallpapers only. This was mainly added to reduce memory usage on RPi.

It is gated by the compositor advertising RGB565 support, but since all renderers nowadays support it, you get it always.

I'm not sure there is anything we could use to auto-detect whether 16 bit would be appropriate, so I suppose this should become a weston.ini option "preferred-background-depth" for weston-desktop-shell, defaulting to 32 bit.

It should have worked the same way also with cairo-gl, but I suppose that was buggy for some reason... or didn't care to choose the depth well enough. OTOH, on rpi you never wanted use cairo-glesv2, so it went unnoticed.
Comment 2 Link Mauve 2017-04-06 17:42:00 UTC
This has been fixed in 9cbe1c6ae09f187db76a5c89c78856395c9e321e, it is part of Weston 2.0.

The background is now always displayed in a 32-bit XRGB buffer, with no configuration option to restore RGB565 support.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.