perf ui: Consider the refreshed dimensions in ui_browser__show
When we call ui_browser__show we may have called ui_browser__refresh_dimensions to check if the maximum lenght for the contained entries changed, such as when zooming in and out DSOs or threads in the hist browser. For that to happen we must delete the old form, that will take care of deleting the vertical scrollbar, etc, and then recreate them, with the new dimensions. Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Mike Galbraith <efault@gmx.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Stephane Eranian <eranian@google.com> LKML-Reference: <new-submission> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Родитель
06daaaba7c
Коммит
63160f73e7
|
@ -342,8 +342,10 @@ static void ui_browser__reset_index(struct ui_browser *self)
|
|||
|
||||
static int ui_browser__show(struct ui_browser *self, const char *title)
|
||||
{
|
||||
if (self->form != NULL)
|
||||
return 0;
|
||||
if (self->form != NULL) {
|
||||
newtFormDestroy(self->form);
|
||||
newtPopWindow();
|
||||
}
|
||||
ui_browser__refresh_dimensions(self);
|
||||
newtCenteredWindow(self->width + 2, self->height, title);
|
||||
self->form = newt_form__new();
|
||||
|
|
Загрузка…
Ссылка в новой задаче