From 7960a73e9dda9f82c67e2f7b37766c88f5889c14 Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Tue, 13 Feb 2024 13:14:49 +0400 Subject: config: Fix missing layout {} defaulting to 0 gaps --- niri-config/src/lib.rs | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/niri-config/src/lib.rs b/niri-config/src/lib.rs index ba5e334a..025675bf 100644 --- a/niri-config/src/lib.rs +++ b/niri-config/src/lib.rs @@ -277,7 +277,7 @@ pub struct Mode { pub refresh: Option, } -#[derive(knuffel::Decode, Debug, Default, Clone, PartialEq)] +#[derive(knuffel::Decode, Debug, Clone, PartialEq)] pub struct Layout { #[knuffel(child, default)] pub focus_ring: FocusRing, @@ -289,12 +289,26 @@ pub struct Layout { pub default_column_width: Option, #[knuffel(child, unwrap(argument), default)] pub center_focused_column: CenterFocusedColumn, - #[knuffel(child, unwrap(argument), default = 16)] + #[knuffel(child, unwrap(argument), default = Self::default().gaps)] pub gaps: u16, #[knuffel(child, default)] pub struts: Struts, } +impl Default for Layout { + fn default() -> Self { + Self { + focus_ring: Default::default(), + border: Default::default(), + preset_column_widths: Default::default(), + default_column_width: Default::default(), + center_focused_column: Default::default(), + gaps: 16, + struts: Default::default(), + } + } +} + #[derive(knuffel::Decode, Debug, Clone, PartialEq, Eq)] pub struct SpawnAtStartup { #[knuffel(arguments)] -- cgit