kms: New backend

New backend utilizing a thread per surface for precise frame
scheduling.
This commit is contained in:
Victoria Brekenfeld 2024-06-07 20:04:39 +02:00 committed by Victoria Brekenfeld
parent 3b7bba3add
commit 469a366207
24 changed files with 3219 additions and 1958 deletions

View file

@ -99,7 +99,7 @@ pub fn screenshot_window(state: &mut State, surface: &CosmicSurface) {
let res = match &mut state.backend {
BackendData::Kms(kms) => {
let node = advertised_node_for_surface(&wl_surface, &state.common.display_handle)
.unwrap_or(kms.primary_node);
.unwrap_or(kms.primary_node.expect("No Software Rendering"));
kms.api
.single_renderer(&node)
.with_context(|| "Failed to get renderer for screenshot")