aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/message.c
diff options
context:
space:
mode:
authorbfredl <bjorn.linse@gmail.com>2022-09-16 19:21:32 +0200
committerbfredl <bjorn.linse@gmail.com>2022-09-22 10:36:23 +0200
commit00cfc1dcebd1c81dd0d8c111740782e86cf2e385 (patch)
tree4234a5fc1a044e7f9dd821e1db4f5e6ef62d86e4 /src/nvim/message.c
parent8d13b08a03c31cdb269b7d09c166e0b447f2a303 (diff)
downloadrneovim-00cfc1dcebd1c81dd0d8c111740782e86cf2e385.tar.gz
rneovim-00cfc1dcebd1c81dd0d8c111740782e86cf2e385.tar.bz2
rneovim-00cfc1dcebd1c81dd0d8c111740782e86cf2e385.zip
fix(redraw): avoid unnecessary redraws and glitches with floats+messages
fixes #20106 fixes #20229
Diffstat (limited to 'src/nvim/message.c')
-rw-r--r--src/nvim/message.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/nvim/message.c b/src/nvim/message.c
index c93e825a5d..0b9cbfe474 100644
--- a/src/nvim/message.c
+++ b/src/nvim/message.c
@@ -2053,7 +2053,7 @@ void msg_puts_attr_len(const char *const str, const ptrdiff_t len, int attr)
overflow = true;
}
} else {
- overflow = msg_scrolled != 0;
+ overflow = msg_scrolled > (p_ch == 0 ? 1 : 0);
}
if (overflow && !msg_scrolled_ign && strcmp(str, "\r") != 0) {
@@ -2334,7 +2334,7 @@ bool message_filtered(char *msg)
/// including horizontal separator
int msg_scrollsize(void)
{
- return msg_scrolled + (int)p_ch + 1;
+ return msg_scrolled + (int)p_ch + ((p_ch > 0 || msg_scrolled > 1) ? 1 : 0);
}
bool msg_use_msgsep(void)