diff options
author | Jesse Duffield <jessedduffield@gmail.com> | 2020-03-17 21:22:07 +1100 |
---|---|---|
committer | Jesse Duffield <jessedduffield@gmail.com> | 2020-03-18 21:29:06 +1100 |
commit | 1be0ff8da738c706e1aff8111428b36a5efced44 (patch) | |
tree | 3f4b90cea75e3803fa0799f76c8e57e34c8cbbeb /pkg/gui/presentation | |
parent | 2169b5109f508a28848ced699f698ca3e4ed2c49 (diff) |
better upstream tracking and allow renaming a branch
Diffstat (limited to 'pkg/gui/presentation')
-rw-r--r-- | pkg/gui/presentation/branches.go | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/pkg/gui/presentation/branches.go b/pkg/gui/presentation/branches.go index 3b918116b..4283ee1dd 100644 --- a/pkg/gui/presentation/branches.go +++ b/pkg/gui/presentation/branches.go @@ -10,25 +10,38 @@ import ( "github.com/jesseduffield/lazygit/pkg/utils" ) -func GetBranchListDisplayStrings(branches []*commands.Branch, isFocused bool, selectedLine int) [][]string { +func GetBranchListDisplayStrings(branches []*commands.Branch, fullDescription bool) [][]string { lines := make([][]string, len(branches)) for i := range branches { - showUpstreamDifferences := isFocused && i == selectedLine - lines[i] = getBranchDisplayStrings(branches[i], showUpstreamDifferences) + lines[i] = getBranchDisplayStrings(branches[i], fullDescription) } return lines } // getBranchDisplayStrings returns the display string of branch -func getBranchDisplayStrings(b *commands.Branch, showUpstreamDifferences bool) []string { +func getBranchDisplayStrings(b *commands.Branch, fullDescription bool) []string { displayName := utils.ColoredString(b.Name, GetBranchColor(b.Name)) - if showUpstreamDifferences && b.Pushables != "" && b.Pullables != "" { - displayName = fmt.Sprintf("%s ā%sā%s", displayName, b.Pushables, b.Pullables) + if b.Pushables != "" && b.Pullables != "" && b.Pushables != "?" && b.Pullables != "?" { + trackColor := color.FgYellow + if b.Pushables == "0" && b.Pullables == "0" { + trackColor = color.FgGreen + } + track := utils.ColoredString(fmt.Sprintf("ā%sā%s", b.Pushables, b.Pullables), trackColor) + displayName = fmt.Sprintf("%s %s", displayName, track) } - return []string{b.Recency, displayName} + recencyColor := color.FgCyan + if b.Recency == " *" { + recencyColor = color.FgGreen + } + + if fullDescription { + return []string{utils.ColoredString(b.Recency, recencyColor), displayName, utils.ColoredString(b.UpstreamName, color.FgYellow)} + } + + return []string{utils.ColoredString(b.Recency, recencyColor), displayName} } // GetBranchColor branch color |