feat(tui): improve scrollbar visibility and extend to all panels
Use block characters (█/░) with accent coloring for scrollbar thumb/track instead of box-drawing chars that blend with panel borders. Auto-derive scrollbar from content overflow in titledPanelH. Add scrollbar to logs and maintenance bottom panels.
This commit is contained in:
@@ -70,6 +70,9 @@ func (m Model) titledPanelH(title, content, footer string, width, height, scroll
|
||||
}
|
||||
visible := contentLines[scrollOffset:end]
|
||||
|
||||
if sb.total == 0 && len(contentLines) > bodyH {
|
||||
sb = scrollbar{pos: scrollOffset, total: len(contentLines), visible: bodyH}
|
||||
}
|
||||
sbVisible := sb.visible
|
||||
if sbVisible <= 0 {
|
||||
sbVisible = bodyH
|
||||
@@ -96,8 +99,8 @@ func (m Model) titledPanelH(title, content, footer string, width, height, scroll
|
||||
}
|
||||
}
|
||||
|
||||
scrollTrack := bc.Render("│")
|
||||
scrollThumb := lipgloss.NewStyle().Foreground(m.theme.Muted).Render("┃")
|
||||
scrollTrack := lipgloss.NewStyle().Foreground(m.theme.Border).Render("░")
|
||||
scrollThumb := lipgloss.NewStyle().Foreground(m.theme.Accent).Render("█")
|
||||
|
||||
borderLine := func(line string, idx int) string {
|
||||
rightBorder := bc.Render("│")
|
||||
|
||||
Reference in New Issue
Block a user