diff options
author | Jesse Duffield <jessedduffield@gmail.com> | 2022-03-27 17:15:17 +1100 |
---|---|---|
committer | Jesse Duffield <jessedduffield@gmail.com> | 2022-03-27 18:16:16 +1100 |
commit | 9c226eed37f6a1f8ad12f5e7935efe9383eab450 (patch) | |
tree | 4c4a232cdb677bee0a354707d5665c3799c38a66 /pkg/gui/options_menu_panel.go | |
parent | e43ce236425fa354500e2e1600cf9b21ef841f05 (diff) |
allow menu to store keybindings for quick menu navigation
Diffstat (limited to 'pkg/gui/options_menu_panel.go')
-rw-r--r-- | pkg/gui/options_menu_panel.go | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/pkg/gui/options_menu_panel.go b/pkg/gui/options_menu_panel.go index 20df7e091..76452296b 100644 --- a/pkg/gui/options_menu_panel.go +++ b/pkg/gui/options_menu_panel.go @@ -5,6 +5,7 @@ import ( "strings" "github.com/jesseduffield/generics/slices" + "github.com/jesseduffield/lazygit/pkg/gui/keybindings" "github.com/jesseduffield/lazygit/pkg/gui/presentation" "github.com/jesseduffield/lazygit/pkg/gui/style" "github.com/jesseduffield/lazygit/pkg/gui/types" @@ -22,7 +23,7 @@ func (gui *Gui) getBindings(context types.Context) []*types.Binding { bindings = append(customBindings, bindings...) for _, binding := range bindings { - if GetKeyDisplay(binding.Key) != "" && binding.Description != "" { + if keybindings.GetKeyDisplay(binding.Key) != "" && binding.Description != "" { if len(binding.Contexts) == 0 && binding.ViewName == "" { bindingsGlobal = append(bindingsGlobal, binding) } else if binding.Tag == "navigation" { @@ -65,17 +66,15 @@ func (gui *Gui) handleCreateOptionsMenu() error { menuItems := slices.Map(bindings, func(binding *types.Binding) *types.MenuItem { return &types.MenuItem{ - DisplayStrings: []string{GetKeyDisplay(binding.Key), gui.displayDescription(binding)}, + DisplayString: gui.displayDescription(binding), OnPress: func() error { if binding.Key == nil { return nil } - if err := gui.c.PopContext(); err != nil { - return err - } return binding.Handler() }, + Key: binding.Key, } }) |