@@ -54,6 +54,7 @@ type Config struct {
5454 StartAllTasksView bool
5555 CompactTables bool
5656 StartFiltering bool
57+ FilterWithContext bool
5758}
5859
5960type Model struct {
@@ -170,17 +171,20 @@ func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
170171 case nomad.PageLoadedMsg :
171172 if msg .Page == m .currentPage {
172173 m .getCurrentPageModel ().SetHeader (msg .TableHeader )
173- m .getCurrentPageModel ().SetAllPageData (msg .AllPageRows )
174+ m .getCurrentPageModel ().SetAllPageRows (msg .AllPageRows )
174175 if m .currentPageLoading () {
175176 m .getCurrentPageModel ().SetViewportXOffset (0 )
176177 }
178+ if m .getCurrentPageModel ().FilterWithContext {
179+ m .getCurrentPageModel ().ResetContextFilter ()
180+ }
177181 m .getCurrentPageModel ().SetLoading (false )
178182
179183 if m .currentPage .CanBeFirstPage () && len (msg .AllPageRows ) == 0 {
180184 // oddly, nomad http api errors when one provides the wrong token,
181185 // but returns empty results when one provides an empty token
182186 m .getCurrentPageModel ().SetHeader ([]string {"Error" })
183- m .getCurrentPageModel ().SetAllPageData ([]page.Row {
187+ m .getCurrentPageModel ().SetAllPageRows ([]page.Row {
184188 {"" , "No results. Is the cluster empty or was no nomad token provided?" },
185189 {"" , "Press q or ctrl+c to quit." },
186190 })
@@ -327,7 +331,7 @@ func (m *Model) initialize() error {
327331 m .pageModels = make (map [nomad.Page ]* page.Model )
328332 for k , pageConfig := range nomad .GetAllPageConfigs (m .width , m .getPageHeight (), m .config .CompactTables ) {
329333 startFiltering := m .config .StartFiltering && k == firstPage
330- p := page .New (pageConfig , m .config .CopySavePath , startFiltering )
334+ p := page .New (pageConfig , m .config .CopySavePath , startFiltering , m . config . FilterWithContext )
331335 m .pageModels [k ] = & p
332336 }
333337
0 commit comments