summaryrefslogtreecommitdiffstats
path: root/tools/perf/ui/tui/progress.c
diff options
context:
space:
mode:
authorJiri Olsa2017-09-08 14:05:09 +0200
committerArnaldo Carvalho de Melo2017-09-13 14:49:15 +0200
commit25cc4eb44b0c840eff0e5a46a85b9ccbde77401b (patch)
tree060c4b3ee2a7fddc4a4763842ba3b4044d61fbe6 /tools/perf/ui/tui/progress.c
parentperf tools: Add python-clean target (diff)
downloadkernel-qcow2-linux-25cc4eb44b0c840eff0e5a46a85b9ccbde77401b.tar.gz
kernel-qcow2-linux-25cc4eb44b0c840eff0e5a46a85b9ccbde77401b.tar.xz
kernel-qcow2-linux-25cc4eb44b0c840eff0e5a46a85b9ccbde77401b.zip
perf ui progress: Add ui specific init function
Adding ui specific init function allowing to setup the progress bar width based on current screen scales. Adding TUI init function to get more grained update of the progress bar. Signed-off-by: Jiri Olsa <jolsa@kernel.org> Cc: David Ahern <dsahern@gmail.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/r/20170908120510.22515-4-jolsa@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/ui/tui/progress.c')
-rw-r--r--tools/perf/ui/tui/progress.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/tools/perf/ui/tui/progress.c b/tools/perf/ui/tui/progress.c
index c4b99008e2c9..f6b8f52aad7e 100644
--- a/tools/perf/ui/tui/progress.c
+++ b/tools/perf/ui/tui/progress.c
@@ -5,6 +5,11 @@
#include "tui.h"
#include "../browser.h"
+static void __tui_progress__init(struct ui_progress *p)
+{
+ p->next = p->step = p->total / (SLtt_Screen_Cols - 2) ?: 1;
+}
+
static void tui_progress__update(struct ui_progress *p)
{
int bar, y;
@@ -49,8 +54,8 @@ static void tui_progress__finish(void)
pthread_mutex_unlock(&ui__lock);
}
-static struct ui_progress_ops tui_progress__ops =
-{
+static struct ui_progress_ops tui_progress__ops = {
+ .init = __tui_progress__init,
.update = tui_progress__update,
.finish = tui_progress__finish,
};