diff --git a/crates/theme/src/settings.rs b/crates/theme/src/settings.rs index 60f4768f06c1f17bbb4390665f4d416ae30eff1f..719e276c5752a681f7f8479922331a3f2550675a 100644 --- a/crates/theme/src/settings.rs +++ b/crates/theme/src/settings.rs @@ -247,6 +247,7 @@ pub struct ThemeSettingsContent { pub ui_font_family: Option, /// The font fallbacks to use for rendering in the UI. #[serde(default)] + #[schemars(default = "default_font_fallbacks")] pub ui_font_fallbacks: Option>, /// The OpenType features to enable for text in the UI. #[serde(default)] @@ -260,6 +261,7 @@ pub struct ThemeSettingsContent { pub buffer_font_family: Option, /// The font fallbacks to use for rendering in text buffers. #[serde(default)] + #[schemars(default = "default_font_fallbacks")] pub buffer_font_fallbacks: Option>, /// The default font size for rendering in text buffers. #[serde(default)] @@ -299,6 +301,10 @@ fn default_font_features() -> Option { Some(FontFeatures::default()) } +fn default_font_fallbacks() -> Option { + Some(FontFallbacks::default()) +} + impl ThemeSettingsContent { /// Sets the theme for the given appearance to the theme with the specified name. pub fn set_theme(&mut self, theme_name: String, appearance: Appearance) {