diff options
author | Jesse Duffield Duffield <jesseduffieldduffield@Jesses-MacBook-Pro-3.local> | 2019-02-24 09:42:24 +1100 |
---|---|---|
committer | Jesse Duffield Duffield <jesseduffieldduffield@Jesses-MacBook-Pro-3.local> | 2019-02-24 10:58:15 +1100 |
commit | 95d451e59a419933f6e5f90305ffc6fe8dbc448f (patch) | |
tree | 25aba410c18655c6e59d80da4aef612c43193f7b /pkg/gui/files_panel.go | |
parent | 6c1d2d45ef2d001e28ec31095826422ba7461664 (diff) |
Make it easier to run sync/async commands, switch to interactive rebase when rebasing on branches
Diffstat (limited to 'pkg/gui/files_panel.go')
-rw-r--r-- | pkg/gui/files_panel.go | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/pkg/gui/files_panel.go b/pkg/gui/files_panel.go index c6f5cd7d5..1f57e91e8 100644 --- a/pkg/gui/files_panel.go +++ b/pkg/gui/files_panel.go @@ -287,18 +287,16 @@ func (gui *Gui) handleAmendCommitPress(g *gocui.Gui, filesView *gocui.View) erro if len(gui.stagedFiles()) == 0 && gui.State.WorkingTreeState == "normal" { return gui.createErrorPanel(g, gui.Tr.SLocalize("NoStagedFilesToCommit")) } - title := strings.Title(gui.Tr.SLocalize("AmendLastCommit")) - question := gui.Tr.SLocalize("SureToAmend") - if len(gui.State.Commits) == 0 { return gui.createErrorPanel(g, gui.Tr.SLocalize("NoCommitToAmend")) } + title := strings.Title(gui.Tr.SLocalize("AmendLastCommit")) + question := gui.Tr.SLocalize("SureToAmend") + return gui.createConfirmationPanel(g, filesView, title, question, func(g *gocui.Gui, v *gocui.View) error { - lastCommitMsg := gui.State.Commits[0].Name - _, err := gui.GitCommand.Commit(lastCommitMsg, true) - if err != nil { - return gui.createErrorPanel(g, err.Error()) + if err := gui.runSyncOrAsyncCommand(gui.GitCommand.AmendHead()); err != nil { + return err } return gui.refreshSidePanels(g) @@ -324,15 +322,7 @@ func (gui *Gui) PrepareSubProcess(g *gocui.Gui, commands ...string) { } func (gui *Gui) editFile(filename string) error { - sub, err := gui.OSCommand.EditFile(filename) - if err != nil { - return gui.createErrorPanel(gui.g, err.Error()) - } - if sub != nil { - gui.SubProcess = sub - return gui.Errors.ErrSubProcess - } - return nil + return gui.runSyncOrAsyncCommand(gui.OSCommand.EditFile(filename)) } func (gui *Gui) handleFileEdit(g *gocui.Gui, v *gocui.View) error { |