diff options
Diffstat (limited to 'tools/perf/util/ui/helpline.c')
-rw-r--r-- | tools/perf/util/ui/helpline.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/tools/perf/util/ui/helpline.c b/tools/perf/util/ui/helpline.c index f36d2ff509ed..6ef3c5691762 100644 --- a/tools/perf/util/ui/helpline.c +++ b/tools/perf/util/ui/helpline.c | |||
@@ -1,20 +1,28 @@ | |||
1 | #define _GNU_SOURCE | 1 | #define _GNU_SOURCE |
2 | #include <stdio.h> | 2 | #include <stdio.h> |
3 | #include <stdlib.h> | 3 | #include <stdlib.h> |
4 | #include <newt.h> | 4 | #include <string.h> |
5 | 5 | ||
6 | #include "../debug.h" | 6 | #include "../debug.h" |
7 | #include "helpline.h" | 7 | #include "helpline.h" |
8 | #include "ui.h" | 8 | #include "ui.h" |
9 | #include "libslang.h" | ||
9 | 10 | ||
10 | void ui_helpline__pop(void) | 11 | void ui_helpline__pop(void) |
11 | { | 12 | { |
12 | newtPopHelpLine(); | ||
13 | } | 13 | } |
14 | 14 | ||
15 | char ui_helpline__current[512]; | ||
16 | |||
15 | void ui_helpline__push(const char *msg) | 17 | void ui_helpline__push(const char *msg) |
16 | { | 18 | { |
17 | newtPushHelpLine(msg); | 19 | const size_t sz = sizeof(ui_helpline__current); |
20 | |||
21 | SLsmg_gotorc(SLtt_Screen_Rows - 1, 0); | ||
22 | SLsmg_set_color(0); | ||
23 | SLsmg_write_nstring((char *)msg, SLtt_Screen_Cols); | ||
24 | SLsmg_refresh(); | ||
25 | strncpy(ui_helpline__current, msg, sz)[sz - 1] = '\0'; | ||
18 | } | 26 | } |
19 | 27 | ||
20 | void ui_helpline__vpush(const char *fmt, va_list ap) | 28 | void ui_helpline__vpush(const char *fmt, va_list ap) |
@@ -63,7 +71,7 @@ int ui_helpline__show_help(const char *format, va_list ap) | |||
63 | 71 | ||
64 | if (ui_helpline__last_msg[backlog - 1] == '\n') { | 72 | if (ui_helpline__last_msg[backlog - 1] == '\n') { |
65 | ui_helpline__puts(ui_helpline__last_msg); | 73 | ui_helpline__puts(ui_helpline__last_msg); |
66 | newtRefresh(); | 74 | SLsmg_refresh(); |
67 | backlog = 0; | 75 | backlog = 0; |
68 | } | 76 | } |
69 | pthread_mutex_unlock(&ui__lock); | 77 | pthread_mutex_unlock(&ui__lock); |