git_graph: Show full commit message in tooltip on hover (#57032)
Self-Review Checklist: - [x] I've reviewed my own diff for quality, security, and reliability - [x] Unsafe blocks (if any) have justifying comments - [x] The content is consistent with the [UI/UX checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) - [ ] Tests cover the new/changed behavior - [x] Performance impact has been considered and is acceptable Closes #56903 Release Notes: - Improved commit tooltip in Git Graph. ## Screenshots Showing full commit message: <img width="3024" height="1898" alt="CleanShot 2026-05-17 at 21 59 35@2x" src="https://github.com/user-attachments/assets/503ca832-fc07-4f90-961f-a9c4e25fcba2" /> Truncating messages with more than 800 characters: <img width="1536" height="1096" alt="CleanShot 2026-05-17 at 22 12 07" src="https://github.com/user-attachments/assets/314be9a9-0aaa-44ff-aa15-de5eb38c863a" /> ## Alternative One thing I was considering is whether we should be using a `HoverPopover` instead so that the preview is wider and we don't have to truncate the commit message body. I would love to hear your thoughts on this. For now, I stuck with the `Tooltip` for simplicity reasons. <img width="3024" height="1896" alt="CleanShot 2026-05-17 at 22 04 39@2x" src="https://github.com/user-attachments/assets/5b8806f6-3dce-4675-9150-df9257ad6269" /> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
This commit is contained in:
1 parent
07367930b4
commit
bc50b7f670
2 files changed
+60
-15
No files matched your search
@@ -299,11 +299,10 @@ impl Render for CommitTooltip {
|
||||
.child(
|
||||
v_flex()
|
||||
.w(gpui::rems(30.))
|
||||
.gap_4()
|
||||
.child(
|
||||
h_flex()
|
||||
.pb_1p5()
|
||||
.gap_x_2()
|
||||
.pb_1()
|
||||
.gap_2()
|
||||
.overflow_x_hidden()
|
||||
.flex_wrap()
|
||||
.child(avatar)
|
||||
@@ -321,23 +320,24 @@ impl Render for CommitTooltip {
|
||||
.child(
|
||||
div()
|
||||
.id("inline-blame-commit-message")
|
||||
.child(message)
|
||||
.track_scroll(&self.scroll_handle)
|
||||
.py_1p5()
|
||||
.max_h(message_max_height)
|
||||
.overflow_y_scroll()
|
||||
.track_scroll(&self.scroll_handle),
|
||||
.child(message),
|
||||
)
|
||||
.child(
|
||||
h_flex()
|
||||
.text_color(cx.theme().colors().text_muted)
|
||||
.w_full()
|
||||
.justify_between()
|
||||
.pt_1p5()
|
||||
.pt_1()
|
||||
.border_t_1()
|
||||
.border_color(cx.theme().colors().border_variant)
|
||||
.child(absolute_timestamp)
|
||||
.child(
|
||||
h_flex()
|
||||
.gap_1p5()
|
||||
.gap_1()
|
||||
.when_some(pull_request, |this, pr| {
|
||||
this.child(
|
||||
Button::new(
|
||||
@@ -347,9 +347,9 @@ impl Render for CommitTooltip {
|
||||
.color(Color::Muted)
|
||||
.start_icon(
|
||||
Icon::new(IconName::PullRequest)
|
||||
.size(IconSize::Small)
|
||||
.color(Color::Muted),
|
||||
)
|
||||
.style(ButtonStyle::Subtle)
|
||||
.on_click(move |_, _, cx| {
|
||||
cx.stop_propagation();
|
||||
cx.open_url(pr.url.as_str())
|
||||
@@ -362,10 +362,11 @@ impl Render for CommitTooltip {
|
||||
"commit-sha-button",
|
||||
short_commit_id.clone(),
|
||||
)
|
||||
.style(ButtonStyle::Subtle)
|
||||
.color(Color::Muted)
|
||||
.start_icon(
|
||||
Icon::new(IconName::FileGit).color(Color::Muted),
|
||||
Icon::new(IconName::FileGit)
|
||||
.size(IconSize::Small)
|
||||
.color(Color::Muted),
|
||||
)
|
||||
.on_click(
|
||||
move |_, window, cx| {
|
||||
|
||||
Reference in new issue
Block a user