Fix window title not filled by default
In the config, if `window` is undefined, the derived `Default` for the String `title` is used, which is an empty String. This was unintended, and causes issues in gnome-shell (e.g. in the alt-tab dialog) when the window title is an empty string. This commit adds a manually implemented default for the `WindowConfig`, it's the same as the derived `Default`, except for the `title`, which will now always be "Alacritty" as originally intended.
This commit is contained in:
parent
f1f51d3c02
commit
a75e949344
|
@ -301,8 +301,7 @@ mod test {
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn dynamic_title_ignoring_options_by_default() {
|
fn dynamic_title_ignoring_options_by_default() {
|
||||||
let mut config = Config::default();
|
let config = Config::default();
|
||||||
config.window.title = "Alacritty".to_string();
|
|
||||||
let old_dynamic_title = config.dynamic_title();
|
let old_dynamic_title = config.dynamic_title();
|
||||||
|
|
||||||
let config = Options::default().into_config(config);
|
let config = Options::default().into_config(config);
|
||||||
|
|
|
@ -9,7 +9,7 @@ use crate::index::{Column, Line};
|
||||||
pub const DEFAULT_NAME: &str = "Alacritty";
|
pub const DEFAULT_NAME: &str = "Alacritty";
|
||||||
|
|
||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
#[derive(Deserialize, Debug, Clone, Default, PartialEq, Eq)]
|
#[derive(Deserialize, Debug, Clone, PartialEq, Eq)]
|
||||||
pub struct WindowConfig {
|
pub struct WindowConfig {
|
||||||
/// Initial dimensions
|
/// Initial dimensions
|
||||||
#[serde(deserialize_with = "failure_default")]
|
#[serde(deserialize_with = "failure_default")]
|
||||||
|
@ -69,6 +69,24 @@ impl WindowConfig {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl Default for WindowConfig {
|
||||||
|
fn default() -> WindowConfig {
|
||||||
|
WindowConfig {
|
||||||
|
dimensions: Default::default(),
|
||||||
|
position: Default::default(),
|
||||||
|
padding: Default::default(),
|
||||||
|
decorations: Default::default(),
|
||||||
|
dynamic_padding: Default::default(),
|
||||||
|
startup_mode: Default::default(),
|
||||||
|
class: Default::default(),
|
||||||
|
embed: Default::default(),
|
||||||
|
gtk_theme_variant: Default::default(),
|
||||||
|
start_maximized: Default::default(),
|
||||||
|
title: default_title(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Copy, Clone, PartialEq, Eq)]
|
#[derive(Debug, Deserialize, Copy, Clone, PartialEq, Eq)]
|
||||||
pub enum StartupMode {
|
pub enum StartupMode {
|
||||||
Windowed,
|
Windowed,
|
||||||
|
|
Loading…
Reference in New Issue