diff options
author | Jesse Duffield <jessedduffield@gmail.com> | 2019-02-16 12:07:27 +1100 |
---|---|---|
committer | Jesse Duffield <jessedduffield@gmail.com> | 2019-02-16 12:07:27 +1100 |
commit | 198cbee498e9201b1f12514f909eb3da98db5ec7 (patch) | |
tree | a315ad46dd3b170ce3e9c3a826853affe97d5d93 /pkg/gui/files_panel.go | |
parent | daca07eacac8bc5cb7bcf65a762ed5093f2b8a82 (diff) |
introduce panel contexts and more work on rebasing
Diffstat (limited to 'pkg/gui/files_panel.go')
-rw-r--r-- | pkg/gui/files_panel.go | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/pkg/gui/files_panel.go b/pkg/gui/files_panel.go index a27fb7dc3..57217249a 100644 --- a/pkg/gui/files_panel.go +++ b/pkg/gui/files_panel.go @@ -40,11 +40,12 @@ func (gui *Gui) handleFileSelect(g *gocui.Gui, v *gocui.View, alreadySelected bo } if file.HasMergeConflicts { - return gui.refreshMergePanel(g) + return gui.refreshMergePanel() } else { - if _, err := gui.g.SetViewOnBottom("merging"); err != nil { - return err - } + // TODO: set title appropriately + // if _, err := gui.g.SetViewOnBottom("merging"); err != nil { + // return err + // } } content := gui.GitCommand.Diff(file, false) @@ -143,8 +144,10 @@ func (gui *Gui) handleEnterFile(g *gocui.Gui, v *gocui.View) error { if !file.HasUnstagedChanges { return gui.createErrorPanel(g, gui.Tr.SLocalize("FileStagingRequirements")) } - stagingView := gui.getStagingView() - if err := gui.switchFocus(g, v, stagingView); err != nil { + if err := gui.changeContext("main", "staging"); err != nil { + return err + } + if err := gui.switchFocus(g, v, gui.getMainView()); err != nil { return err } return gui.refreshStagingPanel() @@ -434,7 +437,13 @@ func (gui *Gui) handleSwitchToMerge(g *gocui.Gui, v *gocui.View) error { if !file.HasMergeConflicts { return gui.createErrorPanel(g, gui.Tr.SLocalize("FileNoMergeCons")) } - return gui.switchFocus(g, v, gui.getMergingView()) + if err := gui.changeContext("main", "merging"); err != nil { + return err + } + if err := gui.switchFocus(g, v, gui.getMainView()); err != nil { + return err + } + return gui.refreshMergePanel() } func (gui *Gui) handleAbortMerge(g *gocui.Gui, v *gocui.View) error { |