aboutsummaryrefslogtreecommitdiff
path: root/niri-config/src
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2025-06-04 08:26:51 +0300
committerIvan Molodetskikh <yalterz@gmail.com>2025-06-07 13:12:50 -0700
commitf918eabe6a144e78c62c3fc0cfa7fe32e4623e5a (patch)
tree5ed62d6eb939ef5e84f1114dfa08fe289800df8f /niri-config/src
parent0698f167e51c38bd6d50e73983a13a62d2f8eefe (diff)
downloadniri-f918eabe6a144e78c62c3fc0cfa7fe32e4623e5a.tar.gz
niri-f918eabe6a144e78c62c3fc0cfa7fe32e4623e5a.tar.bz2
niri-f918eabe6a144e78c62c3fc0cfa7fe32e4623e5a.zip
Implement xwayland-satellite integration
Diffstat (limited to 'niri-config/src')
-rw-r--r--niri-config/src/lib.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/niri-config/src/lib.rs b/niri-config/src/lib.rs
index 83689a4b..e82f881e 100644
--- a/niri-config/src/lib.rs
+++ b/niri-config/src/lib.rs
@@ -65,6 +65,8 @@ pub struct Config {
pub overview: Overview,
#[knuffel(child, default)]
pub environment: Environment,
+ #[knuffel(child, default)]
+ pub xwayland_satellite: XwaylandSatellite,
#[knuffel(children(name = "window-rule"))]
pub window_rules: Vec<WindowRule>,
#[knuffel(children(name = "layer-rule"))]
@@ -1365,6 +1367,23 @@ pub struct EnvironmentVariable {
}
#[derive(knuffel::Decode, Debug, Clone, PartialEq, Eq)]
+pub struct XwaylandSatellite {
+ #[knuffel(child)]
+ pub off: bool,
+ #[knuffel(child, unwrap(argument), default = Self::default().path)]
+ pub path: String,
+}
+
+impl Default for XwaylandSatellite {
+ fn default() -> Self {
+ Self {
+ off: false,
+ path: String::from("xwayland-satellite"),
+ }
+ }
+}
+
+#[derive(knuffel::Decode, Debug, Clone, PartialEq, Eq)]
pub struct Workspace {
#[knuffel(argument)]
pub name: WorkspaceName,
@@ -4796,6 +4815,10 @@ mod tests {
},
],
),
+ xwayland_satellite: XwaylandSatellite {
+ off: false,
+ path: "xwayland-satellite",
+ },
window_rules: [
WindowRule {
matches: [