mesa/docs/_static/specs
Robert Mader 9bdab38424 egl: Implement EGL_MESA_x11_native_visual_id
EGL 1.5 specification requires to not match on EGL_NATIVE_VISUAL_ID.

EGL_MESA_x11_native_visual_id extension allows us to remove this
restriction for X11, where we need to match EGL_NATIVE_VISUAL_ID to find
visuals which allow blending.

The reasoning is that on X11, compositors use the visual as "magic bit"
to decide whether to alpha-blend surface contents.
Unlike on most (all?) other windowing systems, requesting an alpha channel
for the config alone does not already imply blending on the compositor
level.

Thus, in order to allow clients to explicitly request configs with
"magic bit" and, similar to GLX, to order configs in a way so clients
not requesting alpha-blending do not get it by accident, do match
visual ids.

Note that one consequence of this is that more configs get
reported to clients.

Based on a patch by Freya Gentz <zegentzy@protonmail.com>, see
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/2376

Signed-off-by: Robert Mader <robert.mader@posteo.de>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9989>
2024-05-11 19:43:47 +00:00
..
OLD egl/wayland: Remove EGL_WL_create_wayland_buffer_from_image 2024-02-29 18:26:53 +00:00
EGL_MESA_device_software.txt
EGL_MESA_drm_image_formats.txt
EGL_MESA_platform_surfaceless.txt
EGL_MESA_query_driver.txt
EGL_MESA_x11_native_visual_id.txt egl: Implement EGL_MESA_x11_native_visual_id 2024-05-11 19:43:47 +00:00
enums.txt
EXT_shader_integer_mix.spec
EXT_shader_samples_identical.txt
INTEL_shader_atomic_float_minmax.txt
MESA_bgra.txt
MESA_configless_context.spec
MESA_copy_sub_buffer.spec
MESA_drm_image.spec
MESA_framebuffer_flip_y.txt
MESA_image_dma_buf_export.txt
MESA_pack_invert.spec
MESA_pixmap_colormap.spec
MESA_query_renderer.spec
MESA_release_buffers.spec
MESA_sampler_objects.spec
MESA_shader_integer_functions.txt
MESA_swap_control.spec
MESA_texture_const_bandwidth.spec
MESA_texture_signed_rgba.spec
MESA_window_pos.spec
MESA_ycbcr_texture.spec
WL_bind_wayland_display.spec