From a83156ac084fdaf97e6cefc76ea3ddfd3f6a993a Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Fri, 13 Mar 2026 07:23:24 +0200 Subject: feat: add tui parquet recording controls --- internal/tui/dashboard/model.go | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'internal/tui/dashboard') diff --git a/internal/tui/dashboard/model.go b/internal/tui/dashboard/model.go index 72290e6..850a483 100644 --- a/internal/tui/dashboard/model.go +++ b/internal/tui/dashboard/model.go @@ -68,6 +68,7 @@ type Model struct { keys common.KeyMap globalFilter globalfilter.Filter filterStack []string + recordingStatus string pidFilter int syscallsOffset int syscallsCol int @@ -936,6 +937,11 @@ func (m *Model) SetFilterStack(stack []string) { m.streamModel.SetFilterStack(stack) } +// SetRecordingStatus updates the visible recording state summary rendered in the dashboard chrome. +func (m *Model) SetRecordingStatus(status string) { + m.recordingStatus = status +} + // SetLiveTrie updates the live trie source used by the flamegraph tab. func (m *Model) SetLiveTrie(liveTrie flamegraphtui.LiveTrieSource) { m.liveTrie = liveTrie @@ -1012,9 +1018,16 @@ func (m Model) View() tea.View { func (m Model) filterSummary() string { summary := "filter: " + m.globalFilter.Summary() if len(m.filterStack) == 0 { + if m.recordingStatus == "" { + return summary + } + return summary + " | " + m.recordingStatus + } + summary += " | stack: " + strings.Join(m.filterStack, " | ") + if m.recordingStatus == "" { return summary } - return summary + " | stack: " + strings.Join(m.filterStack, " | ") + return summary + " | " + m.recordingStatus } func (m Model) renderActiveContent(width, activeHeight int, streamModel *eventstream.Model, flameModel *flamegraphtui.Model) string { -- cgit v1.2.3