From d3429fa37de9d03a84af4a3e4e04419441d9f465 Mon Sep 17 00:00:00 2001 From: Victor Berger Date: Sat, 10 Oct 2020 20:31:44 +0200 Subject: [PATCH] anvil: send frame callback before blocking to draw on winit --- anvil/src/winit.rs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/anvil/src/winit.rs b/anvil/src/winit.rs index 4f3c6a4..01fc281 100644 --- a/anvil/src/winit.rs +++ b/anvil/src/winit.rs @@ -98,6 +98,13 @@ pub fn run_winit( .dispatch_new_events(|event, _| state.process_input_event(event)) .unwrap(); + // Send frame events so that client start drawing their next frame + state + .window_map + .borrow() + .send_frames(start_time.elapsed().as_millis() as u32); + display.borrow_mut().flush_clients(&mut state); + // drawing logic { use glium::Surface; @@ -140,13 +147,7 @@ pub fn run_winit( error!(log, "Error during rendering: {:?}", err); } } - // Send frame events so that client start drawing their next frame - state - .window_map - .borrow() - .send_frames(start_time.elapsed().as_millis() as u32); - display.borrow_mut().flush_clients(&mut state); - + if event_loop .dispatch(Some(Duration::from_millis(16)), &mut state) .is_err()