bug: fix using 'none' for chart legend position in configs (#1593)

* bug: fix using 'none' for legend position in configs

* forgot memory oops

* update changelog
This commit is contained in:
Clement Tsang 2024-09-12 05:23:20 -04:00 committed by GitHub
parent eaa56238be
commit 3edf430908
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 12 additions and 5 deletions

View File

@ -27,6 +27,7 @@ That said, these are more guidelines rather than hardset rules, though the proje
- [#1551](https://github.com/ClementTsang/bottom/pull/1551): Fix missing parent section names in default config. - [#1551](https://github.com/ClementTsang/bottom/pull/1551): Fix missing parent section names in default config.
- [#1552](https://github.com/ClementTsang/bottom/pull/1552): Fix typo in default config. - [#1552](https://github.com/ClementTsang/bottom/pull/1552): Fix typo in default config.
- [#1578](https://github.com/ClementTsang/bottom/pull/1578): Fix missing selected text background colour in `default-light` theme. - [#1578](https://github.com/ClementTsang/bottom/pull/1578): Fix missing selected text background colour in `default-light` theme.
- [#1593](https://github.com/ClementTsang/bottom/pull/1593): Fix using `"none"` for chart legend position in configs.
### Changes ### Changes

View File

@ -223,7 +223,7 @@ impl FromStr for LegendPosition {
type Err = ParseLegendPositionError; type Err = ParseLegendPositionError;
fn from_str(s: &str) -> Result<Self, Self::Err> { fn from_str(s: &str) -> Result<Self, Self::Err> {
match s.to_ascii_lowercase().as_str() { match s {
"top" => Ok(Self::Top), "top" => Ok(Self::Top),
"top-left" => Ok(Self::TopLeft), "top-left" => Ok(Self::TopLeft),
"top-right" => Ok(Self::TopRight), "top-right" => Ok(Self::TopRight),

View File

@ -960,8 +960,11 @@ fn get_network_legend_position(
position => Some(parse_config_value!(position.parse(), "network_legend")?), position => Some(parse_config_value!(position.parse(), "network_legend")?),
} }
} else if let Some(flags) = &config.flags { } else if let Some(flags) = &config.flags {
if let Some(legend) = &flags.network_legend { if let Some(s) = &flags.network_legend {
Some(parse_arg_value!(legend.parse(), "network_legend")?) match s.to_ascii_lowercase().trim() {
"none" => None,
position => Some(parse_arg_value!(position.parse(), "network_legend")?),
}
} else { } else {
Some(LegendPosition::default()) Some(LegendPosition::default())
} }
@ -981,8 +984,11 @@ fn get_memory_legend_position(
position => Some(parse_config_value!(position.parse(), "memory_legend")?), position => Some(parse_config_value!(position.parse(), "memory_legend")?),
} }
} else if let Some(flags) = &config.flags { } else if let Some(flags) = &config.flags {
if let Some(legend) = &flags.memory_legend { if let Some(s) = &flags.memory_legend {
Some(parse_arg_value!(legend.parse(), "memory_legend")?) match s.to_ascii_lowercase().trim() {
"none" => None,
position => Some(parse_arg_value!(position.parse(), "memory_legend")?),
}
} else { } else {
Some(LegendPosition::default()) Some(LegendPosition::default())
} }