Skip to content

Compositor target refactor

Refactor how the compositor interacts with targets, the goal is to enable the compositor to render to destinations that isn't backed by a VkSwapchain. Introduce comp_target and remove comp_window, also refactor vk_swapchain to be a sub-class of comp_target named comp_target_swapchain, the window backends now sub class comp_target_swapchain.

It's a lot of code that is touched, not sure if it's worth to review each individual commit, I think thinking about squashing the commits.

I have only tested XCB and Android backends myself, status so far:

  • Android
  • Windowed XCB
  • Direct mode XCB
  • Direct mode NVIDIA
  • Wayland
Edited by Jakob Bornecrantz

Merge request reports