diff --git a/src/ui/core.c b/src/ui/core.c index 24e8b822..6a49bfb4 100644 --- a/src/ui/core.c +++ b/src/ui/core.c @@ -744,18 +744,8 @@ void ui_current_page_off(void) { ProfWin *current = wins_get_current(); - current->paged = 0; - - int rows = getmaxy(stdscr); - int y = getcury(current->win); - int size = rows - 3; - - current->y_pos = y - (size - 1); - if (current->y_pos < 0) { - current->y_pos = 0; - } - - wins_refresh_current(); + win_page_off(current); + win_refresh(current); } void diff --git a/src/ui/window.c b/src/ui/window.c index caad2531..135eac17 100644 --- a/src/ui/window.c +++ b/src/ui/window.c @@ -132,6 +132,21 @@ win_refresh(ProfWin *window) prefresh(window->win, window->y_pos, 0, 1, 0, rows-3, cols-1); } +void +win_page_off(ProfWin *window) +{ + window->paged = 0; + + int rows = getmaxy(stdscr); + int y = getcury(window->win); + int size = rows - 3; + + window->y_pos = y - (size - 1); + if (window->y_pos < 0) { + window->y_pos = 0; + } +} + void win_presence_colour_on(ProfWin *window, const char * const presence) { diff --git a/src/ui/window.h b/src/ui/window.h index 00e905e1..dea6214d 100644 --- a/src/ui/window.h +++ b/src/ui/window.h @@ -63,6 +63,7 @@ void win_free(ProfWin *window); void win_print_line(ProfWin *self, const char show_char, int attrs, const char * const msg, ...); void win_refresh(ProfWin *window); +void win_page_off(ProfWin *window); void win_print_time(ProfWin *window, char show_char); void win_presence_colour_on(ProfWin *window, const char * const presence); void win_presence_colour_off(ProfWin *window, const char * const presence);