1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-07-30 03:23:08 +03:00

Pass a remote branch to ConfirmDeleteRemote

Since we want to select multiselections, this will make it easier to pass a
slice of remote branches. It does require that for the case of the local
branches panel we need to synthesize a RemoteBranch object from the selected
local branch, but that's not hard.
This commit is contained in:
Stefan Haller
2024-11-23 18:03:43 +01:00
parent e98cc4d016
commit 92bce7de43
3 changed files with 8 additions and 7 deletions

View File

@ -66,18 +66,18 @@ func (self *BranchesHelper) ConfirmLocalDelete(branch *models.Branch) error {
return nil
}
func (self *BranchesHelper) ConfirmDeleteRemote(remoteName string, branchName string) error {
func (self *BranchesHelper) ConfirmDeleteRemote(remoteBranch *models.RemoteBranch) error {
title := utils.ResolvePlaceholderString(
self.c.Tr.DeleteBranchTitle,
map[string]string{
"selectedBranchName": branchName,
"selectedBranchName": remoteBranch.Name,
},
)
prompt := utils.ResolvePlaceholderString(
self.c.Tr.DeleteRemoteBranchPrompt,
map[string]string{
"selectedBranchName": branchName,
"upstream": remoteName,
"selectedBranchName": remoteBranch.Name,
"upstream": remoteBranch.RemoteName,
},
)
self.c.Confirm(types.ConfirmOpts{
@ -86,7 +86,7 @@ func (self *BranchesHelper) ConfirmDeleteRemote(remoteName string, branchName st
HandleConfirm: func() error {
return self.c.WithWaitingStatus(self.c.Tr.DeletingStatus, func(task gocui.Task) error {
self.c.LogAction(self.c.Tr.Actions.DeleteRemoteBranch)
if err := self.c.Git().Remote.DeleteRemoteBranch(task, remoteName, branchName); err != nil {
if err := self.c.Git().Remote.DeleteRemoteBranch(task, remoteBranch.RemoteName, remoteBranch.Name); err != nil {
return err
}
return self.c.Refresh(types.RefreshOptions{Mode: types.ASYNC, Scope: []types.RefreshableView{types.BRANCHES, types.REMOTES}})