perf report tui: Fix multi event switching
authorArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 3 Mar 2011 19:43:03 +0000 (16:43 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Sun, 6 Mar 2011 01:31:04 +0000 (22:31 -0300)
TAB/UNTAB were not hotkeys, so didn't exit hists__browse back to
hists__tui_browse_tree, allowing just the first event to be browsed.

Reported-by: William Cohen <wcohen@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Tom Zanussi <tzanussi@gmail.com>
Cc: William Cohen <wcohen@redhat.com>
LKML-Reference: <new-submission>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/ui/browsers/hists.c

index 497b3c4..c27ab35 100644 (file)
@@ -292,7 +292,8 @@ static int hist_browser__run(struct hist_browser *self, const char *title)
 {
        int key;
        int exit_keys[] = { 'a', '?', 'h', 'C', 'd', 'D', 'E', 't',
-                           NEWT_KEY_ENTER, NEWT_KEY_RIGHT, NEWT_KEY_LEFT, 0, };
+                           NEWT_KEY_ENTER, NEWT_KEY_RIGHT, NEWT_KEY_LEFT,
+                           NEWT_KEY_TAB, NEWT_KEY_UNTAB, 0, };
 
        self->b.entries = &self->hists->entries;
        self->b.nr_entries = self->hists->nr_entries;
@@ -859,6 +860,7 @@ int hists__browse(struct hists *self, const char *helpline,
                                        "E         Expand all callchains\n"
                                        "d         Zoom into current DSO\n"
                                        "t         Zoom into current Thread\n"
+                                       "TAB/UNTAB Switch events\n"
                                        "q/CTRL+C  Exit browser");
                        continue;
                case NEWT_KEY_ENTER:
@@ -997,6 +999,7 @@ int hists__tui_browse_tree(struct rb_root *self, const char *help, int evidx)
                        if (nd == first)
                                continue;
                        nd = rb_prev(nd);
+                       break;
                default:
                        return key;
                }