summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Duffield <jessedduffield@gmail.com>2020-01-12 13:39:48 +1100
committerJesse Duffield <jessedduffield@gmail.com>2020-01-12 13:55:14 +1100
commit83a895a46316a0e29d7ee7adabe76719cc773d63 (patch)
tree68cb6799405e46cd79021268c3745830bc9c87f2
parent59ae1e159970e8adcfb4a228a93d621418b60483 (diff)
reset origin when clicking on list item
-rw-r--r--pkg/gui/list_view.go10
1 files changed, 9 insertions, 1 deletions
diff --git a/pkg/gui/list_view.go b/pkg/gui/list_view.go
index 1c982cfa1..90ea7b8b0 100644
--- a/pkg/gui/list_view.go
+++ b/pkg/gui/list_view.go
@@ -34,6 +34,7 @@ func (lv *listView) handleLineChange(change int) error {
return err
}
}
+
view, err := lv.gui.g.View(lv.viewName)
if err != nil {
return err
@@ -56,7 +57,14 @@ func (lv *listView) handleClick(g *gocui.Gui, v *gocui.View) error {
*selectedLineIdxPtr = newSelectedLineIdx
- if prevSelectedLineIdx == newSelectedLineIdx && lv.gui.currentViewName() == lv.viewName && lv.handleClickSelectedItem != nil {
+ if lv.rendersToMainView {
+ if err := lv.gui.resetOrigin(lv.gui.getMainView()); err != nil {
+ return err
+ }
+ }
+
+ prevViewName := lv.gui.currentViewName()
+ if prevSelectedLineIdx == newSelectedLineIdx && prevViewName == lv.viewName && lv.handleClickSelectedItem != nil {
return lv.handleClickSelectedItem(lv.gui.g, v)
}
return lv.handleItemSelect(lv.gui.g, v)