aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Hurst <ark@mansus.space>2022-09-11 01:47:47 +0200
committerJulian Hurst <ark@mansus.space>2023-09-07 00:09:06 +0200
commitf98e057376e779057f5dd5901b1c08d87f49d71c (patch)
treedc36f23053991579b39fa2324c9ba433b1e50af7
parent61140803107400f4217af4dc1713aebf8def7465 (diff)
downloadhare-libtui-f98e057376e779057f5dd5901b1c08d87f49d71c.tar.gz
list: Fix bottom moving frame when items are smaller than tty rows
This only sets rows to tty rows - 1 if len(list.items) is bigger otherwise we set rows to len(list.items)
-rw-r--r--libtui/widget/list/list.ha12
1 files changed, 6 insertions, 6 deletions
diff --git a/libtui/widget/list/list.ha b/libtui/widget/list/list.ha
index dd98210..a897bb8 100644
--- a/libtui/widget/list/list.ha
+++ b/libtui/widget/list/list.ha
@@ -46,12 +46,12 @@ export type listener = *fn(l: *listwidget, r: (rune | libtui::specialkey)) bool;
// using [[strings::dupall]]], so the original items can be freed.
export fn newlist(ui: libtui::ttyui, items: str...) listwidget = {
let sz = libtui::getwinsize(ui)!;
- let rows = sz.rows - 1;
- //let rows: (u16 | size) = if (sz.rows - 2 < len(items)) {
- //yield sz.rows - 2;
- //} else {
- //yield len(items);
- //};
+ //let rows = sz.rows - 1;
+ let rows: (u16 | size) = if (sz.rows - 1 < len(items)) {
+ yield sz.rows - 1;
+ } else {
+ yield len(items);
+ };
let w = listwidget {
widget = widget::widget {
print = &print,