aboutsummaryrefslogtreecommitdiff
path: root/alacritty/src/config/window.rs
diff options
context:
space:
mode:
Diffstat (limited to 'alacritty/src/config/window.rs')
-rw-r--r--alacritty/src/config/window.rs18
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();