diff options
Diffstat (limited to 'ui-terminal.c')
| -rw-r--r-- | ui-terminal.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/ui-terminal.c b/ui-terminal.c index f3b9f04..27afb26 100644 --- a/ui-terminal.c +++ b/ui-terminal.c @@ -48,6 +48,7 @@ typedef struct { CellStyle *styles; /* each window has UI_STYLE_MAX different style definitions */ size_t cells_size; /* #bytes allocated for 2D grid (grows only) */ Cell *cells; /* 2D grid of cells, at least as large as current terminal size */ + bool doupdate; /* Whether to update the screen after refreshing contents */ } UiTerm; struct UiTermWin { @@ -347,6 +348,11 @@ static void ui_arrange(Ui *ui, enum UiLayout layout) { } } +static void ui_doupdates(Ui *ui, bool doupdate) { + UiTerm *tui = (UiTerm*)ui; + tui->doupdate = doupdate; +} + static void ui_draw(Ui *ui) { debug("ui-draw\n"); UiTerm *tui = (UiTerm*)ui; @@ -684,6 +690,7 @@ Ui *ui_term_new(void) { } tui->styles_size = styles_size; tui->styles = styles; + tui->doupdate = true; Ui *ui = (Ui*)tui; *ui = (Ui) { .init = ui_init, @@ -699,6 +706,7 @@ Ui *ui_term_new(void) { .draw = ui_draw, .redraw = ui_redraw, .arrange = ui_arrange, + .doupdates = ui_doupdates, .die = ui_die, .info = ui_info, .info_hide = ui_info_hide, |
