summaryrefslogtreecommitdiffstats
path: root/pkg/gui/files_panel.go
diff options
context:
space:
mode:
authorJesse Duffield Duffield <jesseduffieldduffield@Jesses-MacBook-Pro-3.local>2019-02-24 09:42:24 +1100
committerJesse Duffield Duffield <jesseduffieldduffield@Jesses-MacBook-Pro-3.local>2019-02-24 10:58:15 +1100
commit95d451e59a419933f6e5f90305ffc6fe8dbc448f (patch)
tree25aba410c18655c6e59d80da4aef612c43193f7b /pkg/gui/files_panel.go
parent6c1d2d45ef2d001e28ec31095826422ba7461664 (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.go22
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 {