Skip to content

Commit

Permalink
perf newt: Add 'Q', 'q' and Ctrl+C as ways to exit from forms
Browse files Browse the repository at this point in the history
These are keys people expect when pressed to exit the current
widget, so have associate all of them to this semantic.

Suggested-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Frédéric Weisbecker <fweisbec@gmail.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
LKML-Reference: <1268401692-9361-1-git-send-email-acme@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Arnaldo Carvalho de Melo authored and Ingo Molnar committed Mar 12, 2010
1 parent f9224c5 commit 7081e08
Showing 1 changed file with 19 additions and 4 deletions.
23 changes: 19 additions & 4 deletions tools/perf/util/newt.c
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,30 @@

#include <stdlib.h>
#include <newt.h>
#include <sys/ttydefaults.h>

#include "cache.h"
#include "hist.h"
#include "session.h"
#include "sort.h"
#include "symbol.h"

static void newt_form__set_exit_keys(newtComponent self)
{
newtFormAddHotKey(self, NEWT_KEY_ESCAPE);
newtFormAddHotKey(self, 'Q');
newtFormAddHotKey(self, 'q');
newtFormAddHotKey(self, CTRL('c'));
}

static newtComponent newt_form__new(void)
{
newtComponent self = newtForm(NULL, NULL, 0);
if (self)
newt_form__set_exit_keys(self);
return self;
}

static size_t hist_entry__append_browser(struct hist_entry *self,
newtComponent listbox, u64 total)
{
Expand Down Expand Up @@ -77,8 +94,7 @@ static void hist_entry__annotate_browser(struct hist_entry *self)
newtListboxSetWidth(listbox, max_line_len);

newtCenteredWindow(max_line_len + 2, ws.ws_row - 5, self->sym->name);
form = newtForm(NULL, NULL, 0);
newtFormAddHotKey(form, NEWT_KEY_ESCAPE);
form = newt_form__new();
newtFormAddComponents(form, listbox, NULL);

newtFormRun(form, &es);
Expand Down Expand Up @@ -108,8 +124,7 @@ void perf_session__browse_hists(struct rb_root *hists, u64 session_total,

get_term_dimensions(&ws);

form = newtForm(NULL, NULL, 0);
newtFormAddHotKey(form, NEWT_KEY_ESCAPE);
form = newt_form__new();

listbox = newtListbox(1, 1, ws.ws_row - 2, (NEWT_FLAG_SCROLL |
NEWT_FLAG_BORDER |
Expand Down

0 comments on commit 7081e08

Please sign in to comment.