From d4a2e9dd535aec3e9af969f450b8e1f90078f9b0 Mon Sep 17 00:00:00 2001 From: Tyler Koenig Date: Thu, 4 Jun 2026 16:03:57 -0400 Subject: [PATCH] fix(tui): normalize content whitespace for consistent footer position Each tab returned different leading newlines (Sites/tables: 1, Logs: 3, empty states: varies). TrimSpace content before layout so JoinVertical controls all spacing. Remove leading \n from footer since JoinVertical handles gaps. --- internal/tui/view_dashboard.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/internal/tui/view_dashboard.go b/internal/tui/view_dashboard.go index 2feaed8..04a7f3a 100644 --- a/internal/tui/view_dashboard.go +++ b/internal/tui/view_dashboard.go @@ -171,6 +171,7 @@ func (m Model) viewDashboard() string { } } + content = strings.TrimSpace(content) footer := m.renderFooter(stats) outerPad := lipgloss.NewStyle().Padding(1, 2) @@ -285,9 +286,9 @@ func (m Model) renderFooter(stats dashboardStats) string { } ver := subtleStyle.Render("v" + m.version) - footer := "\n" + statusLine + " " + subtleStyle.Render(keys) + " " + ver + footer := statusLine + " " + subtleStyle.Render(keys) + " " + ver if m.filterText != "" && m.currentTab == 0 { - footer = "\n" + subtleStyle.Render(fmt.Sprintf("filter: %s", m.filterText)) + " " + statusLine + " " + subtleStyle.Render(keys) + " " + ver + footer = subtleStyle.Render(fmt.Sprintf("filter: %s", m.filterText)) + " " + statusLine + " " + subtleStyle.Render(keys) + " " + ver } return footer }