on main help sign in
fix(ui): apply the message style to each line of the message items

Related: 46ebd20b63d8

commit12a6372bee85e72b717aa407747395258ad40ee7 authorAyman Bagabas <ayman.bagabas@gmail.com> dateSat 21 Feb 2026, 16:03 (8 months ago) parent3f07c90
3 files changed+26−12
internal/ui/chat/messages.go+6−1 internal/ui/chat/tools.go+11−8 internal/ui/chat/user.go+9−3
internal/ui/chat/messages.go+6−1
@@ -221,7 +221,12 @@ func (a *AssistantInfoItem) RawRender(width int) string {
221221
222222// Render implements MessageItem.
223223func (a *AssistantInfoItem) Render(width int) string {
224− return a.sty.Chat.Message.SectionHeader.Render(a.RawRender(width))
224+ prefix := a.sty.Chat.Message.SectionHeader.Render()
225+ lines := strings.Split(a.RawRender(width), "\n")
226+ for i, line := range lines {
227+ lines[i] = prefix + line
228+ }
229+ return strings.Join(lines, "\n")
225230}
226231
227232func (a *AssistantInfoItem) renderContent(width int) string {
internal/ui/chat/tools.go+11−8
@@ -321,16 +321,19 @@ func (t *baseToolMessageItem) RawRender(width int) string {
321321
322322// Render renders the tool message item at the given width.
323323func (t *baseToolMessageItem) Render(width int) string {
324− style := t.sty.Chat.Message.ToolCallBlurred
325− if t.focused {
326− style = t.sty.Chat.Message.ToolCallFocused
327− }
328−
324+ var prefix string
329325 if t.isCompact {
330− style = t.sty.Chat.Message.ToolCallCompact
326+ prefix = t.sty.Chat.Message.ToolCallCompact.Render()
327+ } else if t.focused {
328+ prefix = t.sty.Chat.Message.ToolCallFocused.Render()
329+ } else {
330+ prefix = t.sty.Chat.Message.ToolCallBlurred.Render()
331331 }
332−
333− return style.Render(t.RawRender(width))
332+ lines := strings.Split(t.RawRender(width), "\n")
333+ for i, ln := range lines {
334+ lines[i] = prefix + ln
335+ }
336+ return strings.Join(lines, "\n")
334337}
335338
336339// ToolCall returns the tool call associated with this message item.
internal/ui/chat/user.go+9−3
@@ -70,11 +70,17 @@ func (m *UserMessageItem) RawRender(width int) string {
7070
7171// Render implements MessageItem.
7272func (m *UserMessageItem) Render(width int) string {
73− style := m.sty.Chat.Message.UserBlurred
73+ var prefix string
7474 if m.focused {
75− style = m.sty.Chat.Message.UserFocused
75+ prefix = m.sty.Chat.Message.UserFocused.Render()
76+ } else {
77+ prefix = m.sty.Chat.Message.UserBlurred.Render()
78+ }
79+ lines := strings.Split(m.RawRender(width), "\n")
80+ for i, line := range lines {
81+ lines[i] = prefix + line
7682 }
77− return style.Render(m.RawRender(width))
83+ return strings.Join(lines, "\n")
7884}
7985
8086// ID implements MessageItem.