mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-11-29 22:48:24 +02:00
Add Enabled func to Binding
This commit is contained in:
@@ -375,7 +375,10 @@ func (gui *Gui) wrappedHandler(f func() error) func(g *gocui.Gui, v *gocui.View)
|
||||
}
|
||||
|
||||
func (gui *Gui) SetKeybinding(binding *types.Binding) error {
|
||||
handler := binding.Handler
|
||||
handler := func() error {
|
||||
return gui.callKeybindingHandler(binding)
|
||||
}
|
||||
|
||||
// TODO: move all mouse-ey stuff into new mouse approach
|
||||
if gocui.IsMouseKey(binding.Key) {
|
||||
handler = func() error {
|
||||
@@ -406,3 +409,14 @@ func (gui *Gui) SetMouseKeybinding(binding *gocui.ViewMouseBinding) error {
|
||||
|
||||
return gui.g.SetViewClickBinding(binding)
|
||||
}
|
||||
|
||||
func (gui *Gui) callKeybindingHandler(binding *types.Binding) error {
|
||||
disabledReason := ""
|
||||
if binding.GetDisabledReason != nil {
|
||||
disabledReason = binding.GetDisabledReason()
|
||||
}
|
||||
if disabledReason != "" {
|
||||
return gui.c.ErrorMsg(disabledReason)
|
||||
}
|
||||
return binding.Handler()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user