mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-05-11 12:25:47 +02:00
introduce Ref interface
This commit is contained in:
parent
30be50b641
commit
4835fc00b8
23 changed files with 85 additions and 179 deletions
|
@ -11,8 +11,7 @@ var _ types.IController = &SwitchToDiffFilesController{}
|
|||
type CanSwitchToDiffFiles interface {
|
||||
types.Context
|
||||
CanRebase() bool
|
||||
GetSelectedRefName() string
|
||||
GetSelectedDescription() string
|
||||
GetSelectedRef() types.Ref
|
||||
}
|
||||
|
||||
type SwitchToDiffFilesController struct {
|
||||
|
@ -51,23 +50,22 @@ func (self *SwitchToDiffFilesController) GetOnClick() func() error {
|
|||
return self.checkSelected(self.enter)
|
||||
}
|
||||
|
||||
func (self *SwitchToDiffFilesController) checkSelected(callback func(string) error) func() error {
|
||||
func (self *SwitchToDiffFilesController) checkSelected(callback func(types.Ref) error) func() error {
|
||||
return func() error {
|
||||
refName := self.context.GetSelectedRefName()
|
||||
if refName == "" {
|
||||
ref := self.context.GetSelectedRef()
|
||||
if ref == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
return callback(refName)
|
||||
return callback(ref)
|
||||
}
|
||||
}
|
||||
|
||||
func (self *SwitchToDiffFilesController) enter(refName string) error {
|
||||
func (self *SwitchToDiffFilesController) enter(ref types.Ref) error {
|
||||
return self.viewFiles(SwitchToCommitFilesContextOpts{
|
||||
RefName: refName,
|
||||
RefDescription: self.context.GetSelectedDescription(),
|
||||
CanRebase: self.context.CanRebase(),
|
||||
Context: self.context,
|
||||
Ref: ref,
|
||||
CanRebase: self.context.CanRebase(),
|
||||
Context: self.context,
|
||||
})
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue