1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-07-31 14:24:25 +03:00

rename to SelectedLineIdx

This commit is contained in:
Jesse Duffield
2020-08-20 08:53:10 +10:00
parent eb5e54e9fd
commit 146722beb8
14 changed files with 67 additions and 67 deletions

View File

@ -15,7 +15,7 @@ func (gui *Gui) getSelectedBranch() *commands.Branch {
return nil return nil
} }
selectedLine := gui.State.Panels.Branches.SelectedLine selectedLine := gui.State.Panels.Branches.SelectedLineIdx
if selectedLine == -1 { if selectedLine == -1 {
return nil return nil
} }
@ -76,10 +76,10 @@ func (gui *Gui) refreshBranches() {
// specific functions // specific functions
func (gui *Gui) handleBranchPress(g *gocui.Gui, v *gocui.View) error { func (gui *Gui) handleBranchPress(g *gocui.Gui, v *gocui.View) error {
if gui.State.Panels.Branches.SelectedLine == -1 { if gui.State.Panels.Branches.SelectedLineIdx == -1 {
return nil return nil
} }
if gui.State.Panels.Branches.SelectedLine == 0 { if gui.State.Panels.Branches.SelectedLineIdx == 0 {
return gui.createErrorPanel(gui.Tr.SLocalize("AlreadyCheckedOutBranch")) return gui.createErrorPanel(gui.Tr.SLocalize("AlreadyCheckedOutBranch"))
} }
branch := gui.getSelectedBranch() branch := gui.getSelectedBranch()
@ -143,8 +143,8 @@ func (gui *Gui) handleCheckoutRef(ref string, options handleCheckoutRefOptions)
cmdOptions := commands.CheckoutOptions{Force: false, EnvVars: options.EnvVars} cmdOptions := commands.CheckoutOptions{Force: false, EnvVars: options.EnvVars}
onSuccess := func() { onSuccess := func() {
gui.State.Panels.Branches.SelectedLine = 0 gui.State.Panels.Branches.SelectedLineIdx = 0
gui.State.Panels.Commits.SelectedLine = 0 gui.State.Panels.Commits.SelectedLineIdx = 0
// loading a heap of commits is slow so we limit them whenever doing a reset // loading a heap of commits is slow so we limit them whenever doing a reset
gui.State.Panels.Commits.LimitCommits = true gui.State.Panels.Commits.LimitCommits = true
} }
@ -246,7 +246,7 @@ func (gui *Gui) createNewBranchWithName(newBranchName string) error {
if err := gui.GitCommand.NewBranch(newBranchName, branch.Name); err != nil { if err := gui.GitCommand.NewBranch(newBranchName, branch.Name); err != nil {
return gui.surfaceError(err) return gui.surfaceError(err)
} }
gui.State.Panels.Branches.SelectedLine = 0 gui.State.Panels.Branches.SelectedLineIdx = 0
return gui.refreshSidePanels(refreshOptions{mode: ASYNC}) return gui.refreshSidePanels(refreshOptions{mode: ASYNC})
} }
@ -408,7 +408,7 @@ func (gui *Gui) handleFastForward(g *gocui.Gui, v *gocui.View) error {
go func() { go func() {
_ = gui.createLoaderPanel(v, message) _ = gui.createLoaderPanel(v, message)
if gui.State.Panels.Branches.SelectedLine == 0 { if gui.State.Panels.Branches.SelectedLineIdx == 0 {
_ = gui.pullWithMode("ff-only", PullFilesOptions{}) _ = gui.pullWithMode("ff-only", PullFilesOptions{})
} else { } else {
err := gui.GitCommand.FastForward(branch.Name, remoteName, remoteBranchName, gui.promptUserForCredential) err := gui.GitCommand.FastForward(branch.Name, remoteName, remoteBranchName, gui.promptUserForCredential)

View File

@ -7,7 +7,7 @@ import (
) )
func (gui *Gui) getSelectedCommitFile() *commands.CommitFile { func (gui *Gui) getSelectedCommitFile() *commands.CommitFile {
selectedLine := gui.State.Panels.CommitFiles.SelectedLine selectedLine := gui.State.Panels.CommitFiles.SelectedLineIdx
if selectedLine == -1 { if selectedLine == -1 {
return nil return nil
} }
@ -44,7 +44,7 @@ func (gui *Gui) handleSwitchToCommitsPanel(g *gocui.Gui, v *gocui.View) error {
} }
func (gui *Gui) handleCheckoutCommitFile(g *gocui.Gui, v *gocui.View) error { func (gui *Gui) handleCheckoutCommitFile(g *gocui.Gui, v *gocui.View) error {
file := gui.State.CommitFiles[gui.State.Panels.CommitFiles.SelectedLine] file := gui.State.CommitFiles[gui.State.Panels.CommitFiles.SelectedLineIdx]
if err := gui.GitCommand.CheckoutFile(file.Sha, file.Name); err != nil { if err := gui.GitCommand.CheckoutFile(file.Sha, file.Name); err != nil {
return gui.surfaceError(err) return gui.surfaceError(err)
@ -58,7 +58,7 @@ func (gui *Gui) handleDiscardOldFileChange(g *gocui.Gui, v *gocui.View) error {
return err return err
} }
fileName := gui.State.CommitFiles[gui.State.Panels.CommitFiles.SelectedLine].Name fileName := gui.State.CommitFiles[gui.State.Panels.CommitFiles.SelectedLineIdx].Name
return gui.ask(askOpts{ return gui.ask(askOpts{
returnToView: v, returnToView: v,
@ -67,7 +67,7 @@ func (gui *Gui) handleDiscardOldFileChange(g *gocui.Gui, v *gocui.View) error {
prompt: gui.Tr.SLocalize("DiscardFileChangesPrompt"), prompt: gui.Tr.SLocalize("DiscardFileChangesPrompt"),
handleConfirm: func() error { handleConfirm: func() error {
return gui.WithWaitingStatus(gui.Tr.SLocalize("RebasingStatus"), func() error { return gui.WithWaitingStatus(gui.Tr.SLocalize("RebasingStatus"), func() error {
if err := gui.GitCommand.DiscardOldFileChanges(gui.State.Commits, gui.State.Panels.Commits.SelectedLine, fileName); err != nil { if err := gui.GitCommand.DiscardOldFileChanges(gui.State.Commits, gui.State.Panels.Commits.SelectedLineIdx, fileName); err != nil {
if err := gui.handleGenericMergeCommandResult(err); err != nil { if err := gui.handleGenericMergeCommandResult(err); err != nil {
return err return err
} }

View File

@ -11,7 +11,7 @@ import (
// list panel functions // list panel functions
func (gui *Gui) getSelectedCommit() *commands.Commit { func (gui *Gui) getSelectedCommit() *commands.Commit {
selectedLine := gui.State.Panels.Commits.SelectedLine selectedLine := gui.State.Panels.Commits.SelectedLineIdx
if selectedLine == -1 { if selectedLine == -1 {
return nil return nil
} }
@ -21,7 +21,7 @@ func (gui *Gui) getSelectedCommit() *commands.Commit {
func (gui *Gui) handleCommitSelect() error { func (gui *Gui) handleCommitSelect() error {
state := gui.State.Panels.Commits state := gui.State.Panels.Commits
if state.SelectedLine > 290 && state.LimitCommits { if state.SelectedLineIdx > 290 && state.LimitCommits {
state.LimitCommits = false state.LimitCommits = false
go func() { go func() {
if err := gui.refreshCommitsWithLimit(); err != nil { if err := gui.refreshCommitsWithLimit(); err != nil {
@ -138,7 +138,7 @@ func (gui *Gui) handleCommitSquashDown(g *gocui.Gui, v *gocui.View) error {
prompt: gui.Tr.SLocalize("SureSquashThisCommit"), prompt: gui.Tr.SLocalize("SureSquashThisCommit"),
handleConfirm: func() error { handleConfirm: func() error {
return gui.WithWaitingStatus(gui.Tr.SLocalize("SquashingStatus"), func() error { return gui.WithWaitingStatus(gui.Tr.SLocalize("SquashingStatus"), func() error {
err := gui.GitCommand.InteractiveRebase(gui.State.Commits, gui.State.Panels.Commits.SelectedLine, "squash") err := gui.GitCommand.InteractiveRebase(gui.State.Commits, gui.State.Panels.Commits.SelectedLineIdx, "squash")
return gui.handleGenericMergeCommandResult(err) return gui.handleGenericMergeCommandResult(err)
}) })
}, },
@ -169,7 +169,7 @@ func (gui *Gui) handleCommitFixup(g *gocui.Gui, v *gocui.View) error {
prompt: gui.Tr.SLocalize("SureFixupThisCommit"), prompt: gui.Tr.SLocalize("SureFixupThisCommit"),
handleConfirm: func() error { handleConfirm: func() error {
return gui.WithWaitingStatus(gui.Tr.SLocalize("FixingStatus"), func() error { return gui.WithWaitingStatus(gui.Tr.SLocalize("FixingStatus"), func() error {
err := gui.GitCommand.InteractiveRebase(gui.State.Commits, gui.State.Panels.Commits.SelectedLine, "fixup") err := gui.GitCommand.InteractiveRebase(gui.State.Commits, gui.State.Panels.Commits.SelectedLineIdx, "fixup")
return gui.handleGenericMergeCommandResult(err) return gui.handleGenericMergeCommandResult(err)
}) })
}, },
@ -189,7 +189,7 @@ func (gui *Gui) handleRenameCommit(g *gocui.Gui, v *gocui.View) error {
return nil return nil
} }
if gui.State.Panels.Commits.SelectedLine != 0 { if gui.State.Panels.Commits.SelectedLineIdx != 0 {
return gui.createErrorPanel(gui.Tr.SLocalize("OnlyRenameTopCommit")) return gui.createErrorPanel(gui.Tr.SLocalize("OnlyRenameTopCommit"))
} }
@ -225,7 +225,7 @@ func (gui *Gui) handleRenameCommitEditor(g *gocui.Gui, v *gocui.View) error {
return nil return nil
} }
subProcess, err := gui.GitCommand.RewordCommit(gui.State.Commits, gui.State.Panels.Commits.SelectedLine) subProcess, err := gui.GitCommand.RewordCommit(gui.State.Commits, gui.State.Panels.Commits.SelectedLineIdx)
if err != nil { if err != nil {
return gui.surfaceError(err) return gui.surfaceError(err)
} }
@ -241,7 +241,7 @@ func (gui *Gui) handleRenameCommitEditor(g *gocui.Gui, v *gocui.View) error {
// commit meaning you are trying to edit the todo file rather than actually // commit meaning you are trying to edit the todo file rather than actually
// begin a rebase. It then updates the todo file with that action // begin a rebase. It then updates the todo file with that action
func (gui *Gui) handleMidRebaseCommand(action string) (bool, error) { func (gui *Gui) handleMidRebaseCommand(action string) (bool, error) {
selectedCommit := gui.State.Commits[gui.State.Panels.Commits.SelectedLine] selectedCommit := gui.State.Commits[gui.State.Panels.Commits.SelectedLineIdx]
if selectedCommit.Status != "rebasing" { if selectedCommit.Status != "rebasing" {
return false, nil return false, nil
} }
@ -254,7 +254,7 @@ func (gui *Gui) handleMidRebaseCommand(action string) (bool, error) {
return true, gui.createErrorPanel(gui.Tr.SLocalize("rewordNotSupported")) return true, gui.createErrorPanel(gui.Tr.SLocalize("rewordNotSupported"))
} }
if err := gui.GitCommand.EditRebaseTodo(gui.State.Panels.Commits.SelectedLine, action); err != nil { if err := gui.GitCommand.EditRebaseTodo(gui.State.Panels.Commits.SelectedLineIdx, action); err != nil {
return false, gui.surfaceError(err) return false, gui.surfaceError(err)
} }
// TODO: consider doing this in a way that is less expensive. We don't actually // TODO: consider doing this in a way that is less expensive. We don't actually
@ -282,7 +282,7 @@ func (gui *Gui) handleCommitDelete(g *gocui.Gui, v *gocui.View) error {
prompt: gui.Tr.SLocalize("DeleteCommitPrompt"), prompt: gui.Tr.SLocalize("DeleteCommitPrompt"),
handleConfirm: func() error { handleConfirm: func() error {
return gui.WithWaitingStatus(gui.Tr.SLocalize("DeletingStatus"), func() error { return gui.WithWaitingStatus(gui.Tr.SLocalize("DeletingStatus"), func() error {
err := gui.GitCommand.InteractiveRebase(gui.State.Commits, gui.State.Panels.Commits.SelectedLine, "drop") err := gui.GitCommand.InteractiveRebase(gui.State.Commits, gui.State.Panels.Commits.SelectedLineIdx, "drop")
return gui.handleGenericMergeCommandResult(err) return gui.handleGenericMergeCommandResult(err)
}) })
}, },
@ -294,7 +294,7 @@ func (gui *Gui) handleCommitMoveDown(g *gocui.Gui, v *gocui.View) error {
return err return err
} }
index := gui.State.Panels.Commits.SelectedLine index := gui.State.Panels.Commits.SelectedLineIdx
selectedCommit := gui.State.Commits[index] selectedCommit := gui.State.Commits[index]
if selectedCommit.Status == "rebasing" { if selectedCommit.Status == "rebasing" {
if gui.State.Commits[index+1].Status != "rebasing" { if gui.State.Commits[index+1].Status != "rebasing" {
@ -303,14 +303,14 @@ func (gui *Gui) handleCommitMoveDown(g *gocui.Gui, v *gocui.View) error {
if err := gui.GitCommand.MoveTodoDown(index); err != nil { if err := gui.GitCommand.MoveTodoDown(index); err != nil {
return gui.surfaceError(err) return gui.surfaceError(err)
} }
gui.State.Panels.Commits.SelectedLine++ gui.State.Panels.Commits.SelectedLineIdx++
return gui.refreshSidePanels(refreshOptions{mode: BLOCK_UI, scope: []int{COMMITS, BRANCHES}}) return gui.refreshSidePanels(refreshOptions{mode: BLOCK_UI, scope: []int{COMMITS, BRANCHES}})
} }
return gui.WithWaitingStatus(gui.Tr.SLocalize("MovingStatus"), func() error { return gui.WithWaitingStatus(gui.Tr.SLocalize("MovingStatus"), func() error {
err := gui.GitCommand.MoveCommitDown(gui.State.Commits, index) err := gui.GitCommand.MoveCommitDown(gui.State.Commits, index)
if err == nil { if err == nil {
gui.State.Panels.Commits.SelectedLine++ gui.State.Panels.Commits.SelectedLineIdx++
} }
return gui.handleGenericMergeCommandResult(err) return gui.handleGenericMergeCommandResult(err)
}) })
@ -321,7 +321,7 @@ func (gui *Gui) handleCommitMoveUp(g *gocui.Gui, v *gocui.View) error {
return err return err
} }
index := gui.State.Panels.Commits.SelectedLine index := gui.State.Panels.Commits.SelectedLineIdx
if index == 0 { if index == 0 {
return nil return nil
} }
@ -330,14 +330,14 @@ func (gui *Gui) handleCommitMoveUp(g *gocui.Gui, v *gocui.View) error {
if err := gui.GitCommand.MoveTodoDown(index - 1); err != nil { if err := gui.GitCommand.MoveTodoDown(index - 1); err != nil {
return gui.surfaceError(err) return gui.surfaceError(err)
} }
gui.State.Panels.Commits.SelectedLine-- gui.State.Panels.Commits.SelectedLineIdx--
return gui.refreshSidePanels(refreshOptions{mode: BLOCK_UI, scope: []int{COMMITS, BRANCHES}}) return gui.refreshSidePanels(refreshOptions{mode: BLOCK_UI, scope: []int{COMMITS, BRANCHES}})
} }
return gui.WithWaitingStatus(gui.Tr.SLocalize("MovingStatus"), func() error { return gui.WithWaitingStatus(gui.Tr.SLocalize("MovingStatus"), func() error {
err := gui.GitCommand.MoveCommitDown(gui.State.Commits, index-1) err := gui.GitCommand.MoveCommitDown(gui.State.Commits, index-1)
if err == nil { if err == nil {
gui.State.Panels.Commits.SelectedLine-- gui.State.Panels.Commits.SelectedLineIdx--
} }
return gui.handleGenericMergeCommandResult(err) return gui.handleGenericMergeCommandResult(err)
}) })
@ -357,7 +357,7 @@ func (gui *Gui) handleCommitEdit(g *gocui.Gui, v *gocui.View) error {
} }
return gui.WithWaitingStatus(gui.Tr.SLocalize("RebasingStatus"), func() error { return gui.WithWaitingStatus(gui.Tr.SLocalize("RebasingStatus"), func() error {
err = gui.GitCommand.InteractiveRebase(gui.State.Commits, gui.State.Panels.Commits.SelectedLine, "edit") err = gui.GitCommand.InteractiveRebase(gui.State.Commits, gui.State.Panels.Commits.SelectedLineIdx, "edit")
return gui.handleGenericMergeCommandResult(err) return gui.handleGenericMergeCommandResult(err)
}) })
} }
@ -374,7 +374,7 @@ func (gui *Gui) handleCommitAmendTo(g *gocui.Gui, v *gocui.View) error {
prompt: gui.Tr.SLocalize("AmendCommitPrompt"), prompt: gui.Tr.SLocalize("AmendCommitPrompt"),
handleConfirm: func() error { handleConfirm: func() error {
return gui.WithWaitingStatus(gui.Tr.SLocalize("AmendingStatus"), func() error { return gui.WithWaitingStatus(gui.Tr.SLocalize("AmendingStatus"), func() error {
err := gui.GitCommand.AmendTo(gui.State.Commits[gui.State.Panels.Commits.SelectedLine].Sha) err := gui.GitCommand.AmendTo(gui.State.Commits[gui.State.Panels.Commits.SelectedLineIdx].Sha)
return gui.handleGenericMergeCommandResult(err) return gui.handleGenericMergeCommandResult(err)
}) })
}, },
@ -404,10 +404,10 @@ func (gui *Gui) handleCommitRevert(g *gocui.Gui, v *gocui.View) error {
return err return err
} }
if err := gui.GitCommand.Revert(gui.State.Commits[gui.State.Panels.Commits.SelectedLine].Sha); err != nil { if err := gui.GitCommand.Revert(gui.State.Commits[gui.State.Panels.Commits.SelectedLineIdx].Sha); err != nil {
return gui.surfaceError(err) return gui.surfaceError(err)
} }
gui.State.Panels.Commits.SelectedLine++ gui.State.Panels.Commits.SelectedLineIdx++
return gui.refreshSidePanels(refreshOptions{mode: BLOCK_UI, scope: []int{COMMITS, BRANCHES}}) return gui.refreshSidePanels(refreshOptions{mode: BLOCK_UI, scope: []int{COMMITS, BRANCHES}})
} }
@ -417,7 +417,7 @@ func (gui *Gui) handleCopyCommit(g *gocui.Gui, v *gocui.View) error {
} }
// get currently selected commit, add the sha to state. // get currently selected commit, add the sha to state.
commit := gui.State.Commits[gui.State.Panels.Commits.SelectedLine] commit := gui.State.Commits[gui.State.Panels.Commits.SelectedLineIdx]
// we will un-copy it if it's already copied // we will un-copy it if it's already copied
for index, cherryPickedCommit := range gui.State.CherryPickedCommits { for index, cherryPickedCommit := range gui.State.CherryPickedCommits {
@ -427,7 +427,7 @@ func (gui *Gui) handleCopyCommit(g *gocui.Gui, v *gocui.View) error {
} }
} }
gui.addCommitToCherryPickedCommits(gui.State.Panels.Commits.SelectedLine) gui.addCommitToCherryPickedCommits(gui.State.Panels.Commits.SelectedLineIdx)
return gui.Contexts.BranchCommits.Context.HandleRender() return gui.Contexts.BranchCommits.Context.HandleRender()
} }
@ -464,7 +464,7 @@ func (gui *Gui) handleCopyCommitRange(g *gocui.Gui, v *gocui.View) error {
// find the last commit that is copied that's above our position // find the last commit that is copied that's above our position
// if there are none, startIndex = 0 // if there are none, startIndex = 0
startIndex := 0 startIndex := 0
for index, commit := range gui.State.Commits[0:gui.State.Panels.Commits.SelectedLine] { for index, commit := range gui.State.Commits[0:gui.State.Panels.Commits.SelectedLineIdx] {
if commitShaMap[commit.Sha] { if commitShaMap[commit.Sha] {
startIndex = index startIndex = index
} }
@ -472,7 +472,7 @@ func (gui *Gui) handleCopyCommitRange(g *gocui.Gui, v *gocui.View) error {
gui.Log.Info("commit copy start index: " + strconv.Itoa(startIndex)) gui.Log.Info("commit copy start index: " + strconv.Itoa(startIndex))
for index := startIndex; index <= gui.State.Panels.Commits.SelectedLine; index++ { for index := startIndex; index <= gui.State.Panels.Commits.SelectedLineIdx; index++ {
gui.addCommitToCherryPickedCommits(index) gui.addCommitToCherryPickedCommits(index)
} }
@ -687,8 +687,8 @@ func (gui *Gui) handleNewBranchOffCommit() error {
if err := gui.GitCommand.NewBranch(response, commit.Sha); err != nil { if err := gui.GitCommand.NewBranch(response, commit.Sha); err != nil {
return err return err
} }
gui.State.Panels.Commits.SelectedLine = 0 gui.State.Panels.Commits.SelectedLineIdx = 0
gui.State.Panels.Branches.SelectedLine = 0 gui.State.Panels.Branches.SelectedLineIdx = 0
return gui.refreshSidePanels(refreshOptions{mode: ASYNC}) return gui.refreshSidePanels(refreshOptions{mode: ASYNC})
}) })

View File

@ -19,7 +19,7 @@ import (
// list panel functions // list panel functions
func (gui *Gui) getSelectedFile() *commands.File { func (gui *Gui) getSelectedFile() *commands.File {
selectedLine := gui.State.Panels.Files.SelectedLine selectedLine := gui.State.Panels.Files.SelectedLineIdx
if selectedLine == -1 { if selectedLine == -1 {
return nil return nil
} }
@ -28,7 +28,7 @@ func (gui *Gui) getSelectedFile() *commands.File {
} }
func (gui *Gui) selectFile(alreadySelected bool) error { func (gui *Gui) selectFile(alreadySelected bool) error {
gui.getFilesView().FocusPoint(0, gui.State.Panels.Files.SelectedLine) gui.getFilesView().FocusPoint(0, gui.State.Panels.Files.SelectedLineIdx)
file := gui.getSelectedFile() file := gui.getSelectedFile()
if file == nil { if file == nil {
@ -415,7 +415,7 @@ func (gui *Gui) refreshStateFiles() error {
// let's try to find our file again and move the cursor to that // let's try to find our file again and move the cursor to that
for idx, f := range gui.State.Files { for idx, f := range gui.State.Files {
if selectedFile != nil && f.Matches(selectedFile) { if selectedFile != nil && f.Matches(selectedFile) {
gui.State.Panels.Files.SelectedLine = idx gui.State.Panels.Files.SelectedLineIdx = idx
break break
} }
} }

View File

@ -102,15 +102,15 @@ type Gui struct {
} }
type listPanelState struct { type listPanelState struct {
SelectedLine int SelectedLineIdx int
} }
func (h *listPanelState) SetSelectedLineIdx(value int) { func (h *listPanelState) SetSelectedLineIdx(value int) {
h.SelectedLine = value h.SelectedLineIdx = value
} }
func (h *listPanelState) GetSelectedLineIdx() int { func (h *listPanelState) GetSelectedLineIdx() int {
return h.SelectedLine return h.SelectedLineIdx
} }
type IListPanelState interface { type IListPanelState interface {
@ -284,16 +284,16 @@ func (gui *Gui) resetState() {
CherryPickedCommits: make([]*commands.Commit, 0), CherryPickedCommits: make([]*commands.Commit, 0),
StashEntries: make([]*commands.StashEntry, 0), StashEntries: make([]*commands.StashEntry, 0),
Panels: &panelStates{ Panels: &panelStates{
Files: &filePanelState{listPanelState{SelectedLine: -1}}, Files: &filePanelState{listPanelState{SelectedLineIdx: -1}},
Branches: &branchPanelState{listPanelState{SelectedLine: 0}}, Branches: &branchPanelState{listPanelState{SelectedLineIdx: 0}},
Remotes: &remotePanelState{listPanelState{SelectedLine: 0}}, Remotes: &remotePanelState{listPanelState{SelectedLineIdx: 0}},
RemoteBranches: &remoteBranchesState{listPanelState{SelectedLine: -1}}, RemoteBranches: &remoteBranchesState{listPanelState{SelectedLineIdx: -1}},
Tags: &tagsPanelState{listPanelState{SelectedLine: -1}}, Tags: &tagsPanelState{listPanelState{SelectedLineIdx: -1}},
Commits: &commitPanelState{listPanelState: listPanelState{SelectedLine: -1}, LimitCommits: true}, Commits: &commitPanelState{listPanelState: listPanelState{SelectedLineIdx: -1}, LimitCommits: true},
ReflogCommits: &reflogCommitPanelState{listPanelState{SelectedLine: 0}}, // TODO: might need to make -1 ReflogCommits: &reflogCommitPanelState{listPanelState{SelectedLineIdx: 0}}, // TODO: might need to make -1
CommitFiles: &commitFilesPanelState{listPanelState{SelectedLine: -1}}, CommitFiles: &commitFilesPanelState{listPanelState{SelectedLineIdx: -1}},
Stash: &stashPanelState{listPanelState{SelectedLine: -1}}, Stash: &stashPanelState{listPanelState{SelectedLineIdx: -1}},
Menu: &menuPanelState{listPanelState: listPanelState{SelectedLine: 0}, OnPress: nil}, Menu: &menuPanelState{listPanelState: listPanelState{SelectedLineIdx: 0}, OnPress: nil},
Merging: &mergingPanelState{ Merging: &mergingPanelState{
ConflictIndex: 0, ConflictIndex: 0,
ConflictTop: true, ConflictTop: true,

View File

@ -225,7 +225,7 @@ func (gui *Gui) handleMouseScrollDown(g *gocui.Gui, v *gocui.View) error {
} }
func (gui *Gui) getSelectedCommitFileName() string { func (gui *Gui) getSelectedCommitFileName() string {
return gui.State.CommitFiles[gui.State.Panels.CommitFiles.SelectedLine].Name return gui.State.CommitFiles[gui.State.Panels.CommitFiles.SelectedLineIdx].Name
} }
func (gui *Gui) refreshMainView() error { func (gui *Gui) refreshMainView() error {

View File

@ -87,7 +87,7 @@ func (gui *Gui) createMenu(title string, items []*menuItem, createMenuOptions cr
return nil return nil
})) }))
fmt.Fprint(menuView, list) fmt.Fprint(menuView, list)
gui.State.Panels.Menu.SelectedLine = 0 gui.State.Panels.Menu.SelectedLineIdx = 0
gui.g.Update(func(g *gocui.Gui) error { gui.g.Update(func(g *gocui.Gui) error {
return gui.switchContext(gui.Contexts.Menu.Context) return gui.switchContext(gui.Contexts.Menu.Context)
@ -96,7 +96,7 @@ func (gui *Gui) createMenu(title string, items []*menuItem, createMenuOptions cr
} }
func (gui *Gui) onMenuPress() error { func (gui *Gui) onMenuPress() error {
selectedLine := gui.State.Panels.Menu.SelectedLine selectedLine := gui.State.Panels.Menu.SelectedLineIdx
if err := gui.State.MenuItems[selectedLine].onPress(); err != nil { if err := gui.State.MenuItems[selectedLine].onPress(); err != nil {
return err return err
} }

View File

@ -110,7 +110,7 @@ func (gui *Gui) handleMovePatchToSelectedCommit() error {
return gui.WithWaitingStatus(gui.Tr.SLocalize("RebasingStatus"), func() error { return gui.WithWaitingStatus(gui.Tr.SLocalize("RebasingStatus"), func() error {
commitIndex := gui.getPatchCommitIndex() commitIndex := gui.getPatchCommitIndex()
err := gui.GitCommand.MovePatchToSelectedCommit(gui.State.Commits, commitIndex, gui.State.Panels.Commits.SelectedLine, gui.GitCommand.PatchManager) err := gui.GitCommand.MovePatchToSelectedCommit(gui.State.Commits, commitIndex, gui.State.Panels.Commits.SelectedLineIdx, gui.GitCommand.PatchManager)
return gui.handleGenericMergeCommandResult(err) return gui.handleGenericMergeCommandResult(err)
}) })
} }

View File

@ -8,7 +8,7 @@ import (
// list panel functions // list panel functions
func (gui *Gui) getSelectedReflogCommit() *commands.Commit { func (gui *Gui) getSelectedReflogCommit() *commands.Commit {
selectedLine := gui.State.Panels.ReflogCommits.SelectedLine selectedLine := gui.State.Panels.ReflogCommits.SelectedLineIdx
reflogComits := gui.State.FilteredReflogCommits reflogComits := gui.State.FilteredReflogCommits
if selectedLine == -1 || len(reflogComits) == 0 { if selectedLine == -1 || len(reflogComits) == 0 {
return nil return nil
@ -102,7 +102,7 @@ func (gui *Gui) handleCheckoutReflogCommit(g *gocui.Gui, v *gocui.View) error {
return err return err
} }
gui.State.Panels.ReflogCommits.SelectedLine = 0 gui.State.Panels.ReflogCommits.SelectedLineIdx = 0
return nil return nil
} }

View File

@ -10,7 +10,7 @@ import (
// list panel functions // list panel functions
func (gui *Gui) getSelectedRemoteBranch() *commands.RemoteBranch { func (gui *Gui) getSelectedRemoteBranch() *commands.RemoteBranch {
selectedLine := gui.State.Panels.RemoteBranches.SelectedLine selectedLine := gui.State.Panels.RemoteBranches.SelectedLineIdx
if selectedLine == -1 || len(gui.State.RemoteBranches) == 0 { if selectedLine == -1 || len(gui.State.RemoteBranches) == 0 {
return nil return nil
} }
@ -138,7 +138,7 @@ func (gui *Gui) handleNewBranchOffRemote(g *gocui.Gui, v *gocui.View) error {
if err := gui.GitCommand.NewBranch(response, branch.FullName()); err != nil { if err := gui.GitCommand.NewBranch(response, branch.FullName()); err != nil {
return gui.surfaceError(err) return gui.surfaceError(err)
} }
gui.State.Panels.Branches.SelectedLine = 0 gui.State.Panels.Branches.SelectedLineIdx = 0
if err := gui.switchContext(gui.Contexts.Branches.Context); err != nil { if err := gui.switchContext(gui.Contexts.Branches.Context); err != nil {
return err return err

View File

@ -13,7 +13,7 @@ import (
// list panel functions // list panel functions
func (gui *Gui) getSelectedRemote() *commands.Remote { func (gui *Gui) getSelectedRemote() *commands.Remote {
selectedLine := gui.State.Panels.Remotes.SelectedLine selectedLine := gui.State.Panels.Remotes.SelectedLineIdx
if selectedLine == -1 || len(gui.State.Remotes) == 0 { if selectedLine == -1 || len(gui.State.Remotes) == 0 {
return nil return nil
} }
@ -74,7 +74,7 @@ func (gui *Gui) handleRemoteEnter() error {
if len(remote.Branches) == 0 { if len(remote.Branches) == 0 {
newSelectedLine = -1 newSelectedLine = -1
} }
gui.State.Panels.RemoteBranches.SelectedLine = newSelectedLine gui.State.Panels.RemoteBranches.SelectedLineIdx = newSelectedLine
return gui.switchContext(gui.Contexts.Remotes.Branches.Context) return gui.switchContext(gui.Contexts.Remotes.Branches.Context)
} }

View File

@ -12,8 +12,8 @@ func (gui *Gui) resetToRef(ref string, strength string, options commands.RunComm
return gui.surfaceError(err) return gui.surfaceError(err)
} }
gui.State.Panels.Commits.SelectedLine = 0 gui.State.Panels.Commits.SelectedLineIdx = 0
gui.State.Panels.ReflogCommits.SelectedLine = 0 gui.State.Panels.ReflogCommits.SelectedLineIdx = 0
// loading a heap of commits is slow so we limit them whenever doing a reset // loading a heap of commits is slow so we limit them whenever doing a reset
gui.State.Panels.Commits.LimitCommits = true gui.State.Panels.Commits.LimitCommits = true

View File

@ -8,7 +8,7 @@ import (
// list panel functions // list panel functions
func (gui *Gui) getSelectedStashEntry() *commands.StashEntry { func (gui *Gui) getSelectedStashEntry() *commands.StashEntry {
selectedLine := gui.State.Panels.Stash.SelectedLine selectedLine := gui.State.Panels.Stash.SelectedLineIdx
if selectedLine == -1 { if selectedLine == -1 {
return nil return nil
} }

View File

@ -8,7 +8,7 @@ import (
// list panel functions // list panel functions
func (gui *Gui) getSelectedTag() *commands.Tag { func (gui *Gui) getSelectedTag() *commands.Tag {
selectedLine := gui.State.Panels.Tags.SelectedLine selectedLine := gui.State.Panels.Tags.SelectedLineIdx
if selectedLine == -1 || len(gui.State.Tags) == 0 { if selectedLine == -1 || len(gui.State.Tags) == 0 {
return nil return nil
} }
@ -116,7 +116,7 @@ func (gui *Gui) handleCreateTag(g *gocui.Gui, v *gocui.View) error {
// find the index of the tag and set that as the currently selected line // find the index of the tag and set that as the currently selected line
for i, tag := range gui.State.Tags { for i, tag := range gui.State.Tags {
if tag.Name == tagName { if tag.Name == tagName {
gui.State.Panels.Tags.SelectedLine = i gui.State.Panels.Tags.SelectedLineIdx = i
if err := gui.Contexts.Tags.Context.HandleRender(); err != nil { if err := gui.Contexts.Tags.Context.HandleRender(); err != nil {
gui.Log.Error(err) gui.Log.Error(err)
} }