]> granicus.if.org Git - procps-ng/commitdiff
top: force return to row 1 for thread mode transitions
authorJim Warner <james.warner@comcast.net>
Wed, 6 Jun 2018 05:00:00 +0000 (00:00 -0500)
committerCraig Small <csmall@enc.com.au>
Wed, 13 Jun 2018 12:11:28 +0000 (22:11 +1000)
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 <james.warner@comcast.net>
top/top.c

index 174379b4d656a05463ca71495908447eab662d65..76ae0deed61e085d260ec002ea7c6d168e578cb9 100644 (file)
--- a/top/top.c
+++ b/top/top.c
@@ -4802,6 +4802,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;