aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/window.c
diff options
context:
space:
mode:
authorWill Eccles <will@eccles.dev>2020-03-17 15:05:34 -0400
committerGitHub <noreply@github.com>2020-03-17 20:05:34 +0100
commit87d892afa0475644e91d9c8a57b7c35491c4dc32 (patch)
treea3d0f66e64156fbbb47864a6ed36129bd7c41318 /src/nvim/window.c
parent5a5c2f0290b5cdb8ccc1a06cb41f248ab25fd792 (diff)
downloadrneovim-87d892afa0475644e91d9c8a57b7c35491c4dc32.tar.gz
rneovim-87d892afa0475644e91d9c8a57b7c35491c4dc32.tar.bz2
rneovim-87d892afa0475644e91d9c8a57b7c35491c4dc32.zip
vim-patch:8.1.0864 Make 'scrolloff' and 'sidescrolloff' options window local (#11854)
Problem: cannot have a local value for 'scrolloff' and 'sidescrolloff' Author: Bram Moolenar https://github.com/vim/vim/commit/375e3390078e740d3c83b0c118c50d9a920036c7
Diffstat (limited to 'src/nvim/window.c')
-rw-r--r--src/nvim/window.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/nvim/window.c b/src/nvim/window.c
index f61a46996d..fb3f1e0c9f 100644
--- a/src/nvim/window.c
+++ b/src/nvim/window.c
@@ -4689,6 +4689,10 @@ static win_T *win_alloc(win_T *after, int hidden)
new_wp->w_floating = 0;
new_wp->w_float_config = FLOAT_CONFIG_INIT;
+ // use global option for global-local options
+ new_wp->w_p_so = -1;
+ new_wp->w_p_siso = -1;
+
/* We won't calculate w_fraction until resizing the window */
new_wp->w_fraction = 0;
new_wp->w_prev_fraction_row = -1;
@@ -5799,9 +5803,10 @@ void scroll_to_fraction(win_T *wp, int prev_height)
}
if (wp == curwin) {
- if (p_so)
+ if (get_scrolloff_value()) {
update_topline();
- curs_columns(FALSE); /* validate w_wrow */
+ }
+ curs_columns(false); // validate w_wrow
}
if (prev_height > 0) {
wp->w_prev_fraction_row = wp->w_wrow;