{"record":{"id":"f0b22418d3fa597a","repo":"wagoodman/dive","slug":"unable-to-toggle-filter-view-back-w","errorCode":null,"errorMessage":"unable to toggle filter view (back): %w","messagePattern":"unable to toggle filter view \\(back\\): %w","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cmd/dive/cli/internal/ui/v1/app/controller.go","lineNumber":243,"sourceCode":"\treturn nil\n}\n\nfunc (c *controller) ToggleFilterView() error {\n\t// delete all user input from the tree view\n\terr := c.views.Filter.ToggleVisible()\n\tif err != nil {\n\t\treturn fmt.Errorf(\"unable to toggle filter visibility: %w\", err)\n\t}\n\n\t// we have just hidden the filter view...\n\tif !c.views.Filter.IsVisible() {\n\t\t// ...remove any filter from the tree\n\t\tc.views.Tree.SetFilterRegex(nil)\n\n\t\t// ...adjust focus to a valid (visible) view\n\t\terr = c.ToggleView()\n\t\tif err != nil {\n\t\t\treturn fmt.Errorf(\"unable to toggle filter view (back): %w\", err)\n\t\t}\n\t}\n\n\treturn c.UpdateAndRender()\n}\n","sourceCodeStart":225,"sourceCodeEnd":249,"githubUrl":"https://github.com/wagoodman/dive/blob/d6c691947f8fda635c952a17ee3b7555379d58f0/cmd/dive/cli/internal/ui/v1/app/controller.go#L225-L249","documentation":"TUI controller error chained inside ToggleFilterView(): after successfully hiding the filter view, the code clears the tree's filter regex and calls ToggleView() to move focus back to a visible pane; this wraps that ToggleView() failure (i.e. error 30's path re-entered from filter teardown).","triggerScenarios":"Closing the filter view (filter hidden) and the subsequent re-focus to Layer/Tree failing because SetCurrentView errored — startup races or views missing after layout changes, same root causes as error 30 but triggered specifically on filter dismissal.","commonSituations":"Pressing Escape/enter to dismiss the filter during heavy rendering; dismissing the filter immediately at startup; degenerate terminal geometry.","solutions":["Retry the interaction once the UI is idle; transient focus races often self-correct.","Use a larger terminal window so all panes including the filter line fit.","Upgrade dive for view-lifecycle fixes.","Capture the full wrapped chain (controller -> toggle filter -> toggle view -> gocui) and report upstream."],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":["Dismiss the filter when the UI is idle, not during heavy rendering.","Retry navigation after a transient toggle failure.","Report chained controller->toggle-view errors upstream with terminal details."],"tags":["dive","tui","gocui","filter","navigation","internal"],"backgroundTag":null,"analyzedSha":"d6c691947f8fda635c952a17ee3b7555379d58f0","analyzedAt":"2026-08-15T09:42:35.293Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}