From 6858d11a5b5fe08bc6fef19ed861cf56e63591e7 Mon Sep 17 00:00:00 2001 From: Anders Betts Date: Fri, 18 Sep 2026 13:36:41 +0200 Subject: bokftui: Ctrl+R actually reloads (dashboard ignored the flag) ui_getch mapped Ctrl+R to Esc, but the dashboard treats Esc as a no-op and looped, so do_reload was never reached; from sub-screens the key merely bounced back to the dashboard. Dashboard and the early screens now honour the flag. Verified by observing the re-exec and session reuse in ~/.cache/bokf/tui.log. --- clients/bokftui.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/clients/bokftui.c b/clients/bokftui.c index 50e5c3f..10824bf 100644 --- a/clients/bokftui.c +++ b/clients/bokftui.c @@ -4030,9 +4030,11 @@ static const char *const MAIN_ITEMS[] = { static void dashboard(struct app *a) { for (;;) { + if (g_reload) + return; int sel = menu("Bokf", MAIN_ITEMS, 10, 1); snprintf(g_scene, sizeof g_scene, "%s", "dashboard"); - if (g_quit) + if (g_quit || g_reload) return; if (sel == -4) { vouchers_new(a); @@ -4567,6 +4569,8 @@ int main(int argc, char **argv) } free(auto_err); if (!app.session[0] && login_screen(&app) != 0) { + if (g_reload) + do_reload(&app, self); endwin(); return 0; } @@ -4574,6 +4578,8 @@ int main(int argc, char **argv) if (want_org > 0) { app.org = want_org; } else if (select_org(&app) != 0) { + if (g_reload) + do_reload(&app, self); endwin(); return 0; } -- cgit v1.3