MCPcopy Create free account
hub / github.com/MiniCodeMonkey/chief / renderDiffView

Method renderDiffView

internal/tui/dashboard.go:777–803  ·  view source on GitHub ↗

renderDiffView renders the full-screen diff view.

()

Source from the content-addressed store, hash-verified

775
776// renderDiffView renders the full-screen diff view.
777func (a *App) renderDiffView() string {
778 if a.width == 0 || a.height == 0 {
779 return "Loading..."
780 }
781
782 var header, footer string
783 if a.isNarrowMode() {
784 header = a.renderNarrowDiffHeader()
785 footer = a.renderNarrowFooter()
786 } else {
787 header = a.renderDiffHeader()
788 footer = a.renderFooter()
789 }
790
791 // Calculate content area height (same approach as log view)
792 contentHeight := a.height - headerHeight - footerHeight - 2
793
794 // Render diff content
795 a.diffViewer.SetSize(a.width-4, contentHeight)
796 diffContent := a.diffViewer.Render()
797
798 // Wrap in a panel
799 diffPanel := panelStyle.Width(a.width - 2).Height(contentHeight).Render(diffContent)
800
801 // Stack header, content, and footer
802 return lipgloss.JoinVertical(lipgloss.Left, header, diffPanel, footer)
803}
804
805// renderDiffHeader renders the header for the diff view.
806func (a *App) renderDiffHeader() string {

Callers 1

ViewMethod · 0.95

Calls 7

isNarrowModeMethod · 0.95
renderNarrowFooterMethod · 0.95
renderDiffHeaderMethod · 0.95
renderFooterMethod · 0.95
SetSizeMethod · 0.45
RenderMethod · 0.45

Tested by

no test coverage detected