Notify window before presentation

This commit is contained in:
Héctor Ramón Jiménez 2025-03-18 18:22:39 +01:00
parent 363b0e903a
commit 31b98ee3eb
No known key found for this signature in database
GPG key ID: 7CC46565708259A7
5 changed files with 29 additions and 2 deletions

View file

@ -221,6 +221,7 @@ pub fn present<T: AsRef<str>>(
viewport: &Viewport,
background_color: Color,
overlay: &[T],
on_pre_present: impl FnOnce(),
) -> Result<(), compositor::SurfaceError> {
match surface.get_current_texture() {
Ok(frame) => {
@ -249,6 +250,7 @@ pub fn present<T: AsRef<str>>(
let _ = compositor.engine.submit(&compositor.queue, encoder);
// Present the frame
on_pre_present();
frame.present();
Ok(())
@ -365,8 +367,17 @@ impl graphics::Compositor for Compositor {
viewport: &Viewport,
background_color: Color,
overlay: &[T],
on_pre_present: impl FnOnce(),
) -> Result<(), compositor::SurfaceError> {
present(self, renderer, surface, viewport, background_color, overlay)
present(
self,
renderer,
surface,
viewport,
background_color,
overlay,
on_pre_present,
)
}
fn screenshot<T: AsRef<str>>(