diff options
Diffstat (limited to 'src/tty_interface.c')
-rw-r--r-- | src/tty_interface.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/tty_interface.c b/src/tty_interface.c index 918c0c6..343dde8 100644 --- a/src/tty_interface.c +++ b/src/tty_interface.c @@ -109,8 +109,13 @@ static void draw(tty_interface_t *state) { } } - tty_moveup(tty, num_lines + (options->show_info ? 1 : 0)); - tty_setcol(tty, strlen(options->prompt) + state->cursor); + if (num_lines + options->show_info) + tty_moveup(tty, num_lines + options->show_info); + + tty_setcol(tty, 0); + fputs(options->prompt, tty->fout); + for (size_t i = 0; i < state->cursor; i++) + fputc(state->search[i], tty->fout); tty_flush(tty); } |