From c5b1869f42fb358006c167e61d270924cd83bb84 Mon Sep 17 00:00:00 2001 From: Nova Date: Mon, 4 Aug 2025 19:37:21 -0700 Subject: [PATCH] refactor(wayland): send frame event right before render --- src/wayland/mod.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/wayland/mod.rs b/src/wayland/mod.rs index cc85711..91daa90 100644 --- a/src/wayland/mod.rs +++ b/src/wayland/mod.rs @@ -308,7 +308,7 @@ impl Plugin for WaylandPlugin { fn finish(&self, app: &mut App) { app.sub_app_mut(RenderApp) .add_systems(Render, setup_vulkano_context) - .add_systems(Render, push_used_buffers.in_set(XrRenderSet::PreRender)) + .add_systems(Render, before_render.in_set(XrRenderSet::PreRender)) .add_systems(Render, after_render.in_set(XrRenderSet::PostRender)); } } @@ -325,7 +325,7 @@ impl Default for UsedBuffers { } } -fn push_used_buffers(buffers: Res) { +fn before_render(buffers: Res) { for buf in WL_SURFACE_REGISTRY .get_valid_contents() .into_iter() @@ -334,13 +334,13 @@ fn push_used_buffers(buffers: Res) { { buffers.add_raw(buf); } + for surface in WL_SURFACE_REGISTRY.get_valid_contents() { + surface.frame_event(); + } } fn after_render(buffers: Res) { buffers.clear(); - for surface in WL_SURFACE_REGISTRY.get_valid_contents() { - surface.frame_event(); - } } #[instrument(level = "debug", name = "Wayland frame", skip_all)]