aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ui_compositor.c
diff options
context:
space:
mode:
authorbfredl <bjorn.linse@gmail.com>2022-09-13 12:56:30 +0200
committerbfredl <bjorn.linse@gmail.com>2022-09-15 12:13:43 +0200
commit708bd686516b420c2b65f4bc4d2c58fe43fb945e (patch)
treedceae7b5fc616d7cfec138e5291d664ec7ba451e /src/nvim/ui_compositor.c
parentbf6de51f55c1b812342c7d4e88c65a7cae7fe97f (diff)
downloadrneovim-708bd686516b420c2b65f4bc4d2c58fe43fb945e.tar.gz
rneovim-708bd686516b420c2b65f4bc4d2c58fe43fb945e.tar.bz2
rneovim-708bd686516b420c2b65f4bc4d2c58fe43fb945e.zip
feat(ui): use msg_grid based implementation for cmdheight=0
Diffstat (limited to 'src/nvim/ui_compositor.c')
-rw-r--r--src/nvim/ui_compositor.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/nvim/ui_compositor.c b/src/nvim/ui_compositor.c
index 2fb70eae8a..9f9a32036c 100644
--- a/src/nvim/ui_compositor.c
+++ b/src/nvim/ui_compositor.c
@@ -485,6 +485,10 @@ static void compose_debug(Integer startrow, Integer endrow, Integer startcol, In
endcol = MIN(endcol, default_grid.cols);
int attr = syn_id2attr(syn_id);
+ if (delay) {
+ debug_delay(endrow - startrow);
+ }
+
for (int row = (int)startrow; row < endrow; row++) {
ui_composed_call_raw_line(1, row, startcol, startcol, endcol, attr, false,
(const schar_T *)linebuf,
@@ -610,7 +614,7 @@ static void ui_comp_msg_set_pos(UI *ui, Integer grid, Integer row, Boolean scrol
if (row > msg_current_row && ui_comp_should_draw()) {
compose_area(MAX(msg_current_row - 1, 0), row, 0, default_grid.cols);
} else if (row < msg_current_row && ui_comp_should_draw()
- && msg_current_row < Rows) {
+ && (msg_current_row < Rows || (scrolled && !msg_was_scrolled))) {
int delta = msg_current_row - (int)row;
if (msg_grid.blending) {
int first_row = MAX((int)row - (scrolled?1:0), 0);