aboutsummaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2023-10-01 19:41:42 +0400
committerIvan Molodetskikh <yalterz@gmail.com>2023-10-01 19:41:42 +0400
commit5b6b3fcfbe61695b0e5d27e8a08592a9ebd412b0 (patch)
treee22d5bc853da8bd9f900140729ab4caeea5158d0 /src/backend
parentd8a511bbac8d487c537dc325d105c1b07ff9c0cf (diff)
downloadniri-5b6b3fcfbe61695b0e5d27e8a08592a9ebd412b0.tar.gz
niri-5b6b3fcfbe61695b0e5d27e8a08592a9ebd412b0.tar.bz2
niri-5b6b3fcfbe61695b0e5d27e8a08592a9ebd412b0.zip
Avoid sending frame callbacks to invisible surfaces
Diffstat (limited to 'src/backend')
-rw-r--r--src/backend/tty.rs2
-rw-r--r--src/backend/winit.rs3
2 files changed, 5 insertions, 0 deletions
diff --git a/src/backend/tty.rs b/src/backend/tty.rs
index 6f665432..763a5bc1 100644
--- a/src/backend/tty.rs
+++ b/src/backend/tty.rs
@@ -807,6 +807,8 @@ impl Tty {
}
}
+ niri.update_primary_scanout_output(output, &res.states);
+
if res.damage.is_some() {
let presentation_feedbacks =
niri.take_presentation_feedbacks(output, &res.states);
diff --git a/src/backend/winit.rs b/src/backend/winit.rs
index 7639b568..d1abfac2 100644
--- a/src/backend/winit.rs
+++ b/src/backend/winit.rs
@@ -161,6 +161,9 @@ impl Winit {
.damage_tracker
.render_output(self.backend.renderer(), age, elements, [0.1, 0.1, 0.1, 1.0])
.unwrap();
+
+ niri.update_primary_scanout_output(output, &res.states);
+
if let Some(damage) = res.damage {
if self
.config