From 8ecfdd7b207f32667c1eaa22477c4c34664fbd43 Mon Sep 17 00:00:00 2001 From: Colin Marc Date: Fri, 16 Aug 2024 18:00:35 +0200 Subject: [PATCH] Add VK_EXT_disable_wayland_color_management Fixes #2307 --- ..._EXT_disable_wayland_color_management.adoc | 31 +++++++++++++++++++ appendices/VK_KHR_wayland_surface.adoc | 3 ++ .../platformCreateSurface_wayland.adoc | 24 +++++++++++--- xml/vk.xml | 15 +++++++-- 4 files changed, 67 insertions(+), 6 deletions(-) create mode 100644 appendices/VK_EXT_disable_wayland_color_management.adoc diff --git a/appendices/VK_EXT_disable_wayland_color_management.adoc b/appendices/VK_EXT_disable_wayland_color_management.adoc new file mode 100644 index 000000000..be6635ee4 --- /dev/null +++ b/appendices/VK_EXT_disable_wayland_color_management.adoc @@ -0,0 +1,31 @@ +// Copyright 2016-2024 The Khronos Group Inc. +// +// SPDX-License-Identifier: CC-BY-4.0 + +include::{generated}/meta/{refprefix}VK_EXT_disable_wayland_color_management.adoc[] + +=== Other Extension Metadata + +*Last Modified Date*:: + 2024-08-16 +*IP Status*:: + No known IP claims. +*Contributors*:: + Colin Marc + +=== Description + +This extension expands elink:VkWaylandSurfaceCreateFlagsKHR to allow +applications to request that implementations avoid using the +`wp_color_management` protocol when creating or managing the surface. + +include::{generated}/interfaces/VK_EXT_disable_wayland_color_management.adoc[] + +=== Issues + +None. + +=== Version History + + * Revision 1, 2024-08-16 (Colin Marc) + ** Initial draft diff --git a/appendices/VK_KHR_wayland_surface.adoc b/appendices/VK_KHR_wayland_surface.adoc index bb4118877..dd4654782 100644 --- a/appendices/VK_KHR_wayland_surface.adoc +++ b/appendices/VK_KHR_wayland_surface.adoc @@ -90,3 +90,6 @@ an onerous restriction on application developers. ename:VK_PRESENT_MODE_MAILBOX_KHR. ** Added wording about interactions between flink:vkQueuePresentKHR and the Wayland requests sent to the compositor. + + * Revision 7, 2024-08-16 (Colin Marc) + ** Added VkWaylandSurfaceCreateFlagBits. diff --git a/chapters/VK_KHR_wayland_surface/platformCreateSurface_wayland.adoc b/chapters/VK_KHR_wayland_surface/platformCreateSurface_wayland.adoc index f96a22a84..b4054c16e 100644 --- a/chapters/VK_KHR_wayland_surface/platformCreateSurface_wayland.adoc +++ b/chapters/VK_KHR_wayland_surface/platformCreateSurface_wayland.adoc @@ -35,7 +35,8 @@ include::{generated}/api/structs/VkWaylandSurfaceCreateInfoKHR.adoc[] * pname:sType is a elink:VkStructureType value identifying this structure. * pname:pNext is `NULL` or a pointer to a structure extending this structure. - * pname:flags is reserved for future use. + * pname:flags is a bitmask of elink:VkWaylandSurfaceCreateFlagBitsKHR + specifying additional surface creation parameters. * pname:display and pname:surface are pointers to the Wayland code:wl_display and code:wl_surface to associate the surface with. @@ -87,10 +88,25 @@ If the application wishes to synchronize any window changes with a particular frame, such requests must: be sent to the Wayland display server prior to calling flink:vkQueuePresentKHR. -[open,refpage='VkWaylandSurfaceCreateFlagsKHR',desc='Reserved for future use',type='flags'] +[open,refpage='VkWaylandSurfaceCreateFlagBitsKHR',desc='Bitmask specifying additional parameters for the Wayland surface.',type='enums',xrefs='VkWaylandSurfaceCreateInfoKHR'] +-- +include::{generated}/api/enums/VkWaylandSurfaceCreateFlagBitsKHR.adoc[] +-- + +ifdef::VK_EXT_disable_wayland_color_management[] +Possible values of the pname:flags member of +slink:VkWaylandSurfaceCreateInfo are: + + * ename:VK_WAYLAND_SURFACE_CREATE_DISABLE_COLOR_MANAGEMENT specifies that the + implementation should avoid using the `wp_color_management` protocol + manage the surface. +endif::VK_EXT_disable_wayland_color_management[] + + +[open,refpage='VkWaylandSurfaceCreateFlagsKHR',desc='Bitmask of VkWaylandSurfaceCreateFlagBitsKHR',type='flags'] -- include::{generated}/api/flags/VkWaylandSurfaceCreateFlagsKHR.adoc[] -tname:VkWaylandSurfaceCreateFlagsKHR is a bitmask type for setting a mask, -but is currently reserved for future use. +tname:VkWaylandSurfaceCreateFlagsKHR is a bitmask type for setting a mask of +zero or more elink:VkWaylandSurfaceCreateFlagBitsKHR. -- diff --git a/xml/vk.xml b/xml/vk.xml index 0e92812c4..2907d9470 100755 --- a/xml/vk.xml +++ b/xml/vk.xml @@ -402,7 +402,7 @@ typedef void* MTLSharedEvent_id; typedef VkFlags VkDisplaySurfaceCreateFlagsKHR; typedef VkFlags VkAndroidSurfaceCreateFlagsKHR; typedef VkFlags VkViSurfaceCreateFlagsNN; - typedef VkFlags VkWaylandSurfaceCreateFlagsKHR; + typedef VkFlags VkWaylandSurfaceCreateFlagsKHR; typedef VkFlags VkWin32SurfaceCreateFlagsKHR; typedef VkFlags VkXlibSurfaceCreateFlagsKHR; typedef VkFlags VkXcbSurfaceCreateFlagsKHR; @@ -877,6 +877,7 @@ typedef void* MTLSharedEvent_id; + Enumerated types in the header, but not used by the API @@ -11322,6 +11323,8 @@ typedef void* MTLSharedEvent_id; + + @@ -17026,10 +17029,11 @@ typedef void* MTLSharedEvent_id; - + + @@ -24640,6 +24644,13 @@ typedef void* MTLSharedEvent_id; + + + + + + +