aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/winfloat.c
diff options
context:
space:
mode:
authorFamiu Haque <famiuhaque@proton.me>2024-11-08 11:57:59 +0600
committerFamiu Haque <famiuhaque@proton.me>2024-12-26 20:55:13 +0600
commit6257270040bc5c61a489f7fb9d4102223c36cf89 (patch)
treea0db9a3bf31b56dedd9a240b54c5d47b02ce43ff /src/nvim/winfloat.c
parent98763ce4e93752f22d379e3f735f4c78ae49afad (diff)
downloadrneovim-6257270040bc5c61a489f7fb9d4102223c36cf89.tar.gz
rneovim-6257270040bc5c61a489f7fb9d4102223c36cf89.tar.bz2
rneovim-6257270040bc5c61a489f7fb9d4102223c36cf89.zip
refactor(options): set option value for non-current context directly
Problem: Currently, we use `switch_option_context` to temporarily switch the current option context before setting an option for a different buffer / window. This is not ideal because we already support getting and setting option values for non-current contexts in the underlying implementation. Solution: Set option value for non-current context by passing the context directly to the lower level functions. Also introduce a new `OptCtx` struct to store option context information, this will scale much better if we add more option scopes and other context information in the future.
Diffstat (limited to 'src/nvim/winfloat.c')
-rw-r--r--src/nvim/winfloat.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/nvim/winfloat.c b/src/nvim/winfloat.c
index 3e791e2beb..78f3551087 100644
--- a/src/nvim/winfloat.c
+++ b/src/nvim/winfloat.c
@@ -411,8 +411,8 @@ win_T *win_float_create(bool enter, bool new_buf)
return handle_error_and_cleanup(wp, &err);
}
buf->b_p_bl = false; // unlist
- set_option_direct_for(kOptBufhidden, STATIC_CSTR_AS_OPTVAL("wipe"), OPT_LOCAL, 0,
- kOptScopeBuf, buf);
+ set_option_direct_for(kOptBufhidden, STATIC_CSTR_AS_OPTVAL("wipe"),
+ option_ctx_from(kOptScopeBuf, buf), OPT_LOCAL, 0);
win_set_buf(wp, buf, &err);
if (ERROR_SET(&err)) {
return handle_error_and_cleanup(wp, &err);