Render selected toplevels through a private portal-only capture protocol, preserve logical snapshot geometry, and renegotiate PipeWire video on window resizing. Bound outstanding snapshots and retry temporary contention; stop on source closure and session locking. Validation: portal unit tests (31), capture budget unit, private-bus portal contracts, and real nested/PipeWire isolation, workspace, resize, close and paused-lock tests pass. Independent review cleared. Monitor restore integration timed out on both this build and the unchanged previous compositor under the current nested host.
232 lines
7.2 KiB
Rust
232 lines
7.2 KiB
Rust
//! Generated bindings for Ferese Wayland protocols.
|
|
|
|
#![forbid(unsafe_code)]
|
|
|
|
/// Semantic surface effects protocol.
|
|
pub mod effects {
|
|
/// Version 1 of the semantic surface effects protocol.
|
|
pub mod v1 {
|
|
#[cfg(feature = "client")]
|
|
pub use generated::client;
|
|
#[cfg(feature = "server")]
|
|
pub use generated::server;
|
|
|
|
mod generated {
|
|
#![allow(
|
|
dead_code,
|
|
non_camel_case_types,
|
|
non_upper_case_globals,
|
|
non_snake_case,
|
|
unused_imports,
|
|
unused_unsafe,
|
|
unused_variables,
|
|
clippy::all
|
|
)]
|
|
|
|
#[cfg(feature = "client")]
|
|
pub mod client {
|
|
use wayland_client;
|
|
use wayland_client::protocol::*;
|
|
|
|
pub mod __interfaces {
|
|
use wayland_client::protocol::__interfaces::*;
|
|
|
|
wayland_scanner::generate_interfaces!("../../protocols/ferese-effects-v1.xml");
|
|
}
|
|
use self::__interfaces::*;
|
|
|
|
wayland_scanner::generate_client_code!("../../protocols/ferese-effects-v1.xml");
|
|
}
|
|
|
|
#[cfg(feature = "server")]
|
|
pub mod server {
|
|
use wayland_server;
|
|
use wayland_server::protocol::*;
|
|
|
|
pub mod __interfaces {
|
|
use wayland_server::protocol::__interfaces::*;
|
|
|
|
wayland_scanner::generate_interfaces!("../../protocols/ferese-effects-v1.xml");
|
|
}
|
|
use self::__interfaces::*;
|
|
|
|
wayland_scanner::generate_server_code!("../../protocols/ferese-effects-v1.xml");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/// Application dialog material protocol.
|
|
pub mod material {
|
|
/// Version 1 of the application dialog material protocol.
|
|
pub mod v1 {
|
|
#[cfg(feature = "client")]
|
|
pub use generated::client;
|
|
#[cfg(feature = "server")]
|
|
pub use generated::server;
|
|
|
|
mod generated {
|
|
#![allow(
|
|
dead_code,
|
|
non_camel_case_types,
|
|
non_upper_case_globals,
|
|
non_snake_case,
|
|
unused_imports,
|
|
unused_unsafe,
|
|
unused_variables,
|
|
clippy::all
|
|
)]
|
|
|
|
#[cfg(feature = "client")]
|
|
pub mod client {
|
|
use wayland_client;
|
|
use wayland_client::protocol::*;
|
|
|
|
pub mod __interfaces {
|
|
use wayland_client::protocol::__interfaces::*;
|
|
|
|
wayland_scanner::generate_interfaces!("../../protocols/ferese-material-v1.xml");
|
|
}
|
|
use self::__interfaces::*;
|
|
|
|
wayland_scanner::generate_client_code!("../../protocols/ferese-material-v1.xml");
|
|
}
|
|
|
|
#[cfg(feature = "server")]
|
|
pub mod server {
|
|
use wayland_server;
|
|
use wayland_server::protocol::*;
|
|
|
|
pub mod __interfaces {
|
|
use wayland_server::protocol::__interfaces::*;
|
|
|
|
wayland_scanner::generate_interfaces!("../../protocols/ferese-material-v1.xml");
|
|
}
|
|
use self::__interfaces::*;
|
|
|
|
wayland_scanner::generate_server_code!("../../protocols/ferese-material-v1.xml");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/// Private shell control and managed-window metadata protocol.
|
|
pub mod shell {
|
|
/// Version 1 of the Ferese shell control protocol.
|
|
pub mod v1 {
|
|
#[cfg(feature = "client")]
|
|
pub use generated::client;
|
|
#[cfg(feature = "server")]
|
|
pub use generated::server;
|
|
|
|
mod generated {
|
|
#![allow(
|
|
dead_code,
|
|
non_camel_case_types,
|
|
non_upper_case_globals,
|
|
non_snake_case,
|
|
unused_imports,
|
|
unused_unsafe,
|
|
unused_variables,
|
|
clippy::all
|
|
)]
|
|
|
|
#[cfg(feature = "client")]
|
|
pub mod client {
|
|
use wayland_client;
|
|
use wayland_client::protocol::*;
|
|
|
|
pub mod __interfaces {
|
|
use wayland_client::protocol::__interfaces::*;
|
|
|
|
wayland_scanner::generate_interfaces!("../../protocols/ferese-shell-v1.xml");
|
|
}
|
|
use self::__interfaces::*;
|
|
|
|
wayland_scanner::generate_client_code!("../../protocols/ferese-shell-v1.xml");
|
|
}
|
|
|
|
#[cfg(feature = "server")]
|
|
pub mod server {
|
|
use wayland_server;
|
|
use wayland_server::protocol::*;
|
|
|
|
pub mod __interfaces {
|
|
use wayland_server::protocol::__interfaces::*;
|
|
|
|
wayland_scanner::generate_interfaces!("../../protocols/ferese-shell-v1.xml");
|
|
}
|
|
use self::__interfaces::*;
|
|
|
|
wayland_scanner::generate_server_code!("../../protocols/ferese-shell-v1.xml");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/// Private native portal window capture protocol.
|
|
pub mod window_capture {
|
|
/// Version 1 of the native portal window capture protocol.
|
|
pub mod v1 {
|
|
#[cfg(feature = "client")]
|
|
pub use generated::client;
|
|
#[cfg(feature = "server")]
|
|
pub use generated::server;
|
|
|
|
mod generated {
|
|
#![allow(
|
|
dead_code,
|
|
non_camel_case_types,
|
|
non_upper_case_globals,
|
|
non_snake_case,
|
|
unused_imports,
|
|
unused_unsafe,
|
|
unused_variables,
|
|
clippy::all
|
|
)]
|
|
|
|
#[cfg(feature = "client")]
|
|
pub mod client {
|
|
use wayland_client;
|
|
use wayland_client::protocol::*;
|
|
use wayland_protocols_wlr::screencopy::v1::client::*;
|
|
|
|
pub mod __interfaces {
|
|
use wayland_client::protocol::__interfaces::*;
|
|
use wayland_protocols_wlr::screencopy::v1::client::__interfaces::*;
|
|
|
|
wayland_scanner::generate_interfaces!(
|
|
"../../protocols/ferese-window-capture-v1.xml"
|
|
);
|
|
}
|
|
use self::__interfaces::*;
|
|
|
|
wayland_scanner::generate_client_code!(
|
|
"../../protocols/ferese-window-capture-v1.xml"
|
|
);
|
|
}
|
|
|
|
#[cfg(feature = "server")]
|
|
pub mod server {
|
|
use wayland_protocols_wlr::screencopy::v1::server::*;
|
|
use wayland_server;
|
|
use wayland_server::protocol::*;
|
|
|
|
pub mod __interfaces {
|
|
use wayland_protocols_wlr::screencopy::v1::server::__interfaces::*;
|
|
use wayland_server::protocol::__interfaces::*;
|
|
|
|
wayland_scanner::generate_interfaces!(
|
|
"../../protocols/ferese-window-capture-v1.xml"
|
|
);
|
|
}
|
|
use self::__interfaces::*;
|
|
|
|
wayland_scanner::generate_server_code!(
|
|
"../../protocols/ferese-window-capture-v1.xml"
|
|
);
|
|
}
|
|
}
|
|
}
|
|
}
|