Manually center top aligned text

This commit is contained in:
Cory Forsstrom 2022-04-27 08:56:43 -07:00
parent 4329f0480b
commit bc8b4bb182

View file

@ -402,16 +402,18 @@ pub fn draw<T, Renderer>(
if let Some(label) = if let Some(label) =
label.as_ref().map(String::as_str).or_else(|| placeholder) label.as_ref().map(String::as_str).or_else(|| placeholder)
{ {
let text_size = f32::from(text_size.unwrap_or(renderer.default_size()));
renderer.fill_text(Text { renderer.fill_text(Text {
content: label, content: label,
size: f32::from(text_size.unwrap_or(renderer.default_size())), size: text_size,
font: font.clone(), font: font.clone(),
color: is_selected color: is_selected
.then(|| style.text_color) .then(|| style.text_color)
.unwrap_or(style.placeholder_color), .unwrap_or(style.placeholder_color),
bounds: Rectangle { bounds: Rectangle {
x: bounds.x + f32::from(padding.left), x: bounds.x + f32::from(padding.left),
y: bounds.center_y(), y: bounds.center_y() - text_size / 2.0,
..bounds ..bounds
}, },
horizontal_alignment: alignment::Horizontal::Left, horizontal_alignment: alignment::Horizontal::Left,