Commit: patch 9.1.0488: Wrong padding for pum "kind" with 'rightleft'

1 view
Skip to first unread message

Christian Brabandt

unread,
Jun 15, 2024, 9:15:12 AM (12 days ago) Jun 15
to vim...@googlegroups.com
patch 9.1.0488: Wrong padding for pum "kind" with 'rightleft'

Commit: https://github.com/vim/vim/commit/a2324373eb1c3f1777bc40cb6dcd5e895a15fe10
Author: zeertzjq <zeer...@outlook.com>
Date: Sat Jun 15 15:08:27 2024 +0200

patch 9.1.0488: Wrong padding for pum "kind" with 'rightleft'

Problem: Wrong padding for pum "kind" with 'rightleft'.
Solution: Fix off-by-one error (zeertzjq).

The screen_fill() above is end-exclusive, and
- With 'rightleft' it fills `pum_col - pum_base_width - n + 1` to `col`,
so the next `col` should be `pum_col - pum_base_width - n`.
- With 'norightleft' it fills `col` to `pum_col - pum_base_width + n - 1`,
so the next `col` should be `pum_col - pum_base_width + n`.

closes: #15004

Signed-off-by: zeertzjq <zeer...@outlook.com>
Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/src/popupmenu.c b/src/popupmenu.c
index 7fb29d635..25157e4eb 100644
--- a/src/popupmenu.c
+++ b/src/popupmenu.c
@@ -728,7 +728,7 @@ pum_redraw(void)
{
screen_fill(row, row + 1, pum_col - pum_base_width - n + 1,
col + 1, ' ', ' ', attr);
- col = pum_col - pum_base_width - n + 1;
+ col = pum_col - pum_base_width - n;
}
else
#endif
diff --git a/src/testdir/dumps/Test_pum_highlights_06.dump b/src/testdir/dumps/Test_pum_highlights_06.dump
index 6675a3135..8aeb5ae31 100644
--- a/src/testdir/dumps/Test_pum_highlights_06.dump
+++ b/src/testdir/dumps/Test_pum_highlights_06.dump
@@ -1,8 +1,8 @@
| +0&#ffffff0@70|o>f|o|f
-| +0#4040ff13&@58| +0#0000001#e0e0e08@1|d|n|i|k|o@1|f| @3|o|o+0#00e0e07#ffd7ff255|f
-| +0#4040ff13#ffffff0@58| +0#0000001#ffd7ff255@1|d|n|i|k|o@1|f| |r|a|b|o|o+0#0000e05&|f
-| +0#4040ff13#ffffff0@58| +0#0000001#ffd7ff255@1|d|n|i|k|o@1|f| |z|a|B|o|o+0#0000e05&|f
-| +0#4040ff13#ffffff0@58| +0#0000001#ffd7ff255@1|d|n|i|k|o@1|f|a|l|a|b|o|o+0#0000e05&|f
+| +0#4040ff13&@58| +0#0000001#e0e0e08|d|n|i|k|o@1|f| @4|o|o+0#00e0e07#ffd7ff255|f
+| +0#4040ff13#ffffff0@58| +0#0000001#ffd7ff255|d|n|i|k|o@1|f| @1|r|a|b|o|o+0#0000e05&|f
+| +0#4040ff13#ffffff0@58| +0#0000001#ffd7ff255|d|n|i|k|o@1|f| @1|z|a|B|o|o+0#0000e05&|f
+| +0#4040ff13#ffffff0@58| +0#0000001#ffd7ff255|d|n|i|k|o@1|f| |a|l|a|b|o|o+0#0000e05&|f
| +0#4040ff13#ffffff0@73|~
| @73|~
| @73|~
diff --git a/src/version.c b/src/version.c
index 1a2f5d75c..61532287d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -704,6 +704,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 488,
/**/
487,
/**/
Reply all
Reply to author
Forward
0 new messages