From 84e398e20bb6d81ef23d14ee58b28a680d228501 Mon Sep 17 00:00:00 2001 From: Julian Hurst Date: Mon, 20 Jun 2022 19:26:19 +0200 Subject: Use layout::print in main UI loop --- handlers.ha | 11 ----------- main.ha | 22 +++++++++------------- 2 files changed, 9 insertions(+), 24 deletions(-) diff --git a/handlers.ha b/handlers.ha index c50e454..2e7609f 100644 --- a/handlers.ha +++ b/handlers.ha @@ -194,16 +194,5 @@ fn runehandler(l: *widget::widget, r: libtui::key) bool = { fmt::fprintln(os::stderr, "newline")!; }; }; - libtui::clear(l.widget.ui); - match (list::print(l)) { - case void => - yield; - case let e: io::error => - fmt::fprintln(os::stderr, io::strerror(e))!; - return true; - case let e: tty::error => - fmt::fprintln(os::stderr, tty::strerror(e))!; - return true; - }; return false; }; diff --git a/main.ha b/main.ha index fa1850b..3ef6b3c 100644 --- a/main.ha +++ b/main.ha @@ -58,8 +58,6 @@ fn resize(list: *list::listwidget) void = { list.sz.rows = rows: u16; list.sz.cols = sz.columns; list::resize(list, oldsz); - libtui::clear(list.widget.ui); - list::print(list)!; }; export fn main() void = { @@ -86,17 +84,7 @@ export fn main() void = { defer layout::finishall(&layout); //defer free(searchterm); - libtui::clear(l.widget.ui); - - match (layout::print(layout)) { - case void => - yield; - case let e: io::error => - fmt::fatal(io::strerror(e)); - case let e: tty::error => - fmt::fatal(tty::strerror(e)); - }; - + //libtui::clear(l.widget.ui); signal::block(signal::SIGWINCH); let sfd = match (signal::signalfd(signal::SIGWINCH)) { @@ -118,6 +106,14 @@ export fn main() void = { }]; for (true) { + match (layout::print(layout)) { + case void => + yield; + case let e: io::error => + fmt::fatal(io::strerror(e)); + case let e: tty::error => + fmt::fatal(tty::strerror(e)); + }; let nb = match (poll::poll(pollfds, poll::INDEF)) { case let nb: uint => yield nb; -- cgit v1.2.3