// Copyright 2018-2024 The Khronos Group Inc.
//
// SPDX-License-Identifier: CC-BY-4.0

include::{generated}/meta/{refprefix}VK_EXT_acquire_xlib_display.adoc[]

=== Other Extension Metadata

*Last Modified Date*::
    2016-12-13
*IP Status*::
    No known IP claims.
*Contributors*::
  - Dave Airlie, Red Hat
  - Pierre Boudier, NVIDIA
  - James Jones, NVIDIA
  - Damien Leone, NVIDIA
  - Pierre-Loup Griffais, Valve
  - Liam Middlebrook, NVIDIA
  - Daniel Vetter, Intel

=== Description

This extension allows an application to take exclusive control on a display
currently associated with an X11 screen.
When control is acquired, the display will be deassociated from the X11
screen until control is released or the specified display connection is
closed.
Essentially, the X11 screen will behave as if the monitor has been unplugged
until control is released.

include::{generated}/interfaces/VK_EXT_acquire_xlib_display.adoc[]

=== Issues

1) Should flink:vkAcquireXlibDisplayEXT take an RandR display ID, or a
Vulkan display handle as input?

*RESOLVED*: A Vulkan display handle.
Otherwise there would be no way to specify handles to displays that had been
prevented from being included in the X11 display list by some native
platform or vendor-specific mechanism.

2) How does an application figure out which RandR display corresponds to a
Vulkan display?

*RESOLVED*: A new function, flink:vkGetRandROutputDisplayEXT, is introduced
for this purpose.

3) Should flink:vkGetRandROutputDisplayEXT be part of this extension, or a
general Vulkan / RandR or Vulkan / Xlib extension?

*RESOLVED*: To avoid yet another extension, include it in this extension.

=== Version History

  * Revision 1, 2016-12-13 (James Jones)
  ** Initial draft
