Protect selected windows from screen capture

Add capture privacy rules for windows, transient children, overview previews and client cursors, with separate capture rendering and deferred-frame invalidation. Keep detached close snapshots out of captures after clients leave the registry.

Validated with release workspace tests, private compositor/EGL regressions, and an isolated release PipeWire capture test.
This commit is contained in:
Samuel Onoja authored and GitHub committed 2026-10-03 10:49:01 +01:00
1 parent bffd538dd4
commit 453ec16583
24 files changed
+1132 -41

No files matched your search

+4
View File
@@ -898,6 +898,10 @@ impl Ferese {
reject("Window no longer exists".into());
return;
};
if self.capture_protected(&window) {
reject("Window is protected from capture".into());
return;
}
let Some(output) = self
.space
.outputs()