diff options
Diffstat (limited to 'pkg/gui/controllers/helpers/patch_building_helper.go')
-rw-r--r-- | pkg/gui/controllers/helpers/patch_building_helper.go | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/pkg/gui/controllers/helpers/patch_building_helper.go b/pkg/gui/controllers/helpers/patch_building_helper.go new file mode 100644 index 000000000..efb8ec671 --- /dev/null +++ b/pkg/gui/controllers/helpers/patch_building_helper.go @@ -0,0 +1,33 @@ +package helpers + +import ( + "github.com/jesseduffield/lazygit/pkg/commands" + "github.com/jesseduffield/lazygit/pkg/commands/types/enums" + "github.com/jesseduffield/lazygit/pkg/gui/types" +) + +type IPatchBuildingHelper interface { + ValidateNormalWorkingTreeState() (bool, error) +} + +type PatchBuildingHelper struct { + c *types.HelperCommon + git *commands.GitCommand +} + +func NewPatchBuildingHelper( + c *types.HelperCommon, + git *commands.GitCommand, +) *PatchBuildingHelper { + return &PatchBuildingHelper{ + c: c, + git: git, + } +} + +func (self *PatchBuildingHelper) ValidateNormalWorkingTreeState() (bool, error) { + if self.git.Status.WorkingTreeState() != enums.REBASE_MODE_NONE { + return false, self.c.ErrorMsg(self.c.Tr.CantPatchWhileRebasingError) + } + return true, nil +} |