From 2511a98e8b070be3b83a466023576f7e4c6e7ddb Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Tue, 21 Jan 2025 09:40:00 +0300 Subject: Extract Niri::update_shaders() --- src/backend/tty.rs | 2 +- src/backend/winit.rs | 2 +- src/niri.rs | 10 +++++++++- 3 files changed, 11 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/backend/tty.rs b/src/backend/tty.rs index 951ec4bd..4ea81edc 100644 --- a/src/backend/tty.rs +++ b/src/backend/tty.rs @@ -547,7 +547,7 @@ impl Tty { } drop(config); - niri.layout.update_shaders(); + niri.update_shaders(); // Create the dmabuf global. let primary_formats = renderer.dmabuf_formats(); diff --git a/src/backend/winit.rs b/src/backend/winit.rs index 3472ff3e..3deec7a3 100644 --- a/src/backend/winit.rs +++ b/src/backend/winit.rs @@ -156,7 +156,7 @@ impl Winit { } drop(config); - niri.layout.update_shaders(); + niri.update_shaders(); niri.add_output(self.output.clone(), None, false); } diff --git a/src/niri.rs b/src/niri.rs index 728d0f75..a8d6f004 100644 --- a/src/niri.rs +++ b/src/niri.rs @@ -1260,7 +1260,7 @@ impl State { } if shaders_changed { - self.niri.layout.update_shaders(); + self.niri.update_shaders(); } if cursor_inactivity_timeout_changed { @@ -3264,6 +3264,14 @@ impl Niri { } } + pub fn update_shaders(&mut self) { + self.layout.update_shaders(); + + for mapped in self.mapped_layer_surfaces.values_mut() { + mapped.update_shaders(); + } + } + pub fn render( &self, renderer: &mut R, -- cgit