diff options
author | Jesse Duffield <jessedduffield@gmail.com> | 2020-08-18 22:02:35 +1000 |
---|---|---|
committer | Jesse Duffield <jessedduffield@gmail.com> | 2020-08-23 14:29:18 +1000 |
commit | f5b22d94d939b0fc1aff433686e891e0a7507950 (patch) | |
tree | 9812c4c7f3855d7e3fe973dacf5533ef04463c3d /pkg/gui/commits_panel.go | |
parent | 3c87ff4eff46449d5e697e954b3bdf01d2c76f19 (diff) |
WIP
Diffstat (limited to 'pkg/gui/commits_panel.go')
-rw-r--r-- | pkg/gui/commits_panel.go | 38 |
1 files changed, 18 insertions, 20 deletions
diff --git a/pkg/gui/commits_panel.go b/pkg/gui/commits_panel.go index ed27a8495..7f2df104b 100644 --- a/pkg/gui/commits_panel.go +++ b/pkg/gui/commits_panel.go @@ -26,9 +26,8 @@ func (gui *Gui) handleCommitSelect() error { return nil } - // this probably belongs in an 'onFocus' function than a 'commit selected' function - if err := gui.refreshSecondaryPatchPanel(); err != nil { - return err + if gui.inDiffMode() { + return gui.renderDiff() } state := gui.State.Panels.Commits @@ -41,27 +40,26 @@ func (gui *Gui) handleCommitSelect() error { }() } - gui.getMainView().Title = "Patch" - gui.getSecondaryView().Title = "Custom Patch" gui.handleEscapeLineByLinePanel() + var task updateTask commit := gui.getSelectedCommit() if commit == nil { - return gui.newStringTask("main", gui.Tr.SLocalize("NoCommitsThisBranch")) - } - - if gui.inDiffMode() { - return gui.renderDiff() - } - - cmd := gui.OSCommand.ExecutableFromString( - gui.GitCommand.ShowCmdStr(commit.Sha, gui.State.FilterPath), - ) - if err := gui.newPtyTask("main", cmd); err != nil { - gui.Log.Error(err) - } - - return nil + task = gui.createRenderStringTask(gui.Tr.SLocalize("NoCommitsThisBranch")) + } else { + cmd := gui.OSCommand.ExecutableFromString( + gui.GitCommand.ShowCmdStr(commit.Sha, gui.State.FilterPath), + ) + task = gui.createRunPtyTask(cmd) + } + + return gui.refreshMain(refreshMainOpts{ + main: &viewUpdateOpts{ + title: "Patch", + task: task, + }, + secondary: gui.secondaryPatchPanelUpdateOpts(), + }) } // during startup, the bottleneck is fetching the reflog entries. We need these |