diff options
author | Jesse Duffield <jessedduffield@gmail.com> | 2021-03-31 22:08:55 +1100 |
---|---|---|
committer | Jesse Duffield <jessedduffield@gmail.com> | 2021-04-02 11:00:15 +1100 |
commit | 332a3c4cbfd263c34d5f53dd971701d2ca69ab4e (patch) | |
tree | 9c2801ce55b7e2bab75fbbaa5dcf82e7d02266ce /pkg/gui/list_context.go | |
parent | ac41c418092b4561042b52d59b362107a0c2ecd6 (diff) |
file tree for commit files
Diffstat (limited to 'pkg/gui/list_context.go')
-rw-r--r-- | pkg/gui/list_context.go | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/pkg/gui/list_context.go b/pkg/gui/list_context.go index 319d7ee40..441d79ade 100644 --- a/pkg/gui/list_context.go +++ b/pkg/gui/list_context.go @@ -1,8 +1,10 @@ package gui import ( + "github.com/fatih/color" "github.com/jesseduffield/gocui" "github.com/jesseduffield/lazygit/pkg/gui/presentation" + "github.com/jesseduffield/lazygit/pkg/utils" ) type ListContext struct { @@ -452,17 +454,27 @@ func (gui *Gui) commitFilesListContext() *ListContext { ViewName: "commitFiles", WindowName: "commits", ContextKey: COMMIT_FILES_CONTEXT_KEY, - GetItemsLength: func() int { return len(gui.State.CommitFiles) }, + GetItemsLength: func() int { return gui.State.CommitFileChangeManager.GetItemsLength() }, GetPanelState: func() IListPanelState { return gui.State.Panels.CommitFiles }, OnFocus: gui.handleCommitFileSelect, Gui: gui, ResetMainViewOriginOnFocus: true, Kind: SIDE_CONTEXT, GetDisplayStrings: func() [][]string { - return presentation.GetCommitFileListDisplayStrings(gui.State.CommitFiles, gui.State.Modes.Diffing.Ref) + if gui.State.CommitFileChangeManager.GetItemsLength() == 0 { + return [][]string{{utils.ColoredString("(none)", color.FgRed)}} + } + + lines := gui.State.CommitFileChangeManager.Render(gui.State.Modes.Diffing.Ref) + mappedLines := make([][]string, len(lines)) + for i, line := range lines { + mappedLines[i] = []string{line} + } + + return mappedLines }, SelectedItem: func() (ListItem, bool) { - item := gui.getSelectedCommitFile() + item := gui.getSelectedCommitFileNode() return item, item != nil }, } |