From 1337f6e76ad5a9293b2d32fd29cbe91e750814c6 Mon Sep 17 00:00:00 2001 From: Jesse Duffield Date: Sat, 2 Mar 2019 13:22:02 +1100 Subject: [PATCH] appease golangci --- pkg/app/app.go | 5 ++++- pkg/commands/os.go | 2 +- pkg/gui/branches_panel.go | 7 +++++++ pkg/gui/context.go | 3 +-- pkg/gui/files_panel.go | 17 +++++++++-------- pkg/gui/gui.go | 11 ++++++++++- 6 files changed, 32 insertions(+), 13 deletions(-) diff --git a/pkg/app/app.go b/pkg/app/app.go index d85d007e5..23bd661cf 100644 --- a/pkg/app/app.go +++ b/pkg/app/app.go @@ -128,7 +128,10 @@ func (app *App) Rebase() error { app.Log.Info("args: ", os.Args) if strings.HasSuffix(os.Args[1], "git-rebase-todo") { - ioutil.WriteFile(os.Args[1], []byte(os.Getenv("LAZYGIT_REBASE_TODO")), 0644) + if err := ioutil.WriteFile(os.Args[1], []byte(os.Getenv("LAZYGIT_REBASE_TODO")), 0644); err != nil { + return err + } + } else if strings.HasSuffix(os.Args[1], ".git/COMMIT_EDITMSG") { // if we are rebasing and squashing, we'll see a COMMIT_EDITMSG // but in this case we don't need to edit it, so we'll just return diff --git a/pkg/commands/os.go b/pkg/commands/os.go index 44202e003..c55a7653e 100644 --- a/pkg/commands/os.go +++ b/pkg/commands/os.go @@ -215,7 +215,7 @@ func (c *OSCommand) AppendLineToFile(filename, line string) error { _, err = f.WriteString("\n" + line) if err != nil { - errors.Wrap(err, 0) + return errors.Wrap(err, 0) } return nil } diff --git a/pkg/gui/branches_panel.go b/pkg/gui/branches_panel.go index bd6db352c..fdc35862f 100644 --- a/pkg/gui/branches_panel.go +++ b/pkg/gui/branches_panel.go @@ -22,6 +22,13 @@ func (gui *Gui) getSelectedBranch() *commands.Branch { // may want to standardise how these select methods work func (gui *Gui) handleBranchSelect(g *gocui.Gui, v *gocui.View) error { + if gui.popupPanelFocused() { + return nil + } + + if _, err := gui.g.SetCurrentView(v.Name()); err != nil { + return err + } // This really shouldn't happen: there should always be a master branch if len(gui.State.Branches) == 0 { return gui.renderString(g, "main", gui.Tr.SLocalize("NoBranchesThisRepo")) diff --git a/pkg/gui/context.go b/pkg/gui/context.go index d24a61fd4..d349286cf 100644 --- a/pkg/gui/context.go +++ b/pkg/gui/context.go @@ -49,8 +49,7 @@ func (gui *Gui) changeContext(viewName, context string) error { } } gui.State.Contexts[viewName] = context - gui.setMainTitle() - return nil + return gui.setMainTitle() } func (gui *Gui) setInitialContexts() error { diff --git a/pkg/gui/files_panel.go b/pkg/gui/files_panel.go index 1f57e91e8..4ed8ddb10 100644 --- a/pkg/gui/files_panel.go +++ b/pkg/gui/files_panel.go @@ -27,6 +27,10 @@ func (gui *Gui) getSelectedFile(g *gocui.Gui) (*commands.File, error) { } func (gui *Gui) handleFileSelect(g *gocui.Gui, v *gocui.View, alreadySelected bool) error { + if _, err := gui.g.SetCurrentView(v.Name()); err != nil { + return err + } + file, err := gui.getSelectedFile(g) if err != nil { if err != gui.Errors.ErrNoFiles { @@ -41,11 +45,6 @@ func (gui *Gui) handleFileSelect(g *gocui.Gui, v *gocui.View, alreadySelected bo if file.HasMergeConflicts { return gui.refreshMergePanel() - } else { - // TODO: set title appropriately - // if _, err := gui.g.SetViewOnBottom("merging"); err != nil { - // return err - // } } content := gui.GitCommand.Diff(file, false) @@ -62,7 +61,9 @@ func (gui *Gui) refreshFiles() error { selectedFile, _ := gui.getSelectedFile(gui.g) filesView := gui.getFilesView() - gui.refreshStateFiles() + if err := gui.refreshStateFiles(); err != nil { + return err + } gui.g.Update(func(g *gocui.Gui) error { @@ -346,12 +347,12 @@ func (gui *Gui) handleRefreshFiles(g *gocui.Gui, v *gocui.View) error { return gui.refreshFiles() } -func (gui *Gui) refreshStateFiles() { +func (gui *Gui) refreshStateFiles() error { // get files to stage files := gui.GitCommand.GetStatusFiles() gui.State.Files = gui.GitCommand.MergeStatusFiles(gui.State.Files, files) gui.refreshSelectedLine(&gui.State.Panels.Files.SelectedLine, len(gui.State.Files)) - gui.updateWorkTreeState() + return gui.updateWorkTreeState() } func (gui *Gui) catSelectedFile(g *gocui.Gui) (string, error) { diff --git a/pkg/gui/gui.go b/pkg/gui/gui.go index 69018814e..b4a55cc45 100644 --- a/pkg/gui/gui.go +++ b/pkg/gui/gui.go @@ -248,6 +248,15 @@ func (gui *Gui) onFocusLost(v *gocui.View) error { if err := gui.renderListPanel(gui.getBranchesView(), gui.State.Branches); err != nil { return err } + } else if v.Name() == "main" { + // if we have lost focus to a popup panel, that's okay + if gui.popupPanelFocused() { + return nil + } + + if err := gui.changeContext("main", "normal"); err != nil { + return err + } } gui.Log.Info(v.Name() + " focus lost") return nil @@ -521,7 +530,7 @@ func (gui *Gui) renderGlobalOptions() error { func (gui *Gui) goEvery(interval time.Duration, function func() error) { go func() { for range time.Tick(interval) { - function() + _ = function() } }() }