Merge branch 'fix_layout_color_assert' into 'master'

fix color_range assertion when wlr_color_representation_v1 is used

See merge request wlroots/wlroots!5242
This commit is contained in:
Steve Williams 2026-02-03 18:44:50 +00:00
commit 02d6732563
8 changed files with 136 additions and 27 deletions

View file

@ -63,4 +63,9 @@ enum wl_shm_format convert_drm_format_to_wl_shm(uint32_t fmt);
*/
bool pixel_format_has_alpha(uint32_t fmt);
/**
* Return true if the DRM FourCC fmt belongs to a YCbCr colorspace family, false otherwise.
*/
bool pixel_format_is_ycbcr(uint32_t fmt);
#endif

View file

@ -86,7 +86,6 @@ struct wlr_vk_format {
uint32_t drm;
VkFormat vk;
VkFormat vk_srgb; // sRGB version of the format, or 0 if nonexistent
bool is_ycbcr;
};
extern const VkImageUsageFlags vulkan_render_usage, vulkan_shm_tex_usage, vulkan_dma_tex_usage;
@ -125,6 +124,7 @@ void vulkan_format_props_query(struct wlr_vk_device *dev,
const struct wlr_vk_format_modifier_props *vulkan_format_props_find_modifier(
const struct wlr_vk_format_props *props, uint64_t mod, bool render);
void vulkan_format_props_finish(struct wlr_vk_format_props *props);
bool vulkan_format_is_ycbcr(const struct wlr_vk_format *format);
struct wlr_vk_pipeline_layout_key {
enum wlr_scale_filter_mode filter_mode;