aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/cursor.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-11-23 12:14:16 +0800
committerGitHub <noreply@github.com>2022-11-23 12:14:16 +0800
commitf1b88ced07a5dcc62cd847cade2ed97e23fffbf9 (patch)
treea0f39df580c605910ef542d5e7cd3ce651f2742e /src/nvim/cursor.c
parent4571ba4d0a5234408e544c3a98f107688a792f0d (diff)
downloadrneovim-f1b88ced07a5dcc62cd847cade2ed97e23fffbf9.tar.gz
rneovim-f1b88ced07a5dcc62cd847cade2ed97e23fffbf9.tar.bz2
rneovim-f1b88ced07a5dcc62cd847cade2ed97e23fffbf9.zip
fix(options): fix local 'sidescrolloff' doesn't work for mouse (#21162)
Missing part of Vim patch 8.1.0864.
Diffstat (limited to 'src/nvim/cursor.c')
-rw-r--r--src/nvim/cursor.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/nvim/cursor.c b/src/nvim/cursor.c
index 84a2cf83ac..0d56319891 100644
--- a/src/nvim/cursor.c
+++ b/src/nvim/cursor.c
@@ -456,12 +456,13 @@ bool leftcol_changed(void)
// If the cursor is right or left of the screen, move it to last or first
// character.
- if (curwin->w_virtcol > (colnr_T)(lastcol - p_siso)) {
+ long siso = get_sidescrolloff_value(curwin);
+ if (curwin->w_virtcol > (colnr_T)(lastcol - siso)) {
retval = true;
- coladvance((colnr_T)(lastcol - p_siso));
- } else if (curwin->w_virtcol < curwin->w_leftcol + p_siso) {
+ coladvance((colnr_T)(lastcol - siso));
+ } else if (curwin->w_virtcol < curwin->w_leftcol + siso) {
retval = true;
- coladvance((colnr_T)(curwin->w_leftcol + p_siso));
+ coladvance((colnr_T)(curwin->w_leftcol + siso));
}
// If the start of the character under the cursor is not on the screen,