Implement initial window screencasting

This commit is contained in:
Ivan Molodetskikh
2024-06-27 11:36:24 +04:00
parent 0757ad08e7
commit dc92d80b9f
6 changed files with 694 additions and 148 deletions
+6
View File
@@ -466,6 +466,12 @@ impl XdgShellHandler for State {
let window = mapped.window.clone();
let output = output.clone();
#[cfg(feature = "xdp-gnome-screencast")]
self.niri
.stop_casts_for_target(crate::pw_utils::CastTarget::Window {
id: u64::from(mapped.id().get()),
});
self.backend.with_primary_renderer(|renderer| {
self.niri.layout.store_unmap_snapshot(renderer, &window);
});