Fix overlapping block headers when using custom line height

This fixes block headers overlapping over text in the buffer when using
a custom line height of 1.25.

It fixes the issue by making the parent container a v-flex,
vertically-justifying the content and moving from relative padding to
absolute padding for the header itself.

Co-authored-by: antonio <antonio@zed.dev>
Co-authored-by: julia <julia@zed.dev>
Co-authored-by: marshall <marshall@zed.dev>
This commit is contained in:
Thorsten Ball 2024-01-16 16:46:24 +01:00
parent 0bf66e486a
commit 1cbdf2ba22

View file

@ -2288,17 +2288,18 @@ impl EditorElement {
.map(|p| SharedString::from(p.to_string_lossy().to_string() + "/")); .map(|p| SharedString::from(p.to_string_lossy().to_string() + "/"));
} }
div() v_flex()
.id(("path header container", block_id)) .id(("path header container", block_id))
.size_full() .size_full()
.p_1p5() .justify_center()
.p(gpui::px(6.))
.child( .child(
h_flex() h_flex()
.id("path header block") .id("path header block")
.py_1p5() .size_full()
.pl_3() .pl(gpui::px(12.))
.pr_2() .pr(gpui::px(8.))
.rounded_lg() .rounded_md()
.shadow_md() .shadow_md()
.border() .border()
.border_color(cx.theme().colors().border) .border_color(cx.theme().colors().border)
@ -2861,6 +2862,7 @@ impl Element for EditorElement {
cx.with_text_style( cx.with_text_style(
Some(gpui::TextStyleRefinement { Some(gpui::TextStyleRefinement {
font_size: Some(self.style.text.font_size), font_size: Some(self.style.text.font_size),
line_height: Some(self.style.text.line_height),
..Default::default() ..Default::default()
}), }),
|cx| { |cx| {