state: Split up send_frames

This commit is contained in:
Victoria Brekenfeld 2024-06-07 19:44:59 +02:00 committed by Victoria Brekenfeld
parent c7d50e7c5b
commit 9e05a84db2
4 changed files with 331 additions and 211 deletions

View file

@ -84,10 +84,15 @@ impl WinitState {
.with_context(|| "Failed to submit buffer for display")?;
#[cfg(feature = "debug")]
self.fps.displayed();
state.send_frames(&self.output, &states, |_| None);
state.send_frames(&self.output);
state.update_primary_output(&self.output, &states);
state.send_dmabuf_feedback(&self.output, &states, |_| None);
if damage.is_some() {
let mut output_presentation_feedback =
state.take_presentation_feedback(&self.output, &states);
let mut output_presentation_feedback = state
.shell
.read()
.unwrap()
.take_presentation_feedback(&self.output, &states);
output_presentation_feedback.presented(
state.clock.now(),
self.output

View file

@ -236,10 +236,15 @@ impl Surface {
.with_context(|| "Failed to submit buffer for display")?;
#[cfg(feature = "debug")]
self.fps.displayed();
state.send_frames(&self.output, &states, |_| None);
state.send_frames(&self.output);
state.update_primary_output(&self.output, &states);
state.send_dmabuf_feedback(&self.output, &states, |_| None);
if damage.is_some() {
let mut output_presentation_feedback =
state.take_presentation_feedback(&self.output, &states);
let mut output_presentation_feedback = state
.shell
.read()
.unwrap()
.take_presentation_feedback(&self.output, &states);
output_presentation_feedback.presented(
state.clock.now(),
self.output