aboutsummaryrefslogtreecommitdiffstats
path: root/i_events.go
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--i_events.go9
1 files changed, 7 insertions, 2 deletions
diff --git a/i_events.go b/i_events.go
index bdc4afe..1043bc5 100644
--- a/i_events.go
+++ b/i_events.go
@@ -63,12 +63,17 @@ func i_list_follow_cursor(litems *ItemsList, ui *HardUI) {
return
}
// HACK: find workaround to kill ids
- virt_id := litems.curr.ID - (ui.dim[H] - 4) + 4
+ scrolloff := 4
+ if litems.last.ID - (ui.dim[H] - 4) <= litems.draw.ID {
+ scrolloff = 0
+ }
+ virt_id := litems.curr.ID - (ui.dim[H] - 4) + scrolloff
for litems.draw.ID < virt_id &&
litems.draw.next != nil {
litems.draw = litems.draw.next
}
- for litems.draw.ID > litems.curr.ID - 4 &&
+ scrolloff = 4
+ for litems.draw.ID > litems.curr.ID - scrolloff &&
litems.draw.prev != nil {
litems.draw = litems.draw.prev
}