summaryrefslogtreecommitdiffstats
path: root/pkg/gui/controllers/helpers/bisect_helper.go
blob: aa8bb50230a4425504e06245dd213f81f2530ad5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package helpers

import (
	"github.com/jesseduffield/lazygit/pkg/gui/types"
)

type BisectHelper struct {
	c *HelperCommon
}

func NewBisectHelper(c *HelperCommon) *BisectHelper {
	return &BisectHelper{c: c}
}

func (self *BisectHelper) Reset() error {
	return self.c.Confirm(types.ConfirmOpts{
		Title:  self.c.Tr.Bisect.ResetTitle,
		Prompt: self.c.Tr.Bisect.ResetPrompt,
		HandleConfirm: func() error {
			self.c.LogAction(self.c.Tr.Actions.ResetBisect)
			if err := self.c.Git().Bisect.Reset(); err != nil {
				return err
			}

			return self.PostBisectCommandRefresh()
		},
	})
}

func (self *BisectHelper) PostBisectCommandRefresh() error {
	return self.c.Refresh(types.RefreshOptions{Mode: types.ASYNC, Scope: []types.RefreshableView{}})
}