From ebf0a11fa00465c142d0c98ea1f10c9cd39848ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Wed, 24 Jul 2019 20:09:49 +0200 Subject: [PATCH] render: add render_refresh() --- commands.c | 6 ++---- main.c | 9 +++------ render.c | 10 ++++++++-- render.h | 1 + selection.c | 6 ++---- 5 files changed, 16 insertions(+), 16 deletions(-) diff --git a/commands.c b/commands.c index 77fc27e9..6df5ab9b 100644 --- a/commands.c +++ b/commands.c @@ -62,8 +62,7 @@ cmd_scrollback_up(struct terminal *term, int rows) term->grid->view = new_view; term_damage_view(term); - if (term->frame_callback == NULL) - grid_render(term); + render_refresh(term); } void @@ -122,6 +121,5 @@ cmd_scrollback_down(struct terminal *term, int rows) term->grid->view = new_view; term_damage_view(term); - if (term->frame_callback == NULL) - grid_render(term); + render_refresh(term); } diff --git a/main.c b/main.c index d785024c..972f653a 100644 --- a/main.c +++ b/main.c @@ -716,8 +716,7 @@ main(int argc, char *const *argv) if (ret == 0 || (timeout_ms != -1 && !(fds[1].revents & POLLIN))) { /* Delayed rendering */ - if (term.frame_callback == NULL) - grid_render(&term); + render_refresh(&term); } /* Reset poll timeout to infinity */ @@ -809,8 +808,7 @@ main(int argc, char *const *argv) term.flash.active = false; term_damage_view(&term); - if (term.frame_callback == NULL) - grid_render(&term); + render_refresh(&term); } if (fds[4].revents & POLLIN) { @@ -838,8 +836,7 @@ main(int argc, char *const *argv) } } - if (term.frame_callback == NULL) - grid_render(&term); + render_refresh(&term); } } diff --git a/render.c b/render.c index 82f28521..33076fc3 100644 --- a/render.c +++ b/render.c @@ -715,8 +715,7 @@ render_resize(struct terminal *term, int width, int height) term_damage_all(term); term_damage_view(term); - if (term->frame_callback == NULL) - grid_render(term); + render_refresh(term); } void @@ -751,3 +750,10 @@ render_update_cursor_surface(struct terminal *term) wl_surface_commit(term->wl.pointer.surface); } + +void +render_refresh(struct terminal *term) +{ + if (term->frame_callback == NULL) + grid_render(term); +} diff --git a/render.h b/render.h index c34257ec..fd923e7d 100644 --- a/render.h +++ b/render.h @@ -9,3 +9,4 @@ void grid_render(struct terminal *term); void render_resize(struct terminal *term, int width, int height); void render_set_title(struct terminal *term, const char *title); void render_update_cursor_surface(struct terminal *term); +void render_refresh(struct terminal *term); diff --git a/selection.c b/selection.c index 6f7c015e..468d400a 100644 --- a/selection.c +++ b/selection.c @@ -131,8 +131,7 @@ selection_update(struct terminal *term, int col, int row) assert(term->selection.start.row != -1 && term->selection.end.row != -1); term_damage_rows_in_view(term, from - term->grid->view, to - term->grid->view); - if (term->frame_callback == NULL) - grid_render(term); + render_refresh(term); } static const struct zwp_primary_selection_source_v1_listener primary_selection_source_listener; @@ -210,8 +209,7 @@ selection_cancel(struct terminal *term) min(start_row, end_row) - term->grid->view, max(start_row, end_row) - term->grid->view); - if (term->frame_callback == NULL) - grid_render(term); + render_refresh(term); } }