Change summary
gpui/src/elements/container.rs | 5 +++++
gpui/src/elements/line_box.rs | 6 +++++-
zed/src/workspace/pane.rs | 5 +++--
3 files changed, 13 insertions(+), 3 deletions(-)
Detailed changes
@@ -53,6 +53,11 @@ impl Container {
self
}
+ pub fn with_padding_bottom(mut self, padding: f32) -> Self {
+ self.padding.bottom = padding;
+ self
+ }
+
pub fn with_background_color(mut self, color: impl Into<ColorU>) -> Self {
self.background_color = Some(color.into());
self
@@ -38,7 +38,11 @@ impl Element for LineBox {
.select_font(self.family_id, &self.font_properties)
{
Ok(font_id) => {
- let line_height = ctx.font_cache.bounding_box(font_id, self.font_size).y();
+ let line_height = ctx
+ .font_cache
+ .bounding_box(font_id, self.font_size)
+ .y()
+ .ceil();
let child_max = vec2f(
constraint.max.x(),
ctx.font_cache.ascent(font_id, self.font_size)
@@ -187,19 +187,20 @@ impl Pane {
border.right = ix == last_item_ix;
border.bottom = ix != self.active_item;
+ let padding = 6.;
let mut container = Container::new(
Align::new(
Label::new(title, settings.ui_font_family, settings.ui_font_size).boxed(),
)
.boxed(),
)
- .with_uniform_padding(6.0)
+ .with_uniform_padding(padding)
.with_border(border);
if ix == self.active_item {
container = container
.with_background_color(ColorU::white())
- .with_overdraw_bottom(1.5);
+ .with_padding_bottom(padding + border.width);
} else {
container = container.with_background_color(ColorU::from_u32(0xeaeaebff));
}