aboutsummaryrefslogtreecommitdiff
path: root/src/backend/tty.rs
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2023-10-13 10:33:51 +0400
committerIvan Molodetskikh <yalterz@gmail.com>2023-10-13 13:30:36 +0400
commit0a3274749563067b06af83f870ff39dc503a5355 (patch)
tree5758345ca1ad71fcc1564a5675b039a801aa138a /src/backend/tty.rs
parentf625dede1a2a002527f8297cfecef8b0bd4b10a2 (diff)
downloadniri-0a3274749563067b06af83f870ff39dc503a5355.tar.gz
niri-0a3274749563067b06af83f870ff39dc503a5355.tar.bz2
niri-0a3274749563067b06af83f870ff39dc503a5355.zip
Send dmabuf feedbacks from the backend
Diffstat (limited to 'src/backend/tty.rs')
-rw-r--r--src/backend/tty.rs11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/backend/tty.rs b/src/backend/tty.rs
index a1c75c8d..74f3e9ed 100644
--- a/src/backend/tty.rs
+++ b/src/backend/tty.rs
@@ -837,18 +837,18 @@ impl Tty {
output: &Output,
elements: &[OutputRenderElements<GlesRenderer>],
target_presentation_time: Duration,
- ) -> Option<&DmabufFeedback> {
+ ) {
let span = tracy_client::span!("Tty::render");
let Some(device) = self.output_device.as_mut() else {
error!("missing output device");
- return None;
+ return;
};
let tty_state: &TtyOutputState = output.user_data().get().unwrap();
let Some(surface) = device.surfaces.get_mut(&tty_state.crtc) else {
error!("missing surface");
- return None;
+ return;
};
span.emit_text(&surface.name);
@@ -873,6 +873,7 @@ impl Tty {
}
niri.update_primary_scanout_output(output, &res.states);
+ niri.send_dmabuf_feedbacks(output, &surface.dmabuf_feedback);
if res.damage.is_some() {
let presentation_feedbacks =
@@ -895,7 +896,7 @@ impl Tty {
}
};
- return Some(&surface.dmabuf_feedback);
+ return;
}
Err(err) => {
error!("error queueing frame: {err}");
@@ -914,8 +915,6 @@ impl Tty {
// Queue a timer to fire at the predicted vblank time.
queue_estimated_vblank_timer(niri, output.clone(), target_presentation_time);
-
- None
}
pub fn change_vt(&mut self, vt: i32) {