From 19ec80bd416c570a70f2fa7fa7e84a2667d71a08 Mon Sep 17 00:00:00 2001 From: Jim Warner Date: Thu, 7 Jun 2018 00:00:00 -0500 Subject: [PATCH] top: force return to row 1 for thread mode transitions This program does a good job of policing that vertical scrolled position, ensuring that total tasks are never exceeded. However, during transitions from thread mode to normal task mode (the 'H' toggle) that wasn't true. And while there was no real harm done, it did make the use of up/down arrow keys "appear" disabled especially if that scroll message was not displayed ('C' toggle). This patch simply forces a return to row #1 whenever a user toggles that display between thread & task modes. Signed-off-by: Jim Warner --- top/top.c | 1 + 1 file changed, 1 insertion(+) diff --git a/top/top.c b/top/top.c index ef2402b1..ed0e4788 100644 --- a/top/top.c +++ b/top/top.c @@ -4349,6 +4349,7 @@ static void keys_global (int ch) { if (!CHKw(w, View_STATES)) show_msg(fmtmk(N_fmt(THREADS_show_fmt) , Thread_mode ? N_txt(ON_word_only_txt) : N_txt(OFF_one_word_txt))); + Winstk[0].begtask = Winstk[1].begtask = Winstk[2].begtask = Winstk[3].begtask = 0; // force an extra procs refresh to avoid %cpu distortions... Pseudo_row = PROC_XTRA; break;