mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-07-07 01:09:45 +02:00
Use ConfirmIf where applicable
This commit is contained in:
@ -724,17 +724,11 @@ func (self *BranchesController) rename(branch *models.Branch) error {
|
|||||||
// I could do an explicit check here for whether the branch is tracking a remote branch
|
// I could do an explicit check here for whether the branch is tracking a remote branch
|
||||||
// but if we've selected it we'll already know that via Pullables and Pullables.
|
// but if we've selected it we'll already know that via Pullables and Pullables.
|
||||||
// Bit of a hack but I'm lazy.
|
// Bit of a hack but I'm lazy.
|
||||||
if !branch.IsTrackingRemote() {
|
return self.c.ConfirmIf(branch.IsTrackingRemote(), types.ConfirmOpts{
|
||||||
return promptForNewName()
|
|
||||||
}
|
|
||||||
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.RenameBranch,
|
Title: self.c.Tr.RenameBranch,
|
||||||
Prompt: self.c.Tr.RenameBranchWarning,
|
Prompt: self.c.Tr.RenameBranchWarning,
|
||||||
HandleConfirm: promptForNewName,
|
HandleConfirm: promptForNewName,
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *BranchesController) newBranch(selectedBranch *models.Branch) error {
|
func (self *BranchesController) newBranch(selectedBranch *models.Branch) error {
|
||||||
|
@ -426,20 +426,18 @@ func (self *CommitFilesController) toggleForPatch(selectedNodes []*filetree.Comm
|
|||||||
}
|
}
|
||||||
|
|
||||||
from, to, reverse := self.currentFromToReverseForPatchBuilding()
|
from, to, reverse := self.currentFromToReverseForPatchBuilding()
|
||||||
if self.c.Git().Patch.PatchBuilder.Active() && self.c.Git().Patch.PatchBuilder.NewPatchRequired(from, to, reverse) {
|
mustDiscardPatch := self.c.Git().Patch.PatchBuilder.Active() && self.c.Git().Patch.PatchBuilder.NewPatchRequired(from, to, reverse)
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
return self.c.ConfirmIf(mustDiscardPatch, types.ConfirmOpts{
|
||||||
Title: self.c.Tr.DiscardPatch,
|
Title: self.c.Tr.DiscardPatch,
|
||||||
Prompt: self.c.Tr.DiscardPatchConfirm,
|
Prompt: self.c.Tr.DiscardPatchConfirm,
|
||||||
HandleConfirm: func() error {
|
HandleConfirm: func() error {
|
||||||
|
if mustDiscardPatch {
|
||||||
self.c.Git().Patch.PatchBuilder.Reset()
|
self.c.Git().Patch.PatchBuilder.Reset()
|
||||||
return toggle()
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return toggle()
|
return toggle()
|
||||||
|
},
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *CommitFilesController) toggleAllForPatch(_ *filetree.CommitFileNode) error {
|
func (self *CommitFilesController) toggleAllForPatch(_ *filetree.CommitFileNode) error {
|
||||||
@ -479,7 +477,16 @@ func (self *CommitFilesController) enterCommitFile(node *filetree.CommitFileNode
|
|||||||
keybindings.Label(self.c.UserConfig().Keybinding.Universal.IncreaseContextInDiffView))
|
keybindings.Label(self.c.UserConfig().Keybinding.Universal.IncreaseContextInDiffView))
|
||||||
}
|
}
|
||||||
|
|
||||||
enterTheFile := func() error {
|
from, to, reverse := self.currentFromToReverseForPatchBuilding()
|
||||||
|
mustDiscardPatch := self.c.Git().Patch.PatchBuilder.Active() && self.c.Git().Patch.PatchBuilder.NewPatchRequired(from, to, reverse)
|
||||||
|
return self.c.ConfirmIf(mustDiscardPatch, types.ConfirmOpts{
|
||||||
|
Title: self.c.Tr.DiscardPatch,
|
||||||
|
Prompt: self.c.Tr.DiscardPatchConfirm,
|
||||||
|
HandleConfirm: func() error {
|
||||||
|
if mustDiscardPatch {
|
||||||
|
self.c.Git().Patch.PatchBuilder.Reset()
|
||||||
|
}
|
||||||
|
|
||||||
if !self.c.Git().Patch.PatchBuilder.Active() {
|
if !self.c.Git().Patch.PatchBuilder.Active() {
|
||||||
if err := self.startPatchBuilder(); err != nil {
|
if err := self.startPatchBuilder(); err != nil {
|
||||||
return err
|
return err
|
||||||
@ -488,23 +495,8 @@ func (self *CommitFilesController) enterCommitFile(node *filetree.CommitFileNode
|
|||||||
|
|
||||||
self.c.Context().Push(self.c.Contexts().CustomPatchBuilder, opts)
|
self.c.Context().Push(self.c.Contexts().CustomPatchBuilder, opts)
|
||||||
return nil
|
return nil
|
||||||
}
|
|
||||||
|
|
||||||
from, to, reverse := self.currentFromToReverseForPatchBuilding()
|
|
||||||
if self.c.Git().Patch.PatchBuilder.Active() && self.c.Git().Patch.PatchBuilder.NewPatchRequired(from, to, reverse) {
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.DiscardPatch,
|
|
||||||
Prompt: self.c.Tr.DiscardPatchConfirm,
|
|
||||||
HandleConfirm: func() error {
|
|
||||||
self.c.Git().Patch.PatchBuilder.Reset()
|
|
||||||
return enterTheFile()
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return enterTheFile()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *CommitFilesController) handleToggleCommitFileDirCollapsed(node *filetree.CommitFileNode) error {
|
func (self *CommitFilesController) handleToggleCommitFileDirCollapsed(node *filetree.CommitFileNode) error {
|
||||||
|
@ -173,28 +173,19 @@ func (self *CustomPatchOptionsMenuAction) handleMovePatchIntoWorkingTree() error
|
|||||||
|
|
||||||
self.returnFocusFromPatchExplorerIfNecessary()
|
self.returnFocusFromPatchExplorerIfNecessary()
|
||||||
|
|
||||||
pull := func(stash bool) error {
|
mustStash := self.c.Helpers().WorkingTree.IsWorkingTreeDirty()
|
||||||
return self.c.WithWaitingStatus(self.c.Tr.RebasingStatus, func(gocui.Task) error {
|
return self.c.ConfirmIf(mustStash, types.ConfirmOpts{
|
||||||
commitIndex := self.getPatchCommitIndex()
|
|
||||||
self.c.LogAction(self.c.Tr.Actions.MovePatchIntoIndex)
|
|
||||||
err := self.c.Git().Patch.MovePatchIntoIndex(self.c.Model().Commits, commitIndex, stash)
|
|
||||||
return self.c.Helpers().MergeAndRebase.CheckMergeOrRebase(err)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
if self.c.Helpers().WorkingTree.IsWorkingTreeDirty() {
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.MustStashTitle,
|
Title: self.c.Tr.MustStashTitle,
|
||||||
Prompt: self.c.Tr.MustStashWarning,
|
Prompt: self.c.Tr.MustStashWarning,
|
||||||
HandleConfirm: func() error {
|
HandleConfirm: func() error {
|
||||||
return pull(true)
|
return self.c.WithWaitingStatus(self.c.Tr.RebasingStatus, func(gocui.Task) error {
|
||||||
|
commitIndex := self.getPatchCommitIndex()
|
||||||
|
self.c.LogAction(self.c.Tr.Actions.MovePatchIntoIndex)
|
||||||
|
err := self.c.Git().Patch.MovePatchIntoIndex(self.c.Model().Commits, commitIndex, mustStash)
|
||||||
|
return self.c.Helpers().MergeAndRebase.CheckMergeOrRebase(err)
|
||||||
|
})
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return pull(false)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *CustomPatchOptionsMenuAction) handlePullPatchIntoNewCommit() error {
|
func (self *CustomPatchOptionsMenuAction) handlePullPatchIntoNewCommit() error {
|
||||||
@ -272,14 +263,18 @@ func (self *CustomPatchOptionsMenuAction) handleApplyPatch(reverse bool) error {
|
|||||||
|
|
||||||
affectedUnstagedFiles := self.getAffectedUnstagedFiles()
|
affectedUnstagedFiles := self.getAffectedUnstagedFiles()
|
||||||
|
|
||||||
apply := func() error {
|
mustStageFiles := len(affectedUnstagedFiles) > 0
|
||||||
|
return self.c.ConfirmIf(mustStageFiles, types.ConfirmOpts{
|
||||||
|
Title: self.c.Tr.MustStageFilesAffectedByPatchTitle,
|
||||||
|
Prompt: self.c.Tr.MustStageFilesAffectedByPatchWarning,
|
||||||
|
HandleConfirm: func() error {
|
||||||
action := self.c.Tr.Actions.ApplyPatch
|
action := self.c.Tr.Actions.ApplyPatch
|
||||||
if reverse {
|
if reverse {
|
||||||
action = "Apply patch in reverse"
|
action = "Apply patch in reverse"
|
||||||
}
|
}
|
||||||
self.c.LogAction(action)
|
self.c.LogAction(action)
|
||||||
|
|
||||||
if len(affectedUnstagedFiles) > 0 {
|
if mustStageFiles {
|
||||||
if err := self.c.Git().WorkingTree.StageFiles(affectedUnstagedFiles, nil); err != nil {
|
if err := self.c.Git().WorkingTree.StageFiles(affectedUnstagedFiles, nil); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -291,21 +286,8 @@ func (self *CustomPatchOptionsMenuAction) handleApplyPatch(reverse bool) error {
|
|||||||
|
|
||||||
self.c.Refresh(types.RefreshOptions{Mode: types.ASYNC})
|
self.c.Refresh(types.RefreshOptions{Mode: types.ASYNC})
|
||||||
return nil
|
return nil
|
||||||
}
|
|
||||||
|
|
||||||
if len(affectedUnstagedFiles) > 0 {
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.MustStageFilesAffectedByPatchTitle,
|
|
||||||
Prompt: self.c.Tr.MustStageFilesAffectedByPatchWarning,
|
|
||||||
HandleConfirm: func() error {
|
|
||||||
return apply()
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return apply()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *CustomPatchOptionsMenuAction) copyPatchToClipboard() error {
|
func (self *CustomPatchOptionsMenuAction) copyPatchToClipboard() error {
|
||||||
|
@ -794,19 +794,17 @@ func (self *FilesController) handleAmendCommitPress() error {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
} else if !self.c.UserConfig().Gui.SkipAmendWarning {
|
}
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
|
return self.c.ConfirmIf(!self.c.UserConfig().Gui.SkipAmendWarning,
|
||||||
|
types.ConfirmOpts{
|
||||||
Title: self.c.Tr.AmendLastCommitTitle,
|
Title: self.c.Tr.AmendLastCommitTitle,
|
||||||
Prompt: self.c.Tr.SureToAmend,
|
Prompt: self.c.Tr.SureToAmend,
|
||||||
HandleConfirm: func() error {
|
HandleConfirm: func() error {
|
||||||
return doAmend()
|
return doAmend()
|
||||||
},
|
},
|
||||||
})
|
},
|
||||||
|
)
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return doAmend()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *FilesController) isResolvingConflicts() bool {
|
func (self *FilesController) isResolvingConflicts() bool {
|
||||||
|
@ -256,13 +256,8 @@ func (self *CommitsHelper) pasteCommitMessageFromClipboard() error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
if currentMessage := self.JoinCommitMessageAndUnwrappedDescription(); currentMessage == "" {
|
currentMessage := self.JoinCommitMessageAndUnwrappedDescription()
|
||||||
self.SetMessageAndDescriptionInView(message)
|
return self.c.ConfirmIf(currentMessage != "", types.ConfirmOpts{
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// Confirm before overwriting the commit message
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.PasteCommitMessageFromClipboard,
|
Title: self.c.Tr.PasteCommitMessageFromClipboard,
|
||||||
Prompt: self.c.Tr.SurePasteCommitMessage,
|
Prompt: self.c.Tr.SurePasteCommitMessage,
|
||||||
HandleConfirm: func() error {
|
HandleConfirm: func() error {
|
||||||
@ -270,6 +265,4 @@ func (self *CommitsHelper) pasteCommitMessageFromClipboard() error {
|
|||||||
return nil
|
return nil
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
@ -128,7 +128,10 @@ func (self *FixupHelper) HandleFindBaseCommitForFixupPress() error {
|
|||||||
// and that's the one we want to select.
|
// and that's the one we want to select.
|
||||||
_, index, _ := self.findCommit(commits, hashGroups[NOT_MERGED][0])
|
_, index, _ := self.findCommit(commits, hashGroups[NOT_MERGED][0])
|
||||||
|
|
||||||
doIt := func() error {
|
return self.c.ConfirmIf(warnAboutAddedLines, types.ConfirmOpts{
|
||||||
|
Title: self.c.Tr.FindBaseCommitForFixup,
|
||||||
|
Prompt: self.c.Tr.HunksWithOnlyAddedLinesWarning,
|
||||||
|
HandleConfirm: func() error {
|
||||||
if !hasStagedChanges {
|
if !hasStagedChanges {
|
||||||
if err := self.c.Git().WorkingTree.StageAll(); err != nil {
|
if err := self.c.Git().WorkingTree.StageAll(); err != nil {
|
||||||
return err
|
return err
|
||||||
@ -139,21 +142,8 @@ func (self *FixupHelper) HandleFindBaseCommitForFixupPress() error {
|
|||||||
self.c.Contexts().LocalCommits.SetSelection(index)
|
self.c.Contexts().LocalCommits.SetSelection(index)
|
||||||
self.c.Context().Push(self.c.Contexts().LocalCommits, types.OnFocusOpts{})
|
self.c.Context().Push(self.c.Contexts().LocalCommits, types.OnFocusOpts{})
|
||||||
return nil
|
return nil
|
||||||
}
|
|
||||||
|
|
||||||
if warnAboutAddedLines {
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.FindBaseCommitForFixup,
|
|
||||||
Prompt: self.c.Tr.HunksWithOnlyAddedLinesWarning,
|
|
||||||
HandleConfirm: func() error {
|
|
||||||
return doIt()
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return doIt()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *FixupHelper) getDiff() (string, bool, error) {
|
func (self *FixupHelper) getDiff() (string, bool, error) {
|
||||||
|
@ -23,7 +23,20 @@ func NewTagsHelper(c *HelperCommon, commitsHelper *CommitsHelper, gpg *GpgHelper
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (self *TagsHelper) OpenCreateTagPrompt(ref string, onCreate func()) error {
|
func (self *TagsHelper) OpenCreateTagPrompt(ref string, onCreate func()) error {
|
||||||
doCreateTag := func(tagName string, description string, force bool) error {
|
onConfirm := func(tagName string, description string) error {
|
||||||
|
prompt := utils.ResolvePlaceholderString(
|
||||||
|
self.c.Tr.ForceTagPrompt,
|
||||||
|
map[string]string{
|
||||||
|
"tagName": tagName,
|
||||||
|
"cancelKey": self.c.UserConfig().Keybinding.Universal.Return,
|
||||||
|
"confirmKey": self.c.UserConfig().Keybinding.Universal.Confirm,
|
||||||
|
},
|
||||||
|
)
|
||||||
|
force := self.c.Git().Tag.HasTag(tagName)
|
||||||
|
return self.c.ConfirmIf(force, types.ConfirmOpts{
|
||||||
|
Title: self.c.Tr.ForceTag,
|
||||||
|
Prompt: prompt,
|
||||||
|
HandleConfirm: func() error {
|
||||||
var command *oscommands.CmdObj
|
var command *oscommands.CmdObj
|
||||||
if description != "" || self.c.Git().Config.GetGpgTagSign() {
|
if description != "" || self.c.Git().Config.GetGpgTagSign() {
|
||||||
self.c.LogAction(self.c.Tr.Actions.CreateAnnotatedTag)
|
self.c.LogAction(self.c.Tr.Actions.CreateAnnotatedTag)
|
||||||
@ -36,30 +49,8 @@ func (self *TagsHelper) OpenCreateTagPrompt(ref string, onCreate func()) error {
|
|||||||
return self.gpg.WithGpgHandling(command, git_commands.TagGpgSign, self.c.Tr.CreatingTag, func() error {
|
return self.gpg.WithGpgHandling(command, git_commands.TagGpgSign, self.c.Tr.CreatingTag, func() error {
|
||||||
return nil
|
return nil
|
||||||
}, []types.RefreshableView{types.COMMITS, types.TAGS})
|
}, []types.RefreshableView{types.COMMITS, types.TAGS})
|
||||||
}
|
|
||||||
|
|
||||||
onConfirm := func(tagName string, description string) error {
|
|
||||||
if self.c.Git().Tag.HasTag(tagName) {
|
|
||||||
prompt := utils.ResolvePlaceholderString(
|
|
||||||
self.c.Tr.ForceTagPrompt,
|
|
||||||
map[string]string{
|
|
||||||
"tagName": tagName,
|
|
||||||
"cancelKey": self.c.UserConfig().Keybinding.Universal.Return,
|
|
||||||
"confirmKey": self.c.UserConfig().Keybinding.Universal.Confirm,
|
|
||||||
},
|
|
||||||
)
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.ForceTag,
|
|
||||||
Prompt: prompt,
|
|
||||||
HandleConfirm: func() error {
|
|
||||||
return doCreateTag(tagName, description, true)
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return doCreateTag(tagName, description, false)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
self.commitsHelper.OpenCommitMessagePanel(
|
self.commitsHelper.OpenCommitMessagePanel(
|
||||||
|
@ -435,17 +435,12 @@ func (self *LocalCommitsController) doRewordEditor() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (self *LocalCommitsController) rewordEditor(commit *models.Commit) error {
|
func (self *LocalCommitsController) rewordEditor(commit *models.Commit) error {
|
||||||
if self.c.UserConfig().Gui.SkipRewordInEditorWarning {
|
return self.c.ConfirmIf(!self.c.UserConfig().Gui.SkipRewordInEditorWarning,
|
||||||
return self.doRewordEditor()
|
types.ConfirmOpts{
|
||||||
}
|
|
||||||
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.RewordInEditorTitle,
|
Title: self.c.Tr.RewordInEditorTitle,
|
||||||
Prompt: self.c.Tr.RewordInEditorPrompt,
|
Prompt: self.c.Tr.RewordInEditorPrompt,
|
||||||
HandleConfirm: self.doRewordEditor,
|
HandleConfirm: self.doRewordEditor,
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *LocalCommitsController) drop(selectedCommits []*models.Commit, startIdx int, endIdx int) error {
|
func (self *LocalCommitsController) drop(selectedCommits []*models.Commit, startIdx int, endIdx int) error {
|
||||||
@ -749,17 +744,12 @@ func (self *LocalCommitsController) amendTo(commit *models.Commit) error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if self.c.UserConfig().Gui.SkipAmendWarning {
|
return self.c.ConfirmIf(!self.c.UserConfig().Gui.SkipAmendWarning,
|
||||||
return handleCommit()
|
types.ConfirmOpts{
|
||||||
}
|
|
||||||
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.AmendCommitTitle,
|
Title: self.c.Tr.AmendCommitTitle,
|
||||||
Prompt: self.c.Tr.AmendCommitPrompt,
|
Prompt: self.c.Tr.AmendCommitPrompt,
|
||||||
HandleConfirm: handleCommit,
|
HandleConfirm: handleCommit,
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *LocalCommitsController) canAmendRange(commits []*models.Commit, start, end int) *types.DisabledReason {
|
func (self *LocalCommitsController) canAmendRange(commits []*models.Commit, start, end int) *types.DisabledReason {
|
||||||
|
@ -25,19 +25,14 @@ func (self *QuitActions) quitAux() error {
|
|||||||
return self.confirmQuitDuringUpdate()
|
return self.confirmQuitDuringUpdate()
|
||||||
}
|
}
|
||||||
|
|
||||||
if self.c.UserConfig().ConfirmOnQuit {
|
return self.c.ConfirmIf(self.c.UserConfig().ConfirmOnQuit,
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
types.ConfirmOpts{
|
||||||
Title: "",
|
Title: "",
|
||||||
Prompt: self.c.Tr.ConfirmQuit,
|
Prompt: self.c.Tr.ConfirmQuit,
|
||||||
HandleConfirm: func() error {
|
HandleConfirm: func() error {
|
||||||
return gocui.ErrQuit
|
return gocui.ErrQuit
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return gocui.ErrQuit
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *QuitActions) confirmQuitDuringUpdate() error {
|
func (self *QuitActions) confirmQuitDuringUpdate() error {
|
||||||
|
@ -201,19 +201,12 @@ func (self *StagingController) DiscardSelection() error {
|
|||||||
keybindings.Label(self.c.UserConfig().Keybinding.Universal.IncreaseContextInDiffView))
|
keybindings.Label(self.c.UserConfig().Keybinding.Universal.IncreaseContextInDiffView))
|
||||||
}
|
}
|
||||||
|
|
||||||
reset := func() error { return self.applySelectionAndRefresh(true) }
|
return self.c.ConfirmIf(!self.staged && !self.c.UserConfig().Gui.SkipDiscardChangeWarning,
|
||||||
|
types.ConfirmOpts{
|
||||||
if !self.staged && !self.c.UserConfig().Gui.SkipDiscardChangeWarning {
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.DiscardChangeTitle,
|
Title: self.c.Tr.DiscardChangeTitle,
|
||||||
Prompt: self.c.Tr.DiscardChangePrompt,
|
Prompt: self.c.Tr.DiscardChangePrompt,
|
||||||
HandleConfirm: reset,
|
HandleConfirm: func() error { return self.applySelectionAndRefresh(true) },
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return reset()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *StagingController) applySelectionAndRefresh(reverse bool) error {
|
func (self *StagingController) applySelectionAndRefresh(reverse bool) error {
|
||||||
|
@ -107,7 +107,11 @@ func (self *StashController) context() *context.StashContext {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (self *StashController) handleStashApply(stashEntry *models.StashEntry) error {
|
func (self *StashController) handleStashApply(stashEntry *models.StashEntry) error {
|
||||||
apply := func() error {
|
return self.c.ConfirmIf(!self.c.UserConfig().Gui.SkipStashWarning,
|
||||||
|
types.ConfirmOpts{
|
||||||
|
Title: self.c.Tr.StashApply,
|
||||||
|
Prompt: self.c.Tr.SureApplyStashEntry,
|
||||||
|
HandleConfirm: func() error {
|
||||||
self.c.LogAction(self.c.Tr.Actions.Stash)
|
self.c.LogAction(self.c.Tr.Actions.Stash)
|
||||||
err := self.c.Git().Stash.Apply(stashEntry.Index)
|
err := self.c.Git().Stash.Apply(stashEntry.Index)
|
||||||
self.postStashRefresh()
|
self.postStashRefresh()
|
||||||
@ -118,21 +122,8 @@ func (self *StashController) handleStashApply(stashEntry *models.StashEntry) err
|
|||||||
self.c.Context().Push(self.c.Contexts().Files, types.OnFocusOpts{})
|
self.c.Context().Push(self.c.Contexts().Files, types.OnFocusOpts{})
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
|
||||||
|
|
||||||
if self.c.UserConfig().Gui.SkipStashWarning {
|
|
||||||
return apply()
|
|
||||||
}
|
|
||||||
|
|
||||||
self.c.Confirm(types.ConfirmOpts{
|
|
||||||
Title: self.c.Tr.StashApply,
|
|
||||||
Prompt: self.c.Tr.SureApplyStashEntry,
|
|
||||||
HandleConfirm: func() error {
|
|
||||||
return apply()
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *StashController) handleStashPop(stashEntry *models.StashEntry) error {
|
func (self *StashController) handleStashPop(stashEntry *models.StashEntry) error {
|
||||||
|
Reference in New Issue
Block a user