1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-06-15 00:15:32 +02:00

pkg/gui: Rename IPopupHandler::Ask() to Confirm()

Follow the JavaScript naming scheme for user interaction (alert, prompt,
confirm) as discussed in #1832.
This commit is contained in:
Moritz Haase
2022-03-30 08:48:29 +02:00
committed by Jesse Duffield
parent f2fb6453a1
commit 8fb2acc224
26 changed files with 66 additions and 64 deletions

View File

@ -208,7 +208,7 @@ func (self *BasicCommitsController) createResetMenu(commit *models.Commit) error
} }
func (self *BasicCommitsController) checkout(commit *models.Commit) error { func (self *BasicCommitsController) checkout(commit *models.Commit) error {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.LcCheckoutCommit, Title: self.c.Tr.LcCheckoutCommit,
Prompt: self.c.Tr.SureCheckoutThisCommit, Prompt: self.c.Tr.SureCheckoutThisCommit,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -168,7 +168,7 @@ func (self *BisectController) showBisectCompleteMessage(candidateShas []string)
return self.c.Error(err) return self.c.Error(err)
} }
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.Bisect.CompleteTitle, Title: self.c.Tr.Bisect.CompleteTitle,
Prompt: fmt.Sprintf(prompt, strings.TrimSpace(formattedCommits)), Prompt: fmt.Sprintf(prompt, strings.TrimSpace(formattedCommits)),
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -155,7 +155,7 @@ func (self *BranchesController) forceCheckout() error {
message := self.c.Tr.SureForceCheckout message := self.c.Tr.SureForceCheckout
title := self.c.Tr.ForceCheckoutBranch title := self.c.Tr.ForceCheckoutBranch
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: title, Title: title,
Prompt: message, Prompt: message,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -176,7 +176,7 @@ func (self *BranchesController) checkoutByName() error {
self.c.LogAction("Checkout branch") self.c.LogAction("Checkout branch")
return self.helpers.Refs.CheckoutRef(response, types.CheckoutRefOptions{ return self.helpers.Refs.CheckoutRef(response, types.CheckoutRefOptions{
OnRefNotFound: func(ref string) error { OnRefNotFound: func(ref string) error {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.BranchNotFoundTitle, Title: self.c.Tr.BranchNotFoundTitle,
Prompt: fmt.Sprintf("%s %s%s", self.c.Tr.BranchNotFoundPrompt, ref, "?"), Prompt: fmt.Sprintf("%s %s%s", self.c.Tr.BranchNotFoundPrompt, ref, "?"),
HandleConfirm: func() error { HandleConfirm: func() error {
@ -227,7 +227,7 @@ func (self *BranchesController) deleteWithForce(selectedBranch *models.Branch, f
}, },
) )
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: title, Title: title,
Prompt: message, Prompt: message,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -344,7 +344,7 @@ func (self *BranchesController) rename(branch *models.Branch) error {
return promptForNewName() return promptForNewName()
} }
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.LcRenameBranch, Title: self.c.Tr.LcRenameBranch,
Prompt: self.c.Tr.RenameBranchWarning, Prompt: self.c.Tr.RenameBranchWarning,
HandleConfirm: promptForNewName, HandleConfirm: promptForNewName,

View File

@ -124,7 +124,7 @@ func (self *CommitFilesController) discard(node *filetree.CommitFileNode) error
return err return err
} }
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.DiscardFileChangesTitle, Title: self.c.Tr.DiscardFileChangesTitle,
Prompt: self.c.Tr.DiscardFileChangesPrompt, Prompt: self.c.Tr.DiscardFileChangesPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -189,7 +189,7 @@ func (self *CommitFilesController) toggleForPatch(node *filetree.CommitFileNode)
} }
if self.git.Patch.PatchManager.Active() && self.git.Patch.PatchManager.To != self.context().GetRefName() { if self.git.Patch.PatchManager.Active() && self.git.Patch.PatchManager.To != self.context().GetRefName() {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(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 {
@ -240,7 +240,7 @@ func (self *CommitFilesController) enterCommitFile(node *filetree.CommitFileNode
} }
if self.git.Patch.PatchManager.Active() && self.git.Patch.PatchManager.To != self.context().GetRefName() { if self.git.Patch.PatchManager.Active() && self.git.Patch.PatchManager.To != self.context().GetRefName() {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(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 {

View File

@ -320,7 +320,7 @@ func (self *FilesController) ignore(node *filetree.FileNode) error {
} }
if node.GetIsTracked() { if node.GetIsTracked() {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.IgnoreTracked, Title: self.c.Tr.IgnoreTracked,
Prompt: self.c.Tr.IgnoreTrackedPrompt, Prompt: self.c.Tr.IgnoreTrackedPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -437,7 +437,7 @@ func (self *FilesController) HandleCommitPress() error {
} }
func (self *FilesController) promptToStageAllAndRetry(retry func() error) error { func (self *FilesController) promptToStageAllAndRetry(retry func() error) error {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.NoFilesStagedTitle, Title: self.c.Tr.NoFilesStagedTitle,
Prompt: self.c.Tr.NoFilesStagedPrompt, Prompt: self.c.Tr.NoFilesStagedPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -467,7 +467,7 @@ func (self *FilesController) handleAmendCommitPress() error {
return self.c.ErrorMsg(self.c.Tr.NoCommitToAmend) return self.c.ErrorMsg(self.c.Tr.NoCommitToAmend)
} }
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: strings.Title(self.c.Tr.AmendLastCommit), Title: strings.Title(self.c.Tr.AmendLastCommit),
Prompt: self.c.Tr.SureToAmend, Prompt: self.c.Tr.SureToAmend,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -21,7 +21,7 @@ func NewBisectHelper(
} }
func (self *BisectHelper) Reset() error { func (self *BisectHelper) Reset() error {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.Bisect.ResetTitle, Title: self.c.Tr.Bisect.ResetTitle,
Prompt: self.c.Tr.Bisect.ResetPrompt, Prompt: self.c.Tr.Bisect.ResetPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -87,7 +87,7 @@ func (self *CherryPickHelper) CopyRange(selectedIndex int, commitsList []*models
// HandlePasteCommits begins a cherry-pick rebase with the commits the user has copied. // HandlePasteCommits begins a cherry-pick rebase with the commits the user has copied.
// Only to be called from the branch commits controller // Only to be called from the branch commits controller
func (self *CherryPickHelper) Paste() error { func (self *CherryPickHelper) Paste() error {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.CherryPick, Title: self.c.Tr.CherryPick,
Prompt: self.c.Tr.SureCherryPick, Prompt: self.c.Tr.SureCherryPick,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -148,7 +148,7 @@ func (self *MergeAndRebaseHelper) CheckMergeOrRebase(result error) error {
// assume in this case that we're already done // assume in this case that we're already done
return nil return nil
} else if isMergeConflictErr(result.Error()) { } else if isMergeConflictErr(result.Error()) {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.FoundConflictsTitle, Title: self.c.Tr.FoundConflictsTitle,
Prompt: self.c.Tr.FoundConflicts, Prompt: self.c.Tr.FoundConflicts,
HandlersManageFocus: true, HandlersManageFocus: true,
@ -171,7 +171,7 @@ func (self *MergeAndRebaseHelper) CheckMergeOrRebase(result error) error {
func (self *MergeAndRebaseHelper) AbortMergeOrRebaseWithConfirm() error { func (self *MergeAndRebaseHelper) AbortMergeOrRebaseWithConfirm() error {
// prompt user to confirm that they want to abort, then do it // prompt user to confirm that they want to abort, then do it
mode := self.workingTreeStateNoun() mode := self.workingTreeStateNoun()
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: fmt.Sprintf(self.c.Tr.AbortTitle, mode), Title: fmt.Sprintf(self.c.Tr.AbortTitle, mode),
Prompt: fmt.Sprintf(self.c.Tr.AbortPrompt, mode), Prompt: fmt.Sprintf(self.c.Tr.AbortPrompt, mode),
HandleConfirm: func() error { HandleConfirm: func() error {
@ -196,7 +196,7 @@ func (self *MergeAndRebaseHelper) workingTreeStateNoun() string {
func (self *MergeAndRebaseHelper) PromptToContinueRebase() error { func (self *MergeAndRebaseHelper) PromptToContinueRebase() error {
self.takeOverMergeConflictScrolling() self.takeOverMergeConflictScrolling()
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: "continue", Title: "continue",
Prompt: self.c.Tr.ConflictsResolved, Prompt: self.c.Tr.ConflictsResolved,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -218,7 +218,7 @@ func (self *MergeAndRebaseHelper) RebaseOntoRef(ref string) error {
}, },
) )
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.RebasingTitle, Title: self.c.Tr.RebasingTitle,
Prompt: prompt, Prompt: prompt,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -245,7 +245,7 @@ func (self *MergeAndRebaseHelper) MergeRefIntoCheckedOutBranch(refName string) e
}, },
) )
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.MergeConfirmTitle, Title: self.c.Tr.MergeConfirmTitle,
Prompt: prompt, Prompt: prompt,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -71,7 +71,7 @@ func (self *RefsHelper) CheckoutRef(ref string, options types.CheckoutRefOptions
if strings.Contains(err.Error(), "Please commit your changes or stash them before you switch branch") { if strings.Contains(err.Error(), "Please commit your changes or stash them before you switch branch") {
// offer to autostash changes // offer to autostash changes
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.AutoStashTitle, Title: self.c.Tr.AutoStashTitle,
Prompt: self.c.Tr.AutoStashPrompt, Prompt: self.c.Tr.AutoStashPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -61,7 +61,7 @@ func (self *WorkingTreeHelper) FileForSubmodule(submodule *models.SubmoduleConfi
} }
func (self *WorkingTreeHelper) OpenMergeTool() error { func (self *WorkingTreeHelper) OpenMergeTool() error {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.MergeToolTitle, Title: self.c.Tr.MergeToolTitle,
Prompt: self.c.Tr.MergeToolPrompt, Prompt: self.c.Tr.MergeToolPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -155,7 +155,7 @@ func (self *LocalCommitsController) squashDown(commit *models.Commit) error {
return nil return nil
} }
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.Squash, Title: self.c.Tr.Squash,
Prompt: self.c.Tr.SureSquashThisCommit, Prompt: self.c.Tr.SureSquashThisCommit,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -180,7 +180,7 @@ func (self *LocalCommitsController) fixup(commit *models.Commit) error {
return nil return nil
} }
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.Fixup, Title: self.c.Tr.Fixup,
Prompt: self.c.Tr.SureFixupThisCommit, Prompt: self.c.Tr.SureFixupThisCommit,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -230,7 +230,7 @@ func (self *LocalCommitsController) rewordEditor(commit *models.Commit) error {
return nil return nil
} }
return self.c.Ask(types.AskOpts{ return 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: func() error { HandleConfirm: func() error {
@ -259,7 +259,7 @@ func (self *LocalCommitsController) drop(commit *models.Commit) error {
return nil return nil
} }
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.DeleteCommitTitle, Title: self.c.Tr.DeleteCommitTitle,
Prompt: self.c.Tr.DeleteCommitPrompt, Prompt: self.c.Tr.DeleteCommitPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -405,7 +405,7 @@ func (self *LocalCommitsController) moveUp(commit *models.Commit) error {
} }
func (self *LocalCommitsController) amendTo(commit *models.Commit) error { func (self *LocalCommitsController) amendTo(commit *models.Commit) error {
return self.c.Ask(types.AskOpts{ return 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: func() error { HandleConfirm: func() error {
@ -422,7 +422,7 @@ func (self *LocalCommitsController) revert(commit *models.Commit) error {
if commit.IsMerge() { if commit.IsMerge() {
return self.createRevertMergeCommitMenu(commit) return self.createRevertMergeCommitMenu(commit)
} else { } else {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.Actions.RevertCommit, Title: self.c.Tr.Actions.RevertCommit,
Prompt: utils.ResolvePlaceholderString( Prompt: utils.ResolvePlaceholderString(
self.c.Tr.ConfirmRevertCommit, self.c.Tr.ConfirmRevertCommit,
@ -480,7 +480,7 @@ func (self *LocalCommitsController) createFixupCommit(commit *models.Commit) err
}, },
) )
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.CreateFixupCommit, Title: self.c.Tr.CreateFixupCommit,
Prompt: prompt, Prompt: prompt,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -500,7 +500,7 @@ func (self *LocalCommitsController) squashAllAboveFixupCommits(commit *models.Co
map[string]string{"commit": commit.Sha}, map[string]string{"commit": commit.Sha},
) )
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.SquashAboveCommits, Title: self.c.Tr.SquashAboveCommits,
Prompt: prompt, Prompt: prompt,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -99,7 +99,7 @@ func (self *RemoteBranchesController) escape() error {
func (self *RemoteBranchesController) delete(selectedBranch *models.RemoteBranch) error { func (self *RemoteBranchesController) delete(selectedBranch *models.RemoteBranch) error {
message := fmt.Sprintf("%s '%s'?", self.c.Tr.DeleteRemoteBranchMessage, selectedBranch.FullName()) message := fmt.Sprintf("%s '%s'?", self.c.Tr.DeleteRemoteBranchMessage, selectedBranch.FullName())
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.DeleteRemoteBranch, Title: self.c.Tr.DeleteRemoteBranch,
Prompt: message, Prompt: message,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -139,7 +139,7 @@ func (self *RemoteBranchesController) setAsUpstream(selectedBranch *models.Remot
}, },
) )
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.SetUpstreamTitle, Title: self.c.Tr.SetUpstreamTitle,
Prompt: message, Prompt: message,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -101,7 +101,7 @@ func (self *RemotesController) add() error {
} }
func (self *RemotesController) remove(remote *models.Remote) error { func (self *RemotesController) remove(remote *models.Remote) error {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.LcRemoveRemote, Title: self.c.Tr.LcRemoveRemote,
Prompt: self.c.Tr.LcRemoveRemotePrompt + " '" + remote.Name + "'?", Prompt: self.c.Tr.LcRemoveRemotePrompt + " '" + remote.Name + "'?",
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -83,7 +83,7 @@ func (self *StashController) handleStashApply(stashEntry *models.StashEntry) err
return apply() return apply()
} }
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.StashApply, Title: self.c.Tr.StashApply,
Prompt: self.c.Tr.SureApplyStashEntry, Prompt: self.c.Tr.SureApplyStashEntry,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -107,7 +107,7 @@ func (self *StashController) handleStashPop(stashEntry *models.StashEntry) error
return pop() return pop()
} }
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.StashPop, Title: self.c.Tr.StashPop,
Prompt: self.c.Tr.SurePopStashEntry, Prompt: self.c.Tr.SurePopStashEntry,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -117,7 +117,7 @@ func (self *StashController) handleStashPop(stashEntry *models.StashEntry) error
} }
func (self *StashController) handleStashDrop(stashEntry *models.StashEntry) error { func (self *StashController) handleStashDrop(stashEntry *models.StashEntry) error {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.StashDrop, Title: self.c.Tr.StashDrop,
Prompt: self.c.Tr.SureDropStashEntry, Prompt: self.c.Tr.SureDropStashEntry,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -205,7 +205,7 @@ func (self *SubmodulesController) update(submodule *models.SubmoduleConfig) erro
} }
func (self *SubmodulesController) remove(submodule *models.SubmoduleConfig) error { func (self *SubmodulesController) remove(submodule *models.SubmoduleConfig) error {
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.RemoveSubmodule, Title: self.c.Tr.RemoveSubmodule,
Prompt: fmt.Sprintf(self.c.Tr.RemoveSubmodulePrompt, submodule.Name), Prompt: fmt.Sprintf(self.c.Tr.RemoveSubmodulePrompt, submodule.Name),
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -210,7 +210,7 @@ func (self *SyncController) pushAux(opts pushOpts) error {
_ = self.c.ErrorMsg(self.c.Tr.UpdatesRejectedAndForcePushDisabled) _ = self.c.ErrorMsg(self.c.Tr.UpdatesRejectedAndForcePushDisabled)
return nil return nil
} }
_ = self.c.Ask(types.AskOpts{ _ = self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.ForcePush, Title: self.c.Tr.ForcePush,
Prompt: self.c.Tr.ForcePushPrompt, Prompt: self.c.Tr.ForcePushPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -234,7 +234,7 @@ func (self *SyncController) requestToForcePush(opts pushOpts) error {
return self.c.ErrorMsg(self.c.Tr.ForcePushDisabled) return self.c.ErrorMsg(self.c.Tr.ForcePushDisabled)
} }
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.ForcePush, Title: self.c.Tr.ForcePush,
Prompt: self.c.Tr.ForcePushPrompt, Prompt: self.c.Tr.ForcePushPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -72,7 +72,7 @@ func (self *TagsController) delete(tag *models.Tag) error {
}, },
) )
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.DeleteTagTitle, Title: self.c.Tr.DeleteTagTitle,
Prompt: prompt, Prompt: prompt,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -85,7 +85,7 @@ func (self *UndoController) reflogUndo() error {
switch action.kind { switch action.kind {
case COMMIT, REBASE: case COMMIT, REBASE:
return true, self.c.Ask(types.AskOpts{ return true, self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.Actions.Undo, Title: self.c.Tr.Actions.Undo,
Prompt: fmt.Sprintf(self.c.Tr.HardResetAutostashPrompt, action.from), Prompt: fmt.Sprintf(self.c.Tr.HardResetAutostashPrompt, action.from),
HandleConfirm: func() error { HandleConfirm: func() error {
@ -97,7 +97,7 @@ func (self *UndoController) reflogUndo() error {
}, },
}) })
case CHECKOUT: case CHECKOUT:
return true, self.c.Ask(types.AskOpts{ return true, self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.Actions.Undo, Title: self.c.Tr.Actions.Undo,
Prompt: fmt.Sprintf(self.c.Tr.CheckoutPrompt, action.from), Prompt: fmt.Sprintf(self.c.Tr.CheckoutPrompt, action.from),
HandleConfirm: func() error { HandleConfirm: func() error {
@ -136,7 +136,7 @@ func (self *UndoController) reflogRedo() error {
switch action.kind { switch action.kind {
case COMMIT, REBASE: case COMMIT, REBASE:
return true, self.c.Ask(types.AskOpts{ return true, self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.Actions.Redo, Title: self.c.Tr.Actions.Redo,
Prompt: fmt.Sprintf(self.c.Tr.HardResetAutostashPrompt, action.to), Prompt: fmt.Sprintf(self.c.Tr.HardResetAutostashPrompt, action.to),
HandleConfirm: func() error { HandleConfirm: func() error {
@ -149,7 +149,7 @@ func (self *UndoController) reflogRedo() error {
}) })
case CHECKOUT: case CHECKOUT:
return true, self.c.Ask(types.AskOpts{ return true, self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.Actions.Redo, Title: self.c.Tr.Actions.Redo,
Prompt: fmt.Sprintf(self.c.Tr.CheckoutPrompt, action.to), Prompt: fmt.Sprintf(self.c.Tr.CheckoutPrompt, action.to),
HandleConfirm: func() error { HandleConfirm: func() error {
@ -241,7 +241,7 @@ func (self *UndoController) hardResetWithAutoStash(commitSha string, options har
dirtyWorkingTree := self.helpers.WorkingTree.IsWorkingTreeDirty() dirtyWorkingTree := self.helpers.WorkingTree.IsWorkingTreeDirty()
if dirtyWorkingTree { if dirtyWorkingTree {
// offer to autostash changes // offer to autostash changes
return self.c.Ask(types.AskOpts{ return self.c.Confirm(types.ConfirmOpts{
Title: self.c.Tr.AutoStashTitle, Title: self.c.Tr.AutoStashTitle,
Prompt: self.c.Tr.AutoStashPrompt, Prompt: self.c.Tr.AutoStashPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -6,7 +6,7 @@ import (
func (gui *Gui) validateNotInFilterMode() bool { func (gui *Gui) validateNotInFilterMode() bool {
if gui.State.Modes.Filtering.Active() { if gui.State.Modes.Filtering.Active() {
_ = gui.c.Ask(types.AskOpts{ _ = gui.c.Confirm(types.ConfirmOpts{
Title: gui.c.Tr.MustExitFilterModeTitle, Title: gui.c.Tr.MustExitFilterModeTitle,
Prompt: gui.c.Tr.MustExitFilterModePrompt, Prompt: gui.c.Tr.MustExitFilterModePrompt,
HandleConfirm: gui.exitFilterMode, HandleConfirm: gui.exitFilterMode,

View File

@ -863,7 +863,7 @@ func (gui *Gui) showIntroPopupMessage(done chan struct{}) error {
return gui.c.SaveAppState() return gui.c.SaveAppState()
} }
return gui.c.Ask(types.AskOpts{ return gui.c.Confirm(types.ConfirmOpts{
Title: "", Title: "",
Prompt: gui.c.Tr.IntroPopupMessage, Prompt: gui.c.Tr.IntroPopupMessage,
HandleConfirm: onConfirm, HandleConfirm: onConfirm,
@ -898,7 +898,7 @@ func (gui *Gui) startBackgroundFetch() {
} }
err := gui.backgroundFetch() err := gui.backgroundFetch()
if err != nil && strings.Contains(err.Error(), "exit status 128") && isNew { if err != nil && strings.Contains(err.Error(), "exit status 128") && isNew {
_ = gui.c.Ask(types.AskOpts{ _ = gui.c.Confirm(types.ConfirmOpts{
Title: gui.c.Tr.NoAutomaticGitFetchTitle, Title: gui.c.Tr.NoAutomaticGitFetchTitle,
Prompt: gui.c.Tr.NoAutomaticGitFetchBody, Prompt: gui.c.Tr.NoAutomaticGitFetchBody,
}) })

View File

@ -149,7 +149,7 @@ func (gui *Gui) handleMovePatchIntoWorkingTree() error {
} }
if gui.helpers.WorkingTree.IsWorkingTreeDirty() { if gui.helpers.WorkingTree.IsWorkingTreeDirty() {
return gui.c.Ask(types.AskOpts{ return gui.c.Confirm(types.ConfirmOpts{
Title: gui.c.Tr.MustStashTitle, Title: gui.c.Tr.MustStashTitle,
Prompt: gui.c.Tr.MustStashWarning, Prompt: gui.c.Tr.MustStashWarning,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -79,17 +79,14 @@ func (self *RealPopupHandler) ErrorMsg(message string) error {
return err return err
} }
return self.Ask(types.AskOpts{ return self.Alert(self.Tr.Error, coloredMessage)
Title: self.Tr.Error,
Prompt: coloredMessage,
})
} }
func (self *RealPopupHandler) Alert(title string, message string) error { func (self *RealPopupHandler) Alert(title string, message string) error {
return self.Ask(types.AskOpts{Title: title, Prompt: message}) return self.Confirm(types.ConfirmOpts{Title: title, Prompt: message})
} }
func (self *RealPopupHandler) Ask(opts types.AskOpts) error { func (self *RealPopupHandler) Confirm(opts types.ConfirmOpts) error {
self.Lock() self.Lock()
self.index++ self.index++
self.Unlock() self.Unlock()
@ -158,7 +155,7 @@ func (self *RealPopupHandler) GetPromptInput() string {
type TestPopupHandler struct { type TestPopupHandler struct {
OnErrorMsg func(message string) error OnErrorMsg func(message string) error
OnAsk func(opts types.AskOpts) error OnConfirm func(opts types.ConfirmOpts) error
OnPrompt func(opts types.PromptOpts) error OnPrompt func(opts types.PromptOpts) error
} }
@ -176,8 +173,8 @@ func (self *TestPopupHandler) Alert(title string, message string) error {
panic("not yet implemented") panic("not yet implemented")
} }
func (self *TestPopupHandler) Ask(opts types.AskOpts) error { func (self *TestPopupHandler) Confirm(opts types.ConfirmOpts) error {
return self.OnAsk(opts) return self.Confirm(opts)
} }
func (self *TestPopupHandler) Prompt(opts types.PromptOpts) error { func (self *TestPopupHandler) Prompt(opts types.PromptOpts) error {

View File

@ -73,7 +73,7 @@ func (gui *Gui) quit() error {
} }
if gui.c.UserConfig.ConfirmOnQuit { if gui.c.UserConfig.ConfirmOnQuit {
return gui.c.Ask(types.AskOpts{ return gui.c.Confirm(types.ConfirmOpts{
Title: "", Title: "",
Prompt: gui.c.Tr.ConfirmQuit, Prompt: gui.c.Tr.ConfirmQuit,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -113,7 +113,7 @@ func (gui *Gui) handleResetSelection() error {
} }
if !gui.c.UserConfig.Gui.SkipUnstageLineWarning { if !gui.c.UserConfig.Gui.SkipUnstageLineWarning {
return gui.c.Ask(types.AskOpts{ return gui.c.Confirm(types.ConfirmOpts{
Title: gui.c.Tr.UnstageLinesTitle, Title: gui.c.Tr.UnstageLinesTitle,
Prompt: gui.c.Tr.UnstageLinesPrompt, Prompt: gui.c.Tr.UnstageLinesPrompt,
HandleConfirm: func() error { HandleConfirm: func() error {

View File

@ -48,13 +48,18 @@ type IGuiCommon interface {
} }
type IPopupHandler interface { type IPopupHandler interface {
// Shows a popup with a (localized) "Error" caption and the given error message (in red).
//
// This is a convenience wrapper around Alert().
ErrorMsg(message string) error ErrorMsg(message string) error
Error(err error) error Error(err error) error
// Shows a notification popup with the given title and message to the user. // Shows a notification popup with the given title and message to the user.
// //
// This is a convenience wrapper around Ask(), thus the popup can be closed using both 'Enter' and 'ESC'. // This is a convenience wrapper around Confirm(), thus the popup can be closed using both 'Enter' and 'ESC'.
Alert(title string, message string) error Alert(title string, message string) error
Ask(opts AskOpts) error // Shows a popup asking the user for confirmation.
Confirm(opts ConfirmOpts) error
// Shows a popup prompting the user for input.
Prompt(opts PromptOpts) error Prompt(opts PromptOpts) error
WithLoaderPanel(message string, f func() error) error WithLoaderPanel(message string, f func() error) error
WithWaitingStatus(message string, f func() error) error WithWaitingStatus(message string, f func() error) error
@ -85,7 +90,7 @@ type CreatePopupPanelOpts struct {
Mask bool Mask bool
} }
type AskOpts struct { type ConfirmOpts struct {
Title string Title string
Prompt string Prompt string
HandleConfirm func() error HandleConfirm func() error

View File

@ -13,7 +13,7 @@ func (gui *Gui) showUpdatePrompt(newVersion string) error {
}, },
) )
return gui.c.Ask(types.AskOpts{ return gui.c.Confirm(types.ConfirmOpts{
Title: gui.Tr.UpdateAvailableTitle, Title: gui.Tr.UpdateAvailableTitle,
Prompt: message, Prompt: message,
HandleConfirm: func() error { HandleConfirm: func() error {
@ -75,7 +75,7 @@ func (gui *Gui) onUpdateFinish(statusId int, err error) error {
} }
func (gui *Gui) createUpdateQuitConfirmation() error { func (gui *Gui) createUpdateQuitConfirmation() error {
return gui.c.Ask(types.AskOpts{ return gui.c.Confirm(types.ConfirmOpts{
Title: gui.Tr.ConfirmQuitDuringUpdateTitle, Title: gui.Tr.ConfirmQuitDuringUpdateTitle,
Prompt: gui.Tr.ConfirmQuitDuringUpdate, Prompt: gui.Tr.ConfirmQuitDuringUpdate,
HandleConfirm: func() error { HandleConfirm: func() error {