diff options
author | Jesse Duffield <jessedduffield@gmail.com> | 2022-03-19 19:12:58 +1100 |
---|---|---|
committer | Jesse Duffield <jessedduffield@gmail.com> | 2022-03-24 20:14:41 +1100 |
commit | 1b75ed37403ac2997cb6a5ede92d87f1a1eb96b1 (patch) | |
tree | 6a1b70201901725cd689c90f32a75fe34e77a603 /pkg/gui/context | |
parent | bf4f06ab4e6ceefe388e0efefcc553526f3d96c2 (diff) |
many more generics
Diffstat (limited to 'pkg/gui/context')
-rw-r--r-- | pkg/gui/context/menu_context.go | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/pkg/gui/context/menu_context.go b/pkg/gui/context/menu_context.go index 67d6b126a..1f5654902 100644 --- a/pkg/gui/context/menu_context.go +++ b/pkg/gui/context/menu_context.go @@ -1,6 +1,7 @@ package context import ( + "github.com/jesseduffield/generics/slices" "github.com/jesseduffield/gocui" "github.com/jesseduffield/lazygit/pkg/gui/presentation" "github.com/jesseduffield/lazygit/pkg/gui/types" @@ -77,19 +78,16 @@ func (self *MenuViewModel) SetMenuItems(items []*types.MenuItem) { } // TODO: move into presentation package -func (self *MenuViewModel) GetDisplayStrings(startIdx int, length int) [][]string { - stringArrays := make([][]string, len(self.menuItems)) - for i, item := range self.menuItems { - if item.DisplayStrings == nil { - styledStr := item.DisplayString - if item.OpensMenu { - styledStr = presentation.OpensMenuStyle(styledStr) - } - stringArrays[i] = []string{styledStr} - } else { - stringArrays[i] = item.DisplayStrings +func (self *MenuViewModel) GetDisplayStrings(_startIdx int, _length int) [][]string { + return slices.Map(self.menuItems, func(item *types.MenuItem) []string { + if item.DisplayStrings != nil { + return item.DisplayStrings } - } - return stringArrays + styledStr := item.DisplayString + if item.OpensMenu { + styledStr = presentation.OpensMenuStyle(styledStr) + } + return []string{styledStr} + }) } |