diff options
Diffstat (limited to 'alacritty/src/config/window.rs')
-rw-r--r-- | alacritty/src/config/window.rs | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/alacritty/src/config/window.rs b/alacritty/src/config/window.rs index 08f38b57..8a59a007 100644 --- a/alacritty/src/config/window.rs +++ b/alacritty/src/config/window.rs @@ -31,7 +31,13 @@ pub struct WindowConfig { pub embed: Option<c_ulong>, /// GTK theme variant. - pub gtk_theme_variant: Option<String>, + #[config(deprecated = "use window.decorations_theme_variant instead")] + gtk_theme_variant: Option<String>, + + /// System decorations theme variant. + /// + /// Controls GTK theme variant on X11 and winit client side decorations on Wayland. + decorations_theme_variant: Option<String>, /// Spread out additional padding evenly. pub dynamic_padding: bool, @@ -61,6 +67,7 @@ impl Default for WindowConfig { decorations: Default::default(), startup_mode: Default::default(), embed: Default::default(), + decorations_theme_variant: Default::default(), gtk_theme_variant: Default::default(), dynamic_padding: Default::default(), identity: Identity::default(), @@ -104,6 +111,15 @@ impl WindowConfig { } } + #[cfg(not(any(target_os = "macos", windows)))] + #[inline] + pub fn decorations_theme_variant(&self) -> Option<&str> { + self.gtk_theme_variant + .as_ref() + .or_else(|| self.decorations_theme_variant.as_ref()) + .map(|theme| theme.as_str()) + } + #[inline] pub fn padding(&self, scale_factor: f64) -> (f32, f32) { let padding_x = (f32::from(self.padding.x) * scale_factor as f32).floor(); |