mirror of
https://github.com/jesseduffield/lazygit.git
synced 2024-12-04 10:34:55 +02:00
minor refactor
This commit is contained in:
parent
ed85ea69bd
commit
0dd2c869a8
@ -36,7 +36,7 @@ func (gui *Gui) handleBranchSelect() error {
|
||||
task = gui.createRunPtyTask(cmd)
|
||||
}
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "Log",
|
||||
task: task,
|
||||
|
@ -32,7 +32,7 @@ func (gui *Gui) handleCommitFileSelect() error {
|
||||
)
|
||||
task := gui.createRunPtyTask(cmd)
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "Patch",
|
||||
task: task,
|
||||
|
@ -42,7 +42,7 @@ func (gui *Gui) handleCommitSelect() error {
|
||||
task = gui.createRunPtyTask(cmd)
|
||||
}
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "Patch",
|
||||
task: task,
|
||||
|
@ -18,7 +18,7 @@ func (gui *Gui) renderDiff() error {
|
||||
)
|
||||
task := gui.createRunPtyTask(cmd)
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "Diff",
|
||||
task: task,
|
||||
|
@ -32,7 +32,7 @@ func (gui *Gui) selectFile(alreadySelected bool) error {
|
||||
|
||||
file := gui.getSelectedFile()
|
||||
if file == nil {
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "",
|
||||
task: gui.createRenderStringTask(gui.Tr.SLocalize("NoChangedFiles")),
|
||||
@ -74,7 +74,7 @@ func (gui *Gui) selectFile(alreadySelected bool) error {
|
||||
refreshOpts.main.title = gui.Tr.SLocalize("StagedChanges")
|
||||
}
|
||||
|
||||
return gui.refreshMain(refreshOpts)
|
||||
return gui.refreshMainViews(refreshOpts)
|
||||
}
|
||||
|
||||
func (gui *Gui) refreshFiles() error {
|
||||
|
@ -73,7 +73,7 @@ func (gui *Gui) refreshLineByLinePanel(diff string, secondaryDiff string, second
|
||||
SecondaryFocused: secondaryFocused,
|
||||
}
|
||||
|
||||
if err := gui.refreshMainView(); err != nil {
|
||||
if err := gui.refreshMainViewForLineByLine(); err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
@ -129,7 +129,7 @@ func (gui *Gui) selectNewHunk(newHunk *patch.PatchHunk) error {
|
||||
state.FirstLineIdx, state.LastLineIdx = state.SelectedLineIdx, state.SelectedLineIdx
|
||||
}
|
||||
|
||||
if err := gui.refreshMainView(); err != nil {
|
||||
if err := gui.refreshMainViewForLineByLine(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@ -169,7 +169,7 @@ func (gui *Gui) handleSelectNewLine(newSelectedLineIdx int) error {
|
||||
state.FirstLineIdx = state.SelectedLineIdx
|
||||
}
|
||||
|
||||
if err := gui.refreshMainView(); err != nil {
|
||||
if err := gui.refreshMainViewForLineByLine(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@ -228,7 +228,7 @@ func (gui *Gui) getSelectedCommitFileName() string {
|
||||
return gui.State.CommitFiles[gui.State.Panels.CommitFiles.SelectedLineIdx].Name
|
||||
}
|
||||
|
||||
func (gui *Gui) refreshMainView() error {
|
||||
func (gui *Gui) refreshMainViewForLineByLine() error {
|
||||
state := gui.State.Panels.LineByLine
|
||||
|
||||
var includedLineIndices []int
|
||||
@ -306,7 +306,7 @@ func (gui *Gui) handleToggleSelectRange(g *gocui.Gui, v *gocui.View) error {
|
||||
}
|
||||
state.FirstLineIdx, state.LastLineIdx = state.SelectedLineIdx, state.SelectedLineIdx
|
||||
|
||||
return gui.refreshMainView()
|
||||
return gui.refreshMainViewForLineByLine()
|
||||
}
|
||||
|
||||
func (gui *Gui) handleToggleSelectHunk(g *gocui.Gui, v *gocui.View) error {
|
||||
@ -321,7 +321,7 @@ func (gui *Gui) handleToggleSelectHunk(g *gocui.Gui, v *gocui.View) error {
|
||||
state.FirstLineIdx, state.LastLineIdx = selectedHunk.FirstLineIdx, selectedHunk.LastLineIdx()
|
||||
}
|
||||
|
||||
if err := gui.refreshMainView(); err != nil {
|
||||
if err := gui.refreshMainViewForLineByLine(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
|
@ -14,6 +14,11 @@ type viewUpdateOpts struct {
|
||||
task updateTask
|
||||
}
|
||||
|
||||
type coordinates struct {
|
||||
x int
|
||||
y int
|
||||
}
|
||||
|
||||
type refreshMainOpts struct {
|
||||
main *viewUpdateOpts
|
||||
secondary *viewUpdateOpts
|
||||
@ -118,30 +123,37 @@ func (gui *Gui) runTaskForView(viewName string, task updateTask) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (gui *Gui) refreshMain(opts refreshMainOpts) error {
|
||||
mainView := gui.getMainView()
|
||||
secondaryView := gui.getSecondaryView()
|
||||
|
||||
if opts.main != nil {
|
||||
mainView.Title = opts.main.title
|
||||
mainView.Wrap = !opts.main.noWrap
|
||||
mainView.Highlight = opts.main.highlight // TODO: see what the default should be
|
||||
|
||||
if err := gui.runTaskForView("main", opts.main.task); err != nil {
|
||||
func (gui *Gui) refreshMainView(opts *viewUpdateOpts, viewName string) error {
|
||||
view, err := gui.g.View(viewName)
|
||||
if err != nil {
|
||||
gui.Log.Error(err)
|
||||
return nil
|
||||
}
|
||||
|
||||
view.Title = opts.title
|
||||
view.Wrap = !opts.noWrap
|
||||
view.Highlight = opts.highlight
|
||||
|
||||
if err := gui.runTaskForView("main", opts.task); err != nil {
|
||||
gui.Log.Error(err)
|
||||
return nil
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (gui *Gui) refreshMainViews(opts refreshMainOpts) error {
|
||||
if opts.main != nil {
|
||||
if err := gui.refreshMainView(opts.main, "main"); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
gui.splitMainPanel(opts.secondary != nil)
|
||||
|
||||
if opts.secondary != nil {
|
||||
secondaryView.Title = opts.secondary.title
|
||||
secondaryView.Wrap = !opts.secondary.noWrap
|
||||
mainView.Highlight = opts.main.highlight // TODO: see what the default should be
|
||||
if err := gui.runTaskForView("secondary", opts.secondary.task); err != nil {
|
||||
gui.Log.Error(err)
|
||||
return nil
|
||||
if err := gui.refreshMainView(opts.secondary, "secondary"); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -217,7 +217,7 @@ func (gui *Gui) refreshMergePanel() error {
|
||||
panelState := gui.State.Panels.Merging
|
||||
cat, err := gui.catSelectedFile(gui.g)
|
||||
if err != nil {
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "",
|
||||
task: gui.createRenderStringTask(err.Error()),
|
||||
@ -244,7 +244,7 @@ func (gui *Gui) refreshMergePanel() error {
|
||||
return err
|
||||
}
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: gui.Tr.SLocalize("MergeConflictsTitle"),
|
||||
task: gui.createRenderStringWithoutScrollTask(content),
|
||||
|
@ -30,7 +30,7 @@ func (gui *Gui) handleReflogCommitSelect() error {
|
||||
task = gui.createRunPtyTask(cmd)
|
||||
}
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "Reflog Entry",
|
||||
task: task,
|
||||
|
@ -30,7 +30,7 @@ func (gui *Gui) handleRemoteBranchSelect() error {
|
||||
task = gui.createRunCommandTask(cmd)
|
||||
}
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "Remote Branch",
|
||||
task: task,
|
||||
|
@ -30,7 +30,7 @@ func (gui *Gui) handleRemoteSelect() error {
|
||||
task = gui.createRenderStringTask(fmt.Sprintf("%s\nUrls:\n%s", utils.ColoredString(remote.Name, color.FgGreen), strings.Join(remote.Urls, "\n")))
|
||||
}
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "Remote",
|
||||
task: task,
|
||||
|
@ -28,7 +28,7 @@ func (gui *Gui) handleStashEntrySelect() error {
|
||||
task = gui.createRunPtyTask(cmd)
|
||||
}
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "Stash",
|
||||
task: task,
|
||||
|
@ -112,7 +112,7 @@ func (gui *Gui) handleStatusSelect() error {
|
||||
magenta.Sprint("Become a sponsor (github is matching all donations for 12 months): https://github.com/sponsors/jesseduffield"), // caffeine ain't free
|
||||
}, "\n\n")
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "",
|
||||
task: gui.createRenderStringTask(dashboardString),
|
||||
|
@ -30,7 +30,7 @@ func (gui *Gui) handleSubCommitSelect() error {
|
||||
task = gui.createRunPtyTask(cmd)
|
||||
}
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "Commit",
|
||||
task: task,
|
||||
|
@ -28,7 +28,7 @@ func (gui *Gui) handleTagSelect() error {
|
||||
task = gui.createRunCommandTask(cmd)
|
||||
}
|
||||
|
||||
return gui.refreshMain(refreshMainOpts{
|
||||
return gui.refreshMainViews(refreshMainOpts{
|
||||
main: &viewUpdateOpts{
|
||||
title: "Tag",
|
||||
task: task,
|
||||
|
Loading…
Reference in New Issue
Block a user